Cross-cutting Platform Engines
Status: mixed (see each) Β· Last validated: 2026-09-06
Engines that span modules rather than belonging to one: Credit Score, Endorsements, Negotiation, Comparison, Trust. Validated against their classes + schema.
Koovira Credit Score β π’ Production
classs/WalletCreditScoreModule.php (~1,190 lines). A behavioural score computed from platform activity + transaction feedback.
recordAction(userId, actionType, impactAmount, moduleKey, entityType, entityId, note)(:1124)
β log a scoring signal.
recordEcommerceFeedback(recipient, sender, orderId, targetKey, score5, comment)(:319) β rating
β score signal.
recomputeScore(userId)(:1141) β recompute;getHistory(userId, limit)(:1172).- Tables:
wallet_credit_scores(45, recounted 2026-09-06 β was 39),
wallet_credit_score_activity_log (34,244, recounted β was 34,118 β heavily used).
- Public explainer at
/creditscore/overview.php(+ sub-pages). No monetization.
Endorsement Ecosystem β π’ Production (real credit currency, no purchase path)
classs/EndorsementModule.php (~1,860 lines). Skill/entity endorsements with a contribution credit currency.
- Entity relations (
setEntityRelation:366,getEntityRelation:345), review disputes
(disputeReview :315) + proof (addReviewProof :329).
- Contribution accounting:
precheckAction(:445),recordDailyTarget(:589),
checkAndRecordContribution (:656).
- Tables:
endorse_skill_master(2,686),endorse_credit_accounts(4),endorse_credit_ledger(17)
β a real currency with no way to buy any (monetization gap).
- Pages
/endorse.php,/topendorsed.php.
Negotiation Engine β π‘ Complete but unused
classs/NegotiationModule.php (~525 lines), embedded on 6 surfaces (classifieds, CommerceX, real estate, hotel bulk, service, business view) via forms/doaction_negotiation.php.
- Tables:
negotiations(0),negotiation_status_logs(orphaned QA rows). - No nav entry, no success fee. Built, wired into product surfaces, effectively unused. Pages
/mynegotiations.php, /how_negotiation_works.php.
Comparison Engine β π‘ Backend Only (orphaned)
classs/KvCompareEngine.php (~1,950 lines) + 4 REST endpoints + a cron + an admin console.
- Tables:
kv_compare_sources(19: Amazon/Flipkart/Croma/99acres/Zomato/Urban Companyβ¦),
kv_compare_offers (0).
- Flag ON, but zero inbound links platform-wide β no listing page routes to
/compare.php. Real,
complete, unreachable. Price-alert cron cron/compare_price_alerts.php.
Koovira Trust Layer β π‘ Partial
classs/KooviraTrustScoreEngine.php, RatingsModule.php, ClaimKycModule.php. Trust score (ai_trust_scores 13), ratings (ratings), verification (priced-for, empty). Consumed by search ranking + trust badge. KYC detail: kyc-trust.md.
Business rules
BR-ENG-001β credit score is derived, never set directly; write signals viarecordAction.BR-ENG-002β endorsement contribution credits are earned (daily targets), not purchasable today.BR-ENG-003β negotiation/comparison are built but not monetized/surfaced; do not assume revenue.
Errors (prefix ENG-E)
ENG-E001compare page shows nothing / unreachable βkv_compare_offers=0 + no inbound links.ENG-E002negotiation unused β no nav entry;negotiations=0.
Change-impact
Credit score + trust feed ranking and gating platform-wide β changing signals affects discovery and risk. Surfacing Comparison/Negotiation or pricing Endorsement credits are additive revenue moves.