feat: add project lifecycle history timeline (v2.18.4) - #285
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
4a5e18c to
eb06d6d
Compare
|
@opencode-agent Work on this PR's existing branch |
e3677d2 to
f8f05cb
Compare
Buyer result
Closes #278.
Adds a Buyer-facing Project history destination so an authorized user can select one exact project identity and read its complete visible chronology in one screen: award/order → specification change → delivery → VOC → rebid, with the actual event sequence determined only by persisted records.
The selected event exposes its source post, project evidence, related predecessor/successor history, observed source-author evidence, persisted responsibility evidence, and responsibility-evidence changes or gaps. Opening the source post retains the Project History origin while walking linked Event Lineage nodes.
Truth and authorization boundaries
source_project_code, source name only when code is absent, or persistedpost_project_mention.project_key; fuzzy search never binds project identity.observedevidence.inferredevidence.post_lineage_edgeis exposed as related history, not causation.post_readRBAC and public/same-corporate-entity ABAC boundary applies to the project index, timeline, edges, and event details.source_post_created_at_fallbacktime-semantics code.API and Buyer surface
The bounded implementation payload adds:
GET /api/projectsGET /api/project-history?project_key=...&knowledge_cutoff=...Project historyExact stack identity
feat/event-lineage-node-keeps-gnb-focus-v2170bbb88cfe68f736fa0edab38369e666d627cb64e8f8f05cbcbcfd9d0b5eec0567fc8023a42c1e58a8Test-first execution
A bounded one-shot workflow currently carries only the reviewed implementation payload. It must:
The first run failed before RED because independently encoded payload fragments were concatenated before decoding. The runner now decodes each fragment independently, concatenates the decoded gzip bytes, verifies the reconstructed helper SHA-256, and verifies the exact remote parent both before execution and immediately before publication.
Run
32330494007is the current exact-head RED→GREEN run. No passing result is claimed while it is queued, running, failed, or superseded.Draft and merge gates
Out of scope