Repo potential assessment: fix identity, purge template residue, green the governance CI#41
Merged
Merged
Conversation
…te scaffolding
- Remove affinescript/ (608-file vendored copy of another project; headless
without its bin/ CLI and carrying an AGPL license text in an MPL repo)
- Remove src/interface/ (template Idris2 librsr ABI, Zig FFI with literal
{{project}} tokens as identifiers, stale committed .ttc artifacts)
- Remove template-only harness: validate-template.sh, template_bench.sh,
template_instantiation_test.sh, ABI-FFI-README.adoc
- Remove e2e.yml (invalid empty jobs map; real e2e returns at roadmap M3)
- Drop dangling references (root-allow.txt, PR template, validate.just,
root-cleanup.adoc)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
- root-allow.txt: allow README.md, CONTRIBUTING.md, SECURITY.md, LICENSES/; remove root duplicate .adoc files that have canonical copies under docs/ - convert docs/tech-debt-2026-05-26.md -> .adoc (no .md permitted under docs/) - scrub Zig/FFI references from ~30 template files (commented build examples, find/grep language lists, doc tables) now that the template FFI is gone - retarget eclexiaiser.toml to bofj-kitt + an existing source file - rewrite docs/status/TEST-NEEDS.adoc to the honest zero-test state - gitignore local .claude/ session artifacts Identity files still carrying template names (STATE.a2ml, 0-AI-MANIFEST.a2ml, humans.txt) are rewritten in the following identity/token commits, which bring check-no-vlang fully green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
…l-known
- META.a2ml/ECOSYSTEM.a2ml: fill {{REPO}}/{{REPO_DESCRIPTION}}; type tooling;
declare boj-server/rsr-template-repo/standards relationships
- remove .github/SECURITY.md (406-line unfilled template; root SECURITY.md is
the real, substantive policy)
- fill .envrc, .well-known/{humans,security,ai}.txt, .github/{FUNDING,settings}.yml,
docs/status/READINESS.adoc header, maint-assault.sh BINARY_NAME
- drop stale Palimpsest-MPL / PMPL wording (license is MPL-2.0 + CC-BY-SA-4.0)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
- README.md: full rewrite — bofj-kitt as the BoJ dev-environment extension kit,
honest pre-alpha status, roadmap/assessment pointers, fixed license badges
- 0-AI-MANIFEST.a2ml, STATE.a2ml, 6a2/{STATE,ECOSYSTEM,META}.a2ml: real
bofj-kitt identity, purpose, phase (design), honest completion; ADRs recorded
- Justfile project/REPO vars; contractiles (INTENT/MUST/TRUST/ADJUST); AI.a2ml;
Bustfile identity → bofj-kitt
- docs/architecture/TOPOLOGY.adoc, docs/status/{ROADMAP,TEST-NEEDS,READINESS}.adoc:
rewritten for the kit; ROADMAP now carries M0–M5
- EXPLAINME.adoc retitled (dropped Julia-registry template section);
llm-warmups, QUICKSTART-*, setup.sh, copilot-instructions retargeted
- lineage/provenance references to rsr-template-repo deliberately retained
check-no-vlang and pseudoscript now clean across all tracked files.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
…l language - dogfood-gate.yml: indent embedded tomllib Python into its run:| block scalar so the workflow is valid YAML (it errored on every run before) - rhodibot.yml: point workflow_run at the real workflow name 'Hypatia Security Scan' (was 'Hypatia Neurosymbolic Analysis' — a trigger that never fired) - Justfile crg-grade/crg-badge: read docs/status/READINESS.adoc with the adoc single-asterisk grade pattern (was READINESS.md + markdown-bold pattern) - codeql.yml: analyse 'actions' (the repo's real executable surface) instead of javascript-typescript, which no longer exists after the affinescript removal All 17 workflows now parse and declare jobs. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
- docs/reports/audit/repo-assessment-2026-07-16.adoc: findings (three-way identity split, vendored affinescript, uninstantiated scaffolding, token census, CI health), decisions, potential, M0–M5 roadmap, and appendices (deferred token inventory; intentionally-kept historical files) - remove stale src/interface ABI references from the AI assistant rule files (.clinerules/.cursorrules/.windsurfrules) now that the tree is gone Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
…-vlang The assessment described the removed FFI by naming its language; the estate's no-banned-language rule scans all tracked files, so describe it generically instead.
|
You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool. What Enabling Code Scanning Means:
For more information about GitHub Code Scanning, check out the documentation. |
The a2ml-validate job (in dogfood-gate) requires an unindented name/project/agent-id key. MAINTENANCE-CHECKLIST.a2ml had none and TSDM.a2ml's name keys were all indented, so both failed 'Missing required identity field'. Add a top-level name key to each, matching the passing sibling SOFTWARE-DEVELOPMENT-APPROACH.a2ml. These were pre-existing failures newly surfaced now that dogfood-gate.yml parses as valid YAML. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
hyperpolymath
marked this pull request as ready for review
July 17, 2026 06:19
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
bofj-kitt was scaffolded from the RSR template on 2026-03-16 and never given its own identity. It carried three contradictory identities (README/manifests said "pseudoscript"; Justfile/STATE said "rsr-template-repo"; only
CLADE.a2mlsaid "bofj-kitt"), ~88 files of unfilled{{TOKEN}}placeholders, a vendored 4.9 MB copy of an unrelated project (AffineScript, headless + AGPL-in-an-MPL-repo), and governance CI that failed deterministically on several of its own estate rules.This PR brings the repo to an honest baseline (roadmap milestone M0): one truthful identity everywhere, governance CI that passes its own rules, and a committed assessment + M0–M5 roadmap. It adopts the purpose from the GitHub description — Shared Developer Environment Extension Kit (the "SuperChainsaw") for the BoJ (Box of Justice) server. No product code is written in this pass; the kit is specified as future work.
Full findings and rationale:
docs/reports/audit/repo-assessment-2026-07-16.adoc.Changes
affinescript/subtree (608 files, 4.9 MB) and the uninstantiatedsrc/interface/template ABI/FFI (the FFI never compiled — it held literal{{project}}tokens as identifiers) plus template-only test/bench/validation harnesses and the invalide2e.yml.bofj-kittacross README,0-AI-MANIFEST.a2ml,STATE.a2ml/6a2/{STATE,ECOSYSTEM,META}.a2ml,Justfile, contractiles,TOPOLOGY.adoc,ROADMAP.adoc,TEST-NEEDS.adoc,EXPLAINME.adoc, and onboarding docs. ADRs recorded for the three decisions.README.md/CONTRIBUTING.md/SECURITY.md/LICENSES/; removed root.adocduplicates that have canonical copies underdocs/); converted the one.mdunderdocs/to.adoc; scrubbed banned-language references from ~30 template files..github/SECURITY.mdin favour of the real rootSECURITY.md; filled.envrc,.well-known/*,FUNDING.yml,settings.yml,READINESS.adocheader.dogfood-gate.yml(was invalid YAML — embedded Python fell out of itsrun:block); pointedrhodibot.yml's deadworkflow_runtrigger at the real workflow name; fixedcrg-grade/crg-badgeto readdocs/status/READINESS.adoc; retargetedcodeql.ymlfromjavascript-typescript(gone) toactions.docs/reports/audit/repo-assessment-2026-07-16.adocand an M0–M5 roadmap.RSR Quality Checklist
Required
just testor equivalent) — no product tests yet (pre-alpha); governance workflow/aspect checks unaffectedunsafeblocks without// SAFETY:commentsbelieve_me,unsafeCoerce,Obj.magic,Admitted,sorry).envfiles includedAs Applicable
.machine_readable/STATE.a2mlupdated (project state changed).machine_readable/ECOSYSTEM.a2mlupdated (integrations changed).machine_readable/META.a2mlupdated (ADRs added)TOPOLOGYupdated (architecture rewritten for the kit)CHANGELOGor release notes updated — deferred to M1Testing
Ran the estate gates locally against the tracked tree (CI-accurate):
scripts/check-root-shape.sh— PASS (the only working-tree offender is the gitignored, CI-absent.claude/)scripts/check-no-md-in-docs.sh— PASSscripts/check-no-vlang.sh— PASS on all tracked files (remaining hits are confined to the gitignored.claude/settings.local.json).github/SECURITY.mdabsentjobs:(PyYAML)just crg-gradereadsXfromREADINESS.adoc(not the fallback)pseudoscriptidentity residue in tracked filesScreenshots
n/a
🤖 Generated with Claude Code
https://claude.ai/code/session_01Xw37JPAVjBDvAKdBRGRqMx
Generated by Claude Code