Skip to content

feat: repo contract pilot - distilled AGENTS.md, verify skill, REVIEW.md, cloud wiring - #470

Merged
rita-aga merged 5 commits into
mainfrom
claude/repo-contract
Aug 26, 2026
Merged

feat: repo contract pilot - distilled AGENTS.md, verify skill, REVIEW.md, cloud wiring#470
rita-aga merged 5 commits into
mainfrom
claude/repo-contract

Conversation

@rita-aga

@rita-aga rita-aga commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Why

Pilot of the universal-setup repo contract (stack ARN-405, Stage-1 item 2). TemperPaw first.

Scope

  • AGENTS.md distilled to project-only substance; CLAUDE.md becomes a symlink; global rules come from arni-labs/stack (loaded by every harness locally, injected by hook in cloud sessions)
  • New WASM integration rules (never dispatch transitions from WASM; one integration one concern) - Rita, 2026-08-25; also recorded in TEMPER-META v2
  • REVIEW.md for the fixed review panel
  • .claude/skills/verify-temperpaw/ - generated with create-verification-skill, feature map included
  • .claude/settings.json - stack plugin + cloud global-context hook

Decisions & Tradeoffs

  • Kept repo's existing Makefile as the command surface instead of adding scripts/ wrappers - the targets already exist; came up because the contract planned scripts/, chose reusing make over duplicating it.
  • .proofs/ convention kept (existing, committed repo convention), .progress/ not referenced (retired).

Verification

Proof run complete (2026-08-25, local, isolated scratch DB). The skill's own instructions were executed end to end and each failure became a fix in this PR:

  1. Boot on a fresh checkout failed - make setup never builds WASM, and the old make wasm target was broken for the whole workspace. Fixed: make wasm now runs every os-apps/*/wasm/build.sh and per-module os-apps/*/wasm/*/build.sh (paw-fs keeps its scripts one level deeper; missing them left blob_adapter, workspace_fs, artifact_batch_apply unbuilt and the server shut down on missing AppRequired modules).
  2. Shutdown-path stack overflow reproduced twice - appended to ARN-161 (existing issue, no new ticket).
  3. /tdata auth: TEMPER_API_KEY must be in .env BEFORE boot (platform bootstraps the tenant credential at startup; keyless boot serves 401). Skill Launch corrected.
  4. DB isolation: default store is the shared ~/.local/share/temperpaw/paw.db - the skill now mandates TURSO_URL=file:.scratch/paw.db (gitignored).

Final pass: make wasm (12 modules, all built) -> cargo run -p temperpaw -> GET /healthz 200 -> authed OData read GET /tdata/SkillPackages 200 -> clean teardown by captured PID. Evidence: /tmp/verify-temperpaw/2026-08-25/ (healthz response, boot log heads, OData payload).

Authored by Fable 5 via Claude Code.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2

rita-aga and others added 2 commits August 25, 2026 19:00
….md symlink), REVIEW.md, verify-temperpaw skill + feature map, cloud global-context hook, stack plugin declaration

- AGENTS.md: global duplications removed (worktree/PR/root-cause/e2e boilerplate now
  comes from the stack layer every harness loads); project substance kept and
  tightened; new WASM integration rules (integrations never dispatch transitions;
  one integration, one concern)
- CLAUDE.md -> symlink to AGENTS.md (one file, no hand-mirroring)
- REVIEW.md: four passes incl. entity-first compliance and determinism
- .claude/skills/verify-temperpaw/ + features/ (generated via create-verification-skill;
  .cursor/skills symlink for Cursor)
- .claude/hooks/global-context.sh + settings.json: cloud sessions get the global
  layer and the stack plugin; local sessions unaffected (no duplication)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2
…d from proof run

- Makefile wasm target now also runs os-apps/*/wasm/*/build.sh (paw-fs keeps
  per-module scripts one level deeper; the shallow glob left blob_adapter,
  workspace_fs, artifact_batch_apply unbuilt and the server shut down on
  missing AppRequired modules)
- verify-temperpaw skill: TEMPER_API_KEY must be in .env BEFORE boot (the
  platform bootstraps the tenant credential at startup; keyless boot serves
  401 on /tdata), service-doc-401 gotcha, isolation via TURSO_URL scratch DB
  (.scratch/ gitignored)

Proven end to end: make wasm (12 modules) -> boot -> healthz 200 ->
authed OData read 200 on /tdata/SkillPackages -> clean teardown.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2
@rita-aga
rita-aga force-pushed the claude/repo-contract branch from 4f23ff5 to a6ac363 Compare August 25, 2026 23:28
rita-aga and others added 3 commits August 25, 2026 20:16
…fo/exclude '.claude/skills/' - added with -f)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2
Rita is rethinking how work gets proven; the old regime goes now, the
replacement is an open design item.

- .proofs/ (166 files), .progress/, docs/proofs/ deleted
- 25 scripts deleted: prove_*, one-off seeds/calibration - none referenced
  by CI, Makefile, Dockerfile, or tests (each cross-checked)
- tests un-enforce the regime: .proofs gitignore/dockerignore assertions and
  path exemptions removed (native_skill_installation, identity contract)
- AGENTS.md: evidence-in-.proofs line removed
- docs/datadog-webhook-setup.md: references to deleted scripts removed

Kept: prove_wasm_guest_observability.py, read_datadog_snapshot.py,
configure_metric_percentiles.py (bound by the Datadog observability
contract test - untangling that belongs to the new proof design).

Contract tests pass: native_skill_installation 5/5, identity contract 12/12.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2
…t definitions

.claude/skills, .claude/agents, .cursor/skills are now symlinks into
.agents/. Content exists once; harness folders only point. Also sidesteps
the local .git/info/exclude rule that silently untracked .claude/skills.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLPhB9kjLeE48kLUyAXXq2
@rita-aga
rita-aga marked this pull request as ready for review August 26, 2026 16:36
@rita-aga
rita-aga merged commit e052bff into main Aug 26, 2026
@greptile-apps

greptile-apps Bot commented Aug 26, 2026

Copy link
Copy Markdown

Too many files changed for review (222 files, 100 file limit).

Bypass the limit by tagging @greptile-apps to review.

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