FE-1480: Project and realize a CPS model as a Petrinaut SDCPN - #9313
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
PR SummaryLow Risk Overview ADR-0005 is added and wired through ADR-0003 / ADR-0004, the elicitation-kernel and IR/plugin specs, SPEC-LEDGER, CONTEXT.md glossary, and INDEX.md. STEERING and STRATEGY-LOG (S-004–S-006) pivot the active frontier to a design-convergence queue (FE-1407 → FE-1402/1403 → FE-1404 → FE-1406 → FE-1431) from existing baseline evidence, with reviewer-path work (FE-1420/1438/1439) before semantic FE-1480 implementation; FE-1438 remains the gate for an executable realization proof. Agent legibility and steering protocols gain review-before-commit rules for ordered proof frontiers. Reviewed by Cursor Bugbot for commit 2224d62. Bugbot is set up for automated code reviews on this repo. Configure here. |
b052dda to
d6ecb22
Compare
44a5e1d to
4fcb281
Compare
|
Status note (2026-08-25): the design-convergence queue and the three hard prerequisite joins described in the agent notes here (FE-1407 → FE-1404 → FE-1406 → FE-1431) were superseded by strategy entry S-007 and ADR-0006 in #9322, further up this stack. The blockers were removed in Linear; the record above is kept as authored. |
4fcb281 to
ec6cdec
Compare
d6ecb22 to
4d33efc
Compare
b93c663 to
ddecada
Compare
75ccc94 to
2224d62
Compare

🌟 What is the purpose of this PR?
A cyber-physical system (CPS) model can say what stochastic and dynamic Petrinaut net code must express, but it cannot choose a TypeScript implementation. This pull request records that split as an accepted decision: pure projection stops at a deterministic scaffold and typed code obligations; executable TypeScript is realized later through Petrinaut's client tools. It also records which design issues to settle next from existing baseline evidence, before runtime implementation resumes. Projection and realization code remain later work.
🔗 Related links
libs/@hashintel/brunch-agent/docs/adr/0005-model-assisted-sdcpn-realization.mdlibs/@hashintel/brunch-agent/docs/control/STEERING.md🚫 Blocked by
FE-1438 blocks a later production proof of executable realization, not this decision record.
🔍 What does this change?
ADR-0005 amends the three-register claim in ADR-0003 and extends ADR-0004's artifact contract without changing application/library topology. The plugin's pure
projectstep must emit a versioned stochastic dynamically colored Petri net (SDCPN) scaffold, a sidecar of field-addressed code obligations, and a typed loss report. Generated TypeScript is derived artifact state at the application meeting point; it is not a capture, a fourth register, or a plugin operation. Steering and the specification suite are reconciled to that boundary, and the selected next work is a design-convergence queue that can run from existing transcripts and literature.🏗️ Agent notes
Stacked as
ln/fe-1494-strategic-controls→ln/fe-1495-typescript-contracts→ this branch.Commits
db3bf21054Define SDCPN artifact realization boundaryd3feeaa596Reconcile the projection obligation ledgere070ee89f9Select the Brunch design convergence queue44a5e1df95Encode the design convergence prerequisitesADR-0005 outputs of
project(elicitedModel)Comments are readable context only. Realization must consume the sidecar. FE-1438 remains the hard blocker for the executable production proof because client tools must return field-addressed compiler diagnostics. Scaffold and obligation design do not require that round trip.
Selected design-convergence order
Recorded in
docs/control/STEERING.mdandSTRATEGY-LOG.md. Linear owns the three hard prerequisite joins: FE-1407 blocks FE-1404, FE-1404 blocks FE-1406, and FE-1406 blocks FE-1431. Remaining arrows are strategic order, not additional Linear blockers.Resolving the authority boundary does not select FE-1480 implementation as the next build. During design convergence, do not implement SDK, client tools, projection, provider routing, or deployment.
Spec and glossary
CONTEXT.mdadds artifact boundary, code obligation, and artifact realization. Specs underdocs/specs/andSPEC-LEDGER.mddistinguish deterministic scaffold/obligation output from pending projection and realization work.Pre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
Documentation and glossary only.
📜 Does this require a change to the docs?
The changes in this PR:
ADR-0005, steering, specs, ledger, index, and glossary. No Petrinaut user-guide pages.
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
This branch does not implement
project, obligation fulfillment, or Petrinaut compilation. FE-1438 still blocks an executable production proof of realization. Implementation priority versus the under-built elicitor remains a steering choice, not a consequence of landing this decision.🐾 Next steps
STEERING.md(FE-1407 → FE-1402 / FE-1403 → FE-1404 → FE-1406 → FE-1431).🛡 What tests cover this?
No new executable tests. Existing architecture documentation-index coverage should still pass after the
INDEX.mdand ADR additions. Review is the check for ADR-0005, steering, and spec consistency.❓ How to test this?
Read
libs/@hashintel/brunch-agent/docs/adr/0005-model-assisted-sdcpn-realization.mdand confirm it matches the FE-1480 issue's accepted boundary.Read
libs/@hashintel/brunch-agent/docs/control/STEERING.mdand confirm design convergence is the selected next work, with FE-1480 realization later.Run:
📹 Demo
Not applicable — decision and steering records only.