Skip to content

Rewrite CLAUDE.md as a short card - #107

Merged
NSchatz merged 1 commit into
mainfrom
harness/63-claude-md-short-card
Oct 20, 2026
Merged

NSchatz merged 1 commit into
mainfrom
harness/63-claude-md-short-card

Conversation

@NSchatz

@NSchatz NSchatz commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Harness-Task: 63

Replaces the 286-line CLAUDE.md with a 57-line card (wc -l < CLAUDE.md prints 57): what the repo is, the gate, the hazard, and nine rules. Each rule names the failure behind it: an anchor in documentation/agent-notes.md or a CHANGELOG.md entry.

Dropped: status, tech stack, roadmap, architecture, the required-checks and ruleset notes, the standing disciplines, the standards-licensing and EPCS sections, and every rule with no failure to point at. The licensing posture survives as one clause of the wire-code label rule, whose failures (32 unsourced code meanings, a transaction list written from recall) it grew out of. Git history keeps the old text.

The one reference elsewhere to a dropped section, documentation/agent-notes.md "Standards licensing and EPCS", gets a dated annotation in that file's own style saying where the text went. Nothing in that file was removed.

Commands the card names, and how each was checked (checked, not run)

package.json scripts (jq -r '.scripts | keys[]' package.json): pnpm typecheck, pnpm lint, pnpm format:check, pnpm phi-scan, pnpm test, pnpm test:coverage, pnpm build, pnpm attw, pnpm check:test-selection, pnpm check:no-emdash, pnpm check:no-internal-refs, pnpm examples.

Binaries on PATH (command -v): pnpm (for pnpm install --frozen-lockfile, pnpm publish --dry-run --no-git-checks --ignore-scripts, pnpm --version), npm (for npm pack --dry-run --ignore-scripts), corepack (for corepack enable --install-directory <dir> pnpm).

The bare attw CLI, which the card says never to call: a devDependency binary at node_modules/.bin/attw.

Installed by the CI, said as such in the card: actionlint (reviewdog action), CodeQL, the shared pipeline's pre-publish checks.

Files (git ls-files <path>): .github/workflows/ci.yml, .github/workflows/test-selection.yml, .github/workflows/no-emdash.yml, .github/workflows/no-internal-refs.yml, .github/workflows/release.yml, scripts/attw.mjs, scripts/phi-scan.ts, scripts/phi-allow-list.txt, docs-content/conformance.md, documentation/agent-notes.md, CHANGELOG.md.

Anchors: all eleven resolve, checked by pnpm check:agent-notes (1 qualified + 59 bare pointers, all resolving; the bare count stays above the qualified count, which test/scripts/agent-notes.test.ts requires).

Gate run

All green locally: install, typecheck, lint, format:check, phi-scan, test (867 passed, 5 skipped), test:coverage, build, attw, check:test-selection, check:no-emdash, check:no-internal-refs, npm pack --dry-run. Two local quirks, both now in the card's gate section:

  • The pnpm on PATH here is 12.x. It fails install --frozen-lockfile on overrides, and test/docs-content.test.ts spawns pnpm build itself, so the tests ran with corepack's pnpm 10 shim first on PATH.
  • pnpm publish --dry-run refuses locally ("You cannot publish over the previously published versions: 0.1.0") under both npm 10.9.9 and 11.19.1. CI's release-dry-run passed on the same base commit (07ae142), so CI decides that one.

No changeset: nothing under src/ changed.

Left alone on purpose: a comment in scripts/check-no-internal-refs.sh says the JSDoc @example rule is "a hard guardrail in CLAUDE.md". It is a code comment, not a link, and the lint rule it also names still enforces the rule.

🤖 Generated with Claude Code

CLAUDE.md goes from 286 lines to 57: what the repo is, the gate in the
order CI runs it, the hazard, and nine rules, each with a pointer to the
failure behind it (an agent-notes section or a changelog entry).

Dropped: status, tech stack, roadmap, architecture, the required-checks
and ruleset notes, the standing disciplines, the standards-licensing and
EPCS sections, and every rule with no failure to point at. Git history
keeps the old text.

The agent-notes section that pointed at the two dropped CLAUDE.md
sections gets a dated annotation saying where they went.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@NSchatz
NSchatz merged commit 45d76c6 into main Oct 20, 2026
12 checks passed
@NSchatz
NSchatz deleted the harness/63-claude-md-short-card branch October 20, 2026 03:34
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