Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Contributing

Boatstack is a generated content distribution. Propose changes to workflow semantics, templates, evidence rules, or generated presentation in [Intelligence Flow](https://github.com/operatorstack/intelligence-flow/tree/f761e7e73e982b0bf5562197519d0b5bc7b937f0/examples/12-product-engineering-loop).
Boatstack is a generated content distribution. Propose changes to workflow semantics, templates, evidence rules, or generated presentation in [Intelligence Flow](https://github.com/operatorstack/intelligence-flow/tree/bab232ddd34b39e9e480131a3c967c723f831232/examples/12-product-engineering-loop).

The Boatstack repository receives product/runtime changes through a generated pull request. Review the PR's `UPSTREAM.json`, tests, adapter diff, and context-size change; do not hand-edit generated output on `main`. `.github/workflows` is the exception: it is Boatstack's executable control plane, excluded from scheduled projection and changed only through a separate manually reviewed Boatstack PR.

Expand All @@ -12,4 +12,6 @@ Repository-specific examples and outcome reports can be proposed upstream as new

Any user-facing upgrade must state the user problem, supporting observation or requirement, current evidence status, and the README or guide it changes. If no public document changes, explain why the behavior is internal. Material public claims must appear in `docs/public-claims.json` and link to a readable explanation.

Every Intelligence Flow change that touches the Boatstack example must add one release-level Markdown fragment under `examples/12-product-engineering-loop/boatstack-distribution/release-notes/`. Name it `YYYY-MM-DD-<slug>.md`, begin with a level-three heading, and describe user impact rather than commits, diffs, or test commands. Fragments are append-only after merge; publish a new correction fragment instead of rewriting history.

Use Huashu Design for README and beginner-guide review when it is installed. The portable requirements remain in [the public-surface contract](docs/public-surface.md): plain outcomes first, one dominant product journey, progressive disclosure, accessible assets, no invented proof, and explicit separation between verified behavior and outcomes still being evaluated.
15 changes: 8 additions & 7 deletions UPSTREAM.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
},
"files": {
".gitignore": "a7079e923a776f14f1bb3a6aa0a11a133a8e1dfb35af020f327623357b7e3957",
"CONTRIBUTING.md": "845be08f967dc10b776ffd24ab05cabbd8c4945dc331f9fca5c8047b94ce08ce",
"CONTRIBUTING.md": "3c4bc4eb4d2e76c4dda310927f33892d7ebe5c2a9ad1b24928b1459ed6495229",
"README.md": "fe52800af55f9867f3a7dfeafd17e2ebc3cca6c19a8f787c7eaf6d27f25028fc",
"assets/boatstack-journey.svg": "c1f7fe2741f5e9ca66bb3fe9b103e6364ba5acbca8b7a8054768ffd85cf325ea",
"assets/boatstack-mark.svg": "c46e935f06fcfde3b37abfd579c1963b765b2337a0fa993f9538c9b652297e39",
Expand Down Expand Up @@ -64,10 +64,10 @@
"docs/account-recovery-walkthrough.md": "acd3558a95f48004f18a0590670de496e1cc9f0cd1d187f924615497f57e1d6f",
"docs/benchmark-corpus-audit.md": "f2d206fe8579a514f9da82b2c96c19b343ac004be67617e1bd34f0f8e0e5e6c6",
"docs/benchmark-submission-audit.md": "9518abdd17690729c6423f87cab20418ed47b0915b5faa44b9ef975e9e9c3b79",
"docs/evidence-engineered-coding.md": "4642e600fc527d1583dc13b21f8b132d6222b6fc0bc0f1c2cab8f283f3aab766",
"docs/generated-files.md": "33ea0799eb01af6e035fb1322c6a58c39ecc5dcc95169ce0adbd7933a0bfbee1",
"docs/evidence-engineered-coding.md": "ad02a921529735ab6733600ac4e002a9cb4645bbc9af3f3ed61ad5b47e64d4db",
"docs/generated-files.md": "7b2e8c10a35aa351fb87753492ed3cadb05011002d2fd6ffeb1951c356f6b286",
"docs/getting-started.md": "9741947c4b072c0838d0ee3a578215d5fac1d72cf5e73075136d0a9c95db2bbb",
"docs/public-claims.json": "b67aad3c4aa25bc31caad7d7a910e0632a79d1968dbb07841850f6e92c51610c",
"docs/public-claims.json": "d72b759c44c016cf3601ccea67b993dd81fc906224f49c8e0f55d31d847a6f94",
"docs/public-surface.md": "422696611bdd52fbac2baf6723a277fa8c451601a9f66774bde1529efdc2abab",
"docs/research-and-design.md": "d65c66e323037bda5d45aacef5d48afa6bf93da55901378891d235aca3a5684f",
"docs/safety.md": "7b9b5c515d36e683767ec8d3d9d6d119ac93650b2f629d351deadd4c600ed6a6",
Expand All @@ -79,20 +79,21 @@
"examples/diagram-json/compiled/evidence.md": "1ba1c989ade070a8ef9a508fbd788d100d7292f2dbacbb2bce895468019f619d",
"examples/diagram-json/compiled/tasks.json": "f040696f1f8bcedc4a8ed9816a61a49edbda970ec0cc3b28175ba37b73bbc896",
"examples/diagram-json/compiled/test-matrix.json": "6c6895c509271e4337f3c91d9f62ee3a2b34e768e78513784cb012506a328ecf",
"examples/diagram-json/plan.lock.json": "9dc2698c705f33f4806a0e2b8dca748d0b2eed18b062b10243bff087ae97672a",
"examples/diagram-json/plan.lock.json": "a1907589972d8f22bd9bef3adfc9bab2ef81b9827553d6c2f02bb15948311c27",
"examples/diagram-json/plan.md": "3ad35cc3cbe48306e7ee401bd9e9047d25e46c8a6fe9679aa1b3f5e96ceea292",
"examples/diagram-json/questions.md": "1a0050041cac0a8d53e6ebfe04cbec4a298cdc8c50efeeb6fa15aeb663c5ec76",
"examples/diagram-json/request.md": "0808fc41c36779c404f4a3a121167da6e76cac56df526e70f9ed6d3e0d4c02ed",
"examples/diagram-json/source-plan.md": "e10593ddaa7522ab80cc991d0a09399257139799e37f737794cd49d68a39985b",
"examples/diagram-json/spec.md": "a943c81cf2a88d23d5b300e6b9dc1dafc80923a9b6b9ab5297a67b4e2054b9d5",
"install.ps1": "960b2b20b406bb2878a560e9ace53fe7226bc510be6ee8466ce4e608beb5625a",
"install.sh": "939e604aa153b454e7fa1cbbe50a88be17782ea9df35d1bbb5615c737ed6f86e",
"project.example.json": "d1f7aa3cff0b55ede79500bd2ca710bb99cb2ae579f0a058dc00934accf03d33"
"project.example.json": "d1f7aa3cff0b55ede79500bd2ca710bb99cb2ae579f0a058dc00934accf03d33",
"release-notes/2026-07-17-visible-release-messages.md": "c93e8c812528a983502263e35d66c86a265d6ccba8203f393788c069b3fa6606"
},
"generator": "operatorstack/intelligence-flow:boatstack-distribution",
"schema_version": 1,
"source": {
"commit": "f761e7e73e982b0bf5562197519d0b5bc7b937f0",
"commit": "bab232ddd34b39e9e480131a3c967c723f831232",
"path": "examples/12-product-engineering-loop",
"repository": "operatorstack/intelligence-flow"
}
Expand Down
2 changes: 1 addition & 1 deletion docs/evidence-engineered-coding.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,6 @@ Delivery and system improvement also remain separate. A failed task may suggest

## What is evidence-backed

The current moves were derived from the Intelligence Flow benchmark corpus and product-repository studies. The generated source commit is [`f761e7e73e982b0bf5562197519d0b5bc7b937f0`](https://github.com/operatorstack/intelligence-flow/tree/f761e7e73e982b0bf5562197519d0b5bc7b937f0/examples/12-product-engineering-loop).
The current moves were derived from the Intelligence Flow benchmark corpus and product-repository studies. The generated source commit is [`bab232ddd34b39e9e480131a3c967c723f831232`](https://github.com/operatorstack/intelligence-flow/tree/bab232ddd34b39e9e480131a3c967c723f831232/examples/12-product-engineering-loop).

The evidence supports specific failure mechanisms and guardrails. It does not establish that Boatstack is optimal, that control-theory notation proves software quality, or that one workflow dominates every team. Those are evaluation questions, so the distribution preserves measurements, provenance, gaps, and negative results.
1 change: 1 addition & 0 deletions docs/generated-files.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Boatstack creates installation state once and feature evidence repeatedly. Keepi
| `.github/PULL_REQUEST_TEMPLATE/boatstack.md` | Fallback PR structure | Commit |
| `.cursor/hooks.json`, `.claude/settings.json`, `.codex/hooks.json` | Boatstack fragments merged with existing host settings | Review and commit |
| `.product-loop/bin/` | Verified worktree-local helper and install lock | Never commit; it is ignored and hydrates automatically |
| `release-notes/*.md` | Canonical user-facing messages reused by sync PRs and tagged releases | Generated; edit in Intelligence Flow |

The installer prints the exact staging command and runs `doctor`. Put this state in `chore/install-boatstack`, review it once, and merge it before feature work.

Expand Down
22 changes: 11 additions & 11 deletions docs/public-claims.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"source_commit": "f761e7e73e982b0bf5562197519d0b5bc7b937f0",
"source_commit": "bab232ddd34b39e9e480131a3c967c723f831232",
"statuses": ["verified", "observed", "still_being_evaluated"],
"claims": [
{
Expand All @@ -12,7 +12,7 @@
"readable_evidence": "why-these-steps.md#portable-workflow-and-state",
"implementation": ["../boatstack/export.go", "../boatstack/references/artifacts.md", "../boatstack/references/workflow.md"],
"verification": ["../boatstack/export_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "human-decisions",
Expand All @@ -23,7 +23,7 @@
"readable_evidence": "why-these-steps.md#human-decisions",
"implementation": ["../boatstack/references/workflow.md", "../boatstack/plan.go"],
"verification": ["../boatstack/plan_test.go", "../boatstack/planning_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "validation-provenance",
Expand All @@ -34,7 +34,7 @@
"readable_evidence": "why-these-steps.md#validation-provenance",
"implementation": ["validation-and-evidence.md", "../boatstack/plan.go"],
"verification": ["../boatstack/plan_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "irreversible-operations",
Expand All @@ -46,7 +46,7 @@
"readable_evidence": "why-these-steps.md#irreversible-operations",
"implementation": ["safety.md", "../boatstack/safety.go", "../boatstack/hooks.go"],
"verification": ["../boatstack/safety_test.go", "../boatstack/hooks_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "reviewer-ready-pr",
Expand All @@ -57,7 +57,7 @@
"readable_evidence": "why-these-steps.md#reviewer-ready-pr",
"implementation": ["../boatstack/pr.go", "getting-started.md"],
"verification": ["../boatstack/pr_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "model-neutral-contract",
Expand All @@ -68,7 +68,7 @@
"readable_evidence": "why-these-steps.md#model-choice-and-budget",
"implementation": ["research-and-design.md", "../boatstack/references/workflow.md"],
"verification": ["../boatstack/export_test.go", "../boatstack/planning_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "cross-model-failures",
Expand All @@ -79,7 +79,7 @@
"readable_evidence": "why-these-steps.md#model-choice-and-budget",
"implementation": ["research-and-design.md"],
"verification": ["benchmark-corpus-audit.md", "benchmark-submission-audit.md"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "lower-cost-outcomes",
Expand All @@ -90,7 +90,7 @@
"readable_evidence": "why-these-steps.md#model-choice-and-budget",
"implementation": ["research-and-design.md"],
"verification": ["benchmark-corpus-audit.md", "benchmark-submission-audit.md"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "git-worktree-activation",
Expand All @@ -101,7 +101,7 @@
"readable_evidence": "why-these-steps.md#git-worktree-activation",
"implementation": ["../boatstack/runtime_cache.go", "../boatstack/hooks.go"],
"verification": ["../boatstack/runtime_cache_test.go", "../boatstack/hooks_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
},
{
"id": "visible-updates",
Expand All @@ -112,7 +112,7 @@
"readable_evidence": "why-these-steps.md#visible-updates",
"implementation": ["../boatstack/update.go", "../boatstack/init.go"],
"verification": ["../boatstack/update_test.go", "../boatstack/init_test.go", "../boatstack/export_test.go"],
"last_verified_version": "source:f761e7e73e982b0bf5562197519d0b5bc7b937f0"
"last_verified_version": "source:bab232ddd34b39e9e480131a3c967c723f831232"
}
]
}
2 changes: 1 addition & 1 deletion examples/diagram-json/plan.lock.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"plan_path": "examples/diagram-json/plan.md",
"plan_sha256": "3ad35cc3cbe48306e7ee401bd9e9047d25e46c8a6fe9679aa1b3f5e96ceea292",
"schema_version": 1,
"source_commit": "f761e7e73e982b0bf5562197519d0b5bc7b937f0",
"source_commit": "bab232ddd34b39e9e480131a3c967c723f831232",
"source_plan_path": "examples/diagram-json/source-plan.md",
"source_plan_sha256": "e10593ddaa7522ab80cc991d0a09399257139799e37f737794cd49d68a39985b",
"spec_path": "examples/diagram-json/spec.md",
Expand Down
3 changes: 3 additions & 0 deletions release-notes/2026-07-17-visible-release-messages.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
### Release messages stay visible from sync through release

Boatstack sync pull requests now lead with an intentional, user-facing release message. When several features are synced or released together, every reviewed message is preserved verbatim in the tagged release instead of being replaced by commit titles or diff summaries.
Loading