Skip to content

median: one authored home — model truth stamped at init, prunable by contract#213

Merged
nahiyankhan merged 3 commits into
review-locator-matchingfrom
median-one-home
Jul 9, 2026
Merged

median: one authored home — model truth stamped at init, prunable by contract#213
nahiyankhan merged 3 commits into
review-locator-matchingfrom
median-one-home

Conversation

@nahiyankhan

Copy link
Copy Markdown
Collaborator

Category: improvement
User Impact: The median floor becomes a real, prunable contract with one authored home. Every ghost init template (skeleton, minimal, composition) now stamps anti-goal.median; each rule is a markdown heading a fork author can see and delete; ghost validate warns per-orphan when a pruned rule leaves a dangling check flag — the promise three shipped files previously made falsely is now mechanically true.
Problem: Two audits (Slop Slayer + Slopaganda Panda) found the median seam's defects all shared one root cause: model truth (Ghost's measured knowledge of unsteered model behavior) was filed inside brand packages — three hand-mirrored copies (vessel-light corpus, skeleton payload, a ~100-line TS string in check-scaffold.ts), already drifting after one week, with a prune-safety promise validate couldn't keep and orphaned rule↔flag pairings in both directions. Plus terminology sprawl: "body" collided (package vs node prose) and four names competed for the adaptation procedure.
Solution: The ownership model — the median is model truth, owned by Ghost, stamped at init, owned by the user thereafter. One authored home at src/init-payloads/median/ (node + paired check as real markdown); the TS string deleted; all templates stamp the floor; checks init copies the payload check and skips it (with a notice) when the node is absent. The 15 rules become ### headings cited by frontmatter references: (anti-goal.median > Hover-lift), riding the existing heading-anchor grammar — zero new parsing code, per-rule warnings on prune, per-rule baseline prose in review packets for free. vessel-light is fork-by-design: its copies keep their Vessel deltas but adopt the contract shape, with a provenance line. Audit fixes F2/F4–F7 back-ported; "node body" disambiguated; "adapt" wins the terminology.

Stacked on #212 (base: review-locator-matching). Full merge order: #207#208#209#210#211#212 ← this.

Validation:

  • pnpm check + pnpm test (148 passed, 1 skipped) via pre-commit on all three commits
  • Live prune loop verified: fresh init + checks init → validate 0/0; delete the ### Side-stripe section → exactly one check-reference-heading-missing warning naming anti-goal.median > Side-stripe with the teaching clause
  • Fresh skeleton init's median is byte-identical to the payload source (diff exit 0)
  • ghost init --template minimal / composition include the median and validate 0/0
  • ghost init --body vessel-light → validate 0/0 (anchored refs resolve against the re-derived headings); rg "rule:median" across vessel-light → zero
  • New tests: minimal/composition stamping, checks-init skip-when-absent, the prune-warning contract

Changesets: minor (median one-home + template stamping + prune warnings) and patch (vessel-light re-derivation is private, docs).

Ghost Review: run implicitly — the prune-loop validation above exercises the review-side contract; the vessel-light corpus edits were shape-only (headings), content preserved.

Commits

75433d1d corpus: audit backports, check cross-wiring, terminology sweeps
F2 (expression-count de-dialed from body grammar), F5 (motion-restraint refs signature.temperature + "the fingerprint's one ease"; values.md refs grammar.color-roles), F6 (stale React sentence cut), F7 (motion condition wording). Terminology: "node body" qualifications in capture/blocks/authoring-scenarios; "adapt" replaces fork/rebrand/transplant across skill, glossaries, indexes, checks, README (sanctioned keeps: fork-axis, git-fork, scenario-table rows).

e0ae6966 median: one authored home — headings contract, payload check, all templates stamp the floor
src/init-payloads/median/{anti-goal.median.md, median-tells.md} created (node moved from skeleton, reshaped: 15 ### headings, generalized floor sentence, sharpened prune sentence; check with 12 anchored refs, Celebration + Hero metric flags, Codex 32px carve-out). loadPayloadFile helper; skeleton/minimal/composition all stamp the node; minimal+composition glossaries gain the teaching sentence; MEDIAN_TELLS_CONTENT deleted; addChecksDir copies-or-skips with skipped:[] surfaced in both commands; lint messages gain the prune teaching clause; tests + minor changeset.

4eab2652 vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
vessel-light's median + check adopt the contract shape, Vessel deltas preserved, provenance line added; relationships.md ref upgraded to > Nested cards; adapting-a-starter step 2 rewritten to the now-true workflow; cli-reference + getting-started gain the model-truth-vs-brand-truth framing.

@nahiyankhan nahiyankhan marked this pull request as ready for review July 9, 2026 14:14
@nahiyankhan nahiyankhan merged commit 53c33b8 into review-locator-matching Jul 9, 2026
3 checks passed
@nahiyankhan nahiyankhan deleted the median-one-home branch July 9, 2026 14:14
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
… paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
…211)

* skill: adapting-a-starter recipe — the seven-step transplant procedure

* review: resolve package-relative material locators when matching diff paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
* init: packed-payload mechanism — dist payloads, byte-capable template seam

* template: skeleton rides packed files

* init: --body vessel-light — install the full inhabited package

* checks: packed-artifact body probes — fonts and checks survive pack

* docs: body install in getting-started + cli-reference; minor changeset

