Skip to content

docs(garden): the bed's papers — garden.json, product layer, footer, metric summary - #212

Open
jahala wants to merge 1 commit into
garden/skillfrom
garden/papers
Open

jahala wants to merge 1 commit into
garden/skillfrom
garden/papers

Conversation

@jahala

@jahala jahala commented Sep 5, 2026

Copy link
Copy Markdown
Owner

What

The bed's papers: the files the umbrella's fit contract reads. Stacked on #211 (base garden/skill). No Rust changes.

Fit check What this PR adds Proven by
F1 manifest garden.json: name, kind, version in lockstep, faces (cli, mcp 7/8 tools, skill at skills/SKILL.md, the tilth-core library), install per platform, metric, declared context cost scripts/check/garden-json.sh
F3 standalone install unchanged: cargo install --path . --locked installs 0.10.1 from the workspace root (checked)
F4 context cost declared = measured, in the probe's unit (89 / 109 instructions, 2158 / 3069 schemas); context-cost.sh --json is the single source the manifest check reads scripts/check/garden-json.sh
F5 metric result docs/metrics/latest.md: v0.5.0 figures, no interval (honestly stated), no signed artifact yet, copeca A/B named as next scripts/check/metric-result.sh
F6 brand + footer .brand/products/tilth/ (identity, colors, voice, mark, petalsrc.example) with the one accent Sky #4E88A6; footer gains pollen (mirrors the umbrella's seven beds) scripts/check/brand-layer.sh, scripts/check/footer.sh; petals check on index.html: 0 errors, 0 warnings
release order already in #210; check script added scripts/check/release-order.sh

Decisions in the open

  • .gitignore: .brand/* stays ignored (umbrella files are pulled, never committed); !.brand/products/ is committed. This follows the umbrella's ruling for every bed.
  • garden.json has no $schema: the manifest schema does not exist yet in the contracts repo. Re-validate when it lands.
  • The metric command is copeca's existing full-sonnet scenario, run in the copeca repository. The skill-vs-MCP brief is the next measurement.

Flagged for the owner

  • The judge's footer entry waits for its confirmed name.
  • .brand/products/tilth/identity.md names tilth-core as a face (factual). Any wider wording of tilth's identity on README and page is yours.

Verification

bash scripts/check/garden-json.sh     # fields present, 0.10.1 in lockstep, declared covers measured
bash scripts/check/brand-layer.sh     # identity, colors, voice, mark present; one accent; tracked
bash scripts/check/footer.sh          # 7 beds + plotplot band
bash scripts/check/metric-result.sh   # value, interval, date, version, artifact pointer
bash scripts/check/release-order.sh   # tilth-core published before tilth
petals/scripts/check.sh index.html --brand <umbrella+this layer> --product tilth   # PASS, 0/0
cargo install --path . --root /tmp/x --locked && /tmp/x/bin/tilth --version           # tilth 0.10.1

Nothing merged, tagged, or published by me.

🤖 Generated with Claude Code

…metric summary

The files the umbrella reads to decide whether tilth belongs to the garden.

- garden.json: name, kind (capability and channel), version in lockstep
  with both manifests and the npm wrapper, faces (cli; mcp with 7 tools,
  8 in edit mode; the skill at skills/SKILL.md; the tilth-core library),
  install per platform, no check face, the metric (copeca's full-sonnet
  scenario, with the skill-versus-MCP brief as the next measurement), and
  the declared context cost: exactly what the probe measures, in the
  probe's unit. No $schema line: the manifest schema does not exist in
  contracts yet; the file is re-validated when it lands.
- .brand/products/tilth/: identity, colors, voice, and the mark, in the
  umbrella's product shape with tilth's one accent, Sky #4E88A6. The
  umbrella-derived brand files stay pulled and ignored; only products/ is
  committed (.gitignore: .brand/* with !.brand/products/). The petals
  check on index.html against the umbrella plus this layer: colors,
  layout, surface, voice all 0 errors, 0 warnings.
- index.html footer: pollen joins, mirroring the umbrella site's seven
  beds and URLs; the judge's entry waits for its name.
- docs/metrics/latest.md: the v0.5.0 figures (2026-03-08, 160 runs, -40%
  average cost per correct), an honest "no interval" and "no signed
  artifact yet", and the copeca A/B named as the next measurement.

Evidence scripts for the papers loop: garden-json (fields, lockstep,
declared >= measured), brand-layer, footer, metric-result, release-order.
context-cost.sh gained --json so the manifest check consumes the probe's
one measurement instead of taking a second: a first draft re-measured in
bytes and disagreed with itself by the em dashes. The probe also no
longer needs bash 4.

cargo install --path . --locked still installs tilth 0.10.1 from the
workspace root.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.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