ceo-api/drizzle/meta/_journal.json
valentinbvro eb652446f6 feat: Sprint 1 -- Projection Kernel (read models pentru dashboard)
Repara criteriul de acceptare "dashboardurile citesc read models, nu
interogheaza haotic toate modulele".

- projection_processed_events (unique: name+version+event_id) = garantia de
  idempotency. Checkpointul e doar optimizare de scanare, nu corectitudine:
  rescanam cu un safety lag de 60s si sarim ce s-a aplicat deja, ca sa nu
  pierdem evenimente comise dupa unul cu created_at mai mare.
- ProjectionRegistry cu ProjectionDefinition (name, version, subscribedEvents,
  rebuildStrategy, apply, rebuildTenant).
- executive_dashboard foloseste rebuildStrategy 'canonical-tables':
  recalculeaza contorii din tabelele canonice, nu incrementeaza. Contorii
  incrementali pot deriva daca un eveniment se pierde sau se dubleaza;
  recalcularea e corecta prin constructie si idempotenta natural. Costul e o
  interogare per eveniment relevant -- ok la volumul actual.
- GET /v1/dashboard/executive citeste proiectia. Cand proiectia inca n-a rulat
  pentru workspace, intoarce status 'building' explicit, NU zerouri care ar
  parea date reale.
- POST /v1/dashboard/executive/rebuild -- owner/admin, auditat.
- Serviciile de taskuri/organizatii/segmente emit acum evenimente in outbox
  (in aceeasi tranzactie cu scrierea). Fara ele proiectia era cod mort.
- Campurile din spec care depind de module neconstruite (documents,
  transactions, approvals) raman 0 explicit, nu inventate.
2026-07-29 12:03:34 +02:00

48 lines
No EOL
936 B
JSON

{
"version": "7",
"dialect": "postgresql",
"entries": [
{
"idx": 0,
"version": "7",
"when": 1784655760242,
"tag": "0000_ancient_silver_surfer",
"breakpoints": true
},
{
"idx": 1,
"version": "7",
"when": 1785264962186,
"tag": "0001_lovely_brood",
"breakpoints": true
},
{
"idx": 2,
"version": "7",
"when": 1785268609839,
"tag": "0002_burly_nightcrawler",
"breakpoints": true
},
{
"idx": 3,
"version": "7",
"when": 1785270653404,
"tag": "0003_ai_gateway_requests",
"breakpoints": true
},
{
"idx": 4,
"version": "7",
"when": 1785318305227,
"tag": "0004_platform_kernel",
"breakpoints": true
},
{
"idx": 5,
"version": "7",
"when": 1785319371761,
"tag": "0005_projection_kernel",
"breakpoints": true
}
]
}