* skill: adapting-a-starter — the seven-step starter transplant recipe (#211)

* skill: adapting-a-starter recipe — the seven-step transplant procedure

* review: resolve package-relative material locators when matching diff paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
…n floor (#209)

* template: naked skeleton replaces steering default

* checks: median-tells scaffold — live check pairing with anti-goal.median, deterministic floor, model tells

* skill: migrate Morrow teaching shapes to authoring-scenarios

* docs: skeleton starter in getting-started + cli-reference; minor changeset

* ghost init --body: packed payloads + vessel-light body install (#210)

* init: packed-payload mechanism — dist payloads, byte-capable template seam

* template: skeleton rides packed files

* init: --body vessel-light — install the full inhabited package

* checks: packed-artifact body probes — fonts and checks survive pack

* docs: body install in getting-started + cli-reference; minor changeset

* skill: adapting-a-starter — the seven-step starter transplant recipe (#211)

* skill: adapting-a-starter recipe — the seven-step transplant procedure

* review: resolve package-relative material locators when matching diff paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
…edian floor (#208)

* materials: tokens audit — radius roles, hoist grammar-enumerated values

* corpus: fork-axis re-author — grammar/signature/register/anti-goal

* checks: relationship/value split — density.md retired, median-tells gains demoted rules, frequency thresholds, model-named tells

* materials: regenerate refs — annotated, closed-set complete

* docs: vessel-light README — fork-axis structure and ref-annotation curation

* ghost init: naked skeleton default — grammar, unanswered dials, median floor (#209)

* template: naked skeleton replaces steering default

* checks: median-tells scaffold — live check pairing with anti-goal.median, deterministic floor, model tells

* skill: migrate Morrow teaching shapes to authoring-scenarios

* docs: skeleton starter in getting-started + cli-reference; minor changeset

* ghost init --body: packed payloads + vessel-light body install (#210)

* init: packed-payload mechanism — dist payloads, byte-capable template seam

* template: skeleton rides packed files

* init: --body vessel-light — install the full inhabited package

* checks: packed-artifact body probes — fonts and checks survive pack

* docs: body install in getting-started + cli-reference; minor changeset

* skill: adapting-a-starter — the seven-step starter transplant recipe (#211)

* skill: adapting-a-starter recipe — the seven-step transplant procedure

* review: resolve package-relative material locators when matching diff paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe
nahiyankhan added a commit that referenced this pull request Jul 9, 2026
…ng-eval harness (#207)

* Add vendored vessel-react fingerprint: taste-floor nodes, materials wired to component sets, baseline hygiene checks

* Rename packages/vessel to packages/vessel-react; workspace fingerprint id follows

* Add vessel-light: Vessel's design language as a portable .ghost fingerprint for raw HTML/CSS agents

* Add steering-eval: portable before/after evaluation harness for Ghost fingerprints; wire vessel-light demo as first consumer

* Fix pilot findings: agent-browser set-viewport invocation, skip empty cells, brandTokens/pulledWords from tape

* Run the full steering-eval matrix on vessel-light: 45 generations + dump-growth, screenshots, metrics, report

* Park eval run artifacts on vessel-eval-artifacts branch; ignore demo/out on mainline

* steering-eval: emit WebP screenshots (shoot to PNG, convert via cwebp, embed webp in report)

* vessel-light: fork-axis re-authoring — grammar/signature/register + median floor (#208)

* materials: tokens audit — radius roles, hoist grammar-enumerated values

* corpus: fork-axis re-author — grammar/signature/register/anti-goal

* checks: relationship/value split — density.md retired, median-tells gains demoted rules, frequency thresholds, model-named tells

* materials: regenerate refs — annotated, closed-set complete

* docs: vessel-light README — fork-axis structure and ref-annotation curation

* ghost init: naked skeleton default — grammar, unanswered dials, median floor (#209)

* template: naked skeleton replaces steering default

* checks: median-tells scaffold — live check pairing with anti-goal.median, deterministic floor, model tells

* skill: migrate Morrow teaching shapes to authoring-scenarios

* docs: skeleton starter in getting-started + cli-reference; minor changeset

* ghost init --body: packed payloads + vessel-light body install (#210)

* init: packed-payload mechanism — dist payloads, byte-capable template seam

* template: skeleton rides packed files

* init: --body vessel-light — install the full inhabited package

* checks: packed-artifact body probes — fonts and checks survive pack

* docs: body install in getting-started + cli-reference; minor changeset

* skill: adapting-a-starter — the seven-step starter transplant recipe (#211)

* skill: adapting-a-starter recipe — the seven-step transplant procedure

* review: resolve package-relative material locators when matching diff paths (#212)

* review: resolve package-relative material locators when matching diff paths

* demo: drop stale parked-branch reference from eval artifacts gitignore

* median: one authored home — model truth stamped at init, prunable by contract (#213)

* corpus: audit backports, check cross-wiring, terminology sweeps

* median: one authored home — headings contract, payload check, all templates stamp the floor

* vessel-light: re-derive median onto the headings contract; docs get the ownership reframe

* build: root build and packed-package check produce the full ghost artifact

Root pnpm build only ran tsc, so dist/init-payloads and dist/skill-bundle
were missing in CI: the vessel-light body test failed and check-packed-package
packed a tarball without payloads. Root build now chains the package-level
build; check:packed-package builds its own complete artifact since the lint
job never runs pnpm build.

Signed-off-by: Nahiyan Khan <nahiyan@squareup.com>

---------

Signed-off-by: Nahiyan Khan <nahiyan@squareup.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant