custom-stack-examples PR 4: public copy positions the stack story#206
Merged
Conversation
Final PR of the Custom Stack Examples v1 round. PR 1 #203 landed the manifest + static contract. PR 2 #204 wired the real skill behavior. PR 3 #205 added the 51-assertion runtime harness. With the harness green, the framework spec's "do not reposition the README hero before runtime E2E lands" rule unblocks. This PR updates the public copy to position the stack story without overclaim. README.md "Build on nanostack" splits into Single skill + Workflow stack subsections. The single-skill block stays as-is (proven by ci/e2e-custom-stack-flows.sh). The new workflow-stack block points at examples/custom-stack-template/compliance-release/ as the reference shape, names the three skills (license-audit + privacy-check + release-readiness composer), claims the compliance-release example proves save / resolve / journal / analytics / discard / conductor compose, and names the harness that proves it (ci/e2e-custom-stack-examples.sh, 15 cells, 51 assertions). README.es.md gets the same shape under "Construí tu propio workflow stack" so Spanish parity holds. Same tokens, same claims, no new claims English-only. EXTENDING.md "Quickest way to start" expands to a two-row table: single-skill via examples/custom-skill-template/audit-licenses, vs. workflow stack via examples/custom-stack-template/compliance-release. Each row has its own quickstart block. Both link to their proving harness. The compliance-release/README.md status banner switches from "PR 1, install commands run once PR 3 ships" to "end-to-end working, 49 contract + 51 runtime assertions". The custom-stack-template overview README replaces its PR-by-PR breakdown with a "what's covered" summary that names every harness behind the claim. Lint adds custom-stack-examples-public-copy: - README.md + README.es.md each mention compliance-release, phase_graph, workflow stack, ci/e2e-custom-stack-examples.sh, and the example path. - EXTENDING.md links both starting points (single-skill template and the stack template), the spec doc, and the runtime harness. - Public copy does NOT contain disallowed phrases: marketplace, plugin ecosystem, GDPR ready, SOC2 ready, compliance certified, "works in every agent identically". After this lands, Custom Stack Examples v1 is complete and the round closes.
Codex's PR 4 review caught two real items. P1 CI red: examples/custom-stack-template/README.md line 47 used an em dash before "all proven by ci/e2e-custom-stack-examples.sh". The "No em-dashes in public copy" lint scans top-level *.md plus every examples/**/README.md, and this line tripped it. Replaced with a period. P2 overclaim: three sites said the runtime harness runs "on every workflow run" or implied auto-on-PR coverage. The harness lives in .github/workflows/e2e.yml as a workflow_dispatch job, not part of the on-PR lint matrix, so the claim does not match the actual config. Softened to "in the opt-in E2E workflow": - README.md "Build on nanostack" workflow-stack subsection. - README.es.md "Construí tu propio workflow stack" subsection (same shape, same scope language). - examples/custom-stack-template/compliance-release/README.md status banner: now distinguishes the static contract (runs on every PR) from the runtime harness (runs in the opt-in E2E workflow). - examples/custom-stack-template/README.md "what's covered" list. The custom-stack-examples-public-copy lock added in PR 4 still passes (it requires the harness path token to appear, not a specific frequency claim). Em-dash sweep clean across every file in scope.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Final PR of the Custom Stack Examples v1 round. PR 1 #203 landed the manifest + 49-check static contract. PR 2 #204 wired the real skill behavior with 21 case-level smokes. PR 3 #205 added the 51-assertion runtime harness. With the harness green, the framework spec's "do not reposition the README hero before runtime E2E lands" rule unblocks. This PR updates the public copy to position the stack story without overclaim, and locks the wording so it cannot drift away from what the harness exercises.
Changes
README.md "Build on nanostack"
Splits into two subsections:
ci/e2e-custom-stack-flows.sh).examples/custom-stack-template/compliance-release/as the reference shape, names the three skills (license-audit+privacy-check+release-readinesscomposer), claims the example proves save / resolve / journal / analytics / discard / conductor compose, names the harness that proves it (ci/e2e-custom-stack-examples.sh, 15 cells, 51 assertions).The opening line shifts to "Use Nanostack as-is, or build your own workflow stack on top." matching the spec's allowed claim list. No SaaS / daemon / build-step disclaimer added at the close.
README.es.md
Same structural shape under "Construí tu propio workflow stack", with single-skill and workflow-stack subsections. Same tokens, same claims; Spanish parity holds.
EXTENDING.md
"Quickest way to start" expands to a two-row table — single-skill (via
examples/custom-skill-template/audit-licenses/) vs. workflow stack (viaexamples/custom-stack-template/compliance-release/). Each row has its own quickstart block and links to its proving harness.Stack READMEs
examples/custom-stack-template/compliance-release/README.mdstatus banner switches from "PR 1, install runs once PR 3 ships" to "end-to-end working, 49 contract + 51 runtime assertions".examples/custom-stack-template/README.mdreplaces its PR-by-PR breakdown with a "what's covered" summary that names every harness behind every claim.CI lock —
custom-stack-examples-public-copyREADME.md+README.es.mdeach contain the load-bearing tokens:compliance-release,phase_graph,workflow stack,ci/e2e-custom-stack-examples.sh,examples/custom-stack-template/compliance-release.EXTENDING.mdlinks both starting points (single-skill template and stack template), the spec doc, and the runtime harness.marketplace,plugin ecosystem,GDPR ready,SOC2 ready,compliance certified,works in every agent identically. Spec rule.Test plan
Round closure
After this lands, Custom Stack Examples v1 is complete:
.integrityenforcement)The framework round (PRs #196-#202) proved a single skill works. This round proves a stack composes. Together: Nanostack went from skill bundle → composable framework → working domain workflow on top.