Skip to content

fix: scaffoldia identity + descriptiles migration + CI-green sweep - #9

Merged
hyperpolymath merged 1 commit into
mainfrom
worktree-phase3a-scaffoldia-hygiene
Jul 7, 2026
Merged

hyperpolymath merged 1 commit into
mainfrom
worktree-phase3a-scaffoldia-hygiene

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Phase 3a of the RSR template-family plan: scaffoldia stops being an uninitialised template clone and becomes itself.

Naming mandate

.machine_readable/6a2/ → descriptiles/ — directory renamed and all 86 references swept; zero 6a2 remains (estate mandate 2026-06-30).

Identity

This repo still claimed to be rsr-template-repo (Justfile project name, CLADE canonical-name, raw placeholder README). Now: Justfile/CLADE/STATE/META/ECOSYSTEM/README/SECURITY all carry scaffoldia's real identity — honestly: STATE says design-phase, completion 5%, composer not built. README states the ratified scope (composer + retrofit; consumes VARIANT.a2ml contracts; scaffolding stack standards → rsr-template-repo → scaffoldia).

⚠️ CLADE uuid + [clade] left untouched with a TODO — they were inherited from the template's gv-clade-index registry entry; scaffoldia needs its own owner-ratified assignment (registry decisions are yours).

CI-green sweep (julia-pilot proven patterns)

  • boj-build.yml secrets-in-job-if fix; timeout-minutes dropped on 3 reusable-call jobs; secret-scanner caller converged to canon (perms grant + redundant TruffleHog removed).
  • rsr-antipattern.yml gains top-level permissions: — this was the actual cause of both the Governance and Workflow Security Linter reds.
  • OpenSSF Compliance red = unfilled placeholder tokens → fixed by the identity fill (scaffoldia is not a *-template-repo, so the template guard rightly doesn't apply).
  • Dogfood validator pins bumped (a2ml e558e79, k9 3e091a3); K9 conformance on 4 files; e2e.yml empty jobs: replaced with the default smoke job; LICENSES/ allowlisted.

Verified locally: a2ml, K9, root-shape, workflow validation, and the e2e harness all pass.

🤖 Generated with Claude Code

Phase 3a of the RSR template-family plan (scaffoldia hygiene):

- MANDATE: .machine_readable/6a2/ -> descriptiles/ (dir rename + all 86
  references swept; zero '6a2' remains).
- Identity: this repo was an uninitialised rsr-template-repo clone
  claiming to BE the template. Justfile project/REPO, CLADE
  canonical-name/forges/lineage, STATE (honest design-phase state,
  completion 5%), META, ECOSYSTEM, README (scaffoldia = composer +
  retrofit, per owner mandate 2026-07-07), .github/SECURITY.md tokens
  filled. CLADE uuid + clade assignment left as-is with a TODO — they
  belong to the template's gv-clade-index entry; scaffoldia needs its
  own owner-ratified registry entry.
- CI-green sweep (julia-pilot proven patterns):
  - boj-build.yml secrets-in-job-if fix
  - timeout-minutes dropped on mirror/rsr-antipattern/secret-scanner
    reusable-call jobs
  - secret-scanner converged to the canon caller (job-level
    pull-requests:write + actions:read grant; redundant TruffleHog job
    removed per the reusable's retirement note)
  - rsr-antipattern.yml gains top-level permissions (Governance +
    Workflow Security Linter red)
  - dogfood-gate validator pins bumped (a2ml e558e79, k9 3e091a3)
  - e2e.yml empty jobs: section replaced with the default smoke job
    (runs tests/e2e.sh; passes locally)
  - K9 conformance: K9! magic + pedigrees for coordination.k9,
    session/custom-checks.k9, methodology-guard.k9.ncl,
    container/deploy.k9.ncl
  - root-allow.txt: LICENSES/ entry (present at root, never listed)

Verified locally: a2ml, K9, root-shape, workflow validation, e2e
harness all pass; actionlint clean (bar its known false-positive on
the dogfood embedded-python block, which GitHub parses fine).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@hyperpolymath
hyperpolymath merged commit 3b32b2f into main Jul 7, 2026
19 of 31 checks passed
@sonarqubecloud

sonarqubecloud Bot commented Jul 7, 2026

Copy link
Copy Markdown

@hyperpolymath
hyperpolymath deleted the worktree-phase3a-scaffoldia-hygiene branch August 18, 2026 12:39
hyperpolymath added a commit that referenced this pull request Sep 13, 2026
…tive source (#45)

Three READMEs under `.machine_readable/` described the record format in
their
own words. Each now points at the one normative document instead.

## What changed

- **`descriptiles/README.adoc`** — rewritten as real AsciiDoc. It was
Markdown
inside a `.adoc`; Asciidoctor's Markdown compatibility carried the
headings
and bullets, but both `[label](url)` links rendered as literal bracket
text
(verified by rendering the pre-change file). Drops the deprecated "6A2"
label, replaces the dead `standards/tree/main/a2ml` link with the
grammar
pointer, keeps the two links verified live, and states that DEED has no
  `key = value` form. Documents `0-AI-MANIFEST.a2ml`, `CLADE.a2ml` and
  `anchors/`, which the old file omitted.
- **`README.adoc`** — the pillar stub gains the normative pointer and a
  description of every subdirectory actually present.
- **`contractiles/README.adoc`** — pointer banner only, body untouched.

## Scope and known-stale things this PR deliberately does not fix

- **Zero files converted.** Every `.a2ml` file keeps its name and
content. The
  extension rename is a separate atomic estate-wide change.
- **The spec path dangles until standards#752 merges.**
`deed/spec/DEED-GRAMMAR-SPEC.adoc`
is not on `hyperpolymath/standards@origin/main` yet; it exists only on
that
  pull request's branch. Every pointer added here says so in-line.
- **`.githooks/validate-a2ml.sh` is untouched and remains blind to
`.deed`.**
It globs `*.a2ml` only and contains zero occurrences of `.deed`. This
copy is
**not** divergent — an earlier version of this description said it was,
and that
was wrong. A census of both canonical trees (2026-09-09) found **149
copies of
`validate-a2ml.sh` carrying 21 distinct hashes, of which 120 (80.5%)
share the
single hash `74494b9e…` — scaffoldia's exact hash.** The validator
population is
a stamped monoculture, and this file is a member of the dominant
cluster.
  The two upstreams being patched are each a **lone outlier**:
`a2ml-ecosystem:validate-action/validate-a2ml.sh` (`60c5d3e1…`) is 1
copy and
  `a2ml:actions/validate/validate-a2ml.sh` (`993679e8…`) is 1 copy;
`rsr-template-repo:.githooks/validate-a2ml.sh` (`4cf60bb4…`) is a third
variant
  held by 2 files and is **not** the stamping source either. So
**a2ml-ecosystem#52 and a2ml#3 fix the two outliers and reach none of
the 120.**
Re-stamping the dominant cluster is task #9, is not answered here, and
what
actually stamped those 120 is still unidentified. (The census scanned
working
  trees, so 149 is a floor, not a ceiling.)
- **`contractiles/README.adoc` cites four paths that do not exist** —
`must/Mustfile`, `trust/Trustfile.hs`, `dust/Dustfile`,
`intend/Intentfile`.
Recorded in the banner, not repaired: the verb-directory layout and the
file
  extensions are governed by separate rulings.
- **Not a template source.** The strings changed here appear in no other
file
  in this repository, so no generated repo is left stale by this change.

## Verification

`asciidoctor -o /dev/null` renders all three files clean, exit 0, no
warnings.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01QNjWX2B4FffG7zqMBMui6v

---------

Co-authored-by: Claude Opus 5 <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