Skip to content

docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling) - #2

Merged
hyperpolymath merged 1 commit into
mainfrom
chore/supersede-record-dialect
Sep 9, 2026
Merged

docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)#2
hyperpolymath merged 1 commit into
mainfrom
chore/supersede-record-dialect

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Owner ruling, 2026-09-08. Task #74.

What this does

Stamps RECORD-DIALECT-SPEC.adoc as SUPERSEDED and keeps it as history. No change to the specification text itself — only the attribute block and a WARNING notice ahead of the abstract.

Why

The record dialect specified a TOML-family surface — [section] headers and key = value entries — as the grammar for the seven descriptiles (STATE, META, ECOSYSTEM, AGENTIC, NEUROSYM, PLAYBOOK, ANCHOR).

The DEED grammar has no key = value production and no [section] production. The only bracket is (. Both documents cannot be normative for the same files.

Why it is kept rather than withdrawn

This document was honest about what it was doing. Its own abstract says the surface "was used but never specified: 435 files across the estate conform to a grammar that existed only by imitation."

That is the provenance of the speciation, and it is worth keeping. Measured across all 35,884 legacy .a2ml files, the descriptile family had reached 0.2% conformance to the actual grammar — 10 correct against 5,424 TOML-shaped. Deleting the document would destroy the record of how that happened.

Superseded by

DEED-GRAMMAR-SPEC.adoc v0.1.0 — hyperpolymath/standards, deed/spec/, PR hyperpolymath/standards#752.

Not addressed here — needs an owner ruling

MANIFEST-DIALECT-SPEC.adoc in this same repo specifies a third surface: the ----delimited frontmatter used by 0-AI-MANIFEST.a2ml, at 894 well-formed files the largest A2ML surface in the estate, with a validator reporting 100% conformance. It explicitly positions itself alongside the record dialect ("Like RECORD-DIALECT-SPEC.adoc, this is a specification of a deployed surface") and cross-references it in four places, two of which are now pointers into a superseded document.

The owner ruled on the record dialect only. The manifest dialect is not stamped here, because:

  • it is live work, not drift — 0-AI-MANIFESTS are part of the rsr-template task (#78);
  • unlike the descriptiles at 0.2%, its corpus is at 100% conformance to its own spec;
  • whether frontmatter manifests become .deed s-expressions, stay frontmatter as a sanctioned surface, or move to .ncl is a design decision, not a cleanup.

Question for the owner: does the manifest dialect survive the DEED transition as a sanctioned surface, or is it superseded too? Its four cross-references into this document should be repointed either way.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QNjWX2B4FffG7zqMBMui6v

…0.1.0

Owner ruling, 2026-09-08: the record dialect is superseded, and the file is
kept as history rather than withdrawn.

The record dialect specified a TOML-family surface — `[section]` headers and
`key = value` entries — for the seven descriptiles. The DEED grammar has no
`key = value` production and no `[section]` production; the only bracket is
`(`. The two cannot both be normative for the same files.

The document is retained unaltered below the notice. It was an honest record:
it stated plainly that 435 estate files conformed to a grammar that "existed
only by imitation". Measured across all 35,884 legacy .a2ml files, the
descriptile family had reached 0.2% conformance to the actual grammar (10
correct against 5,424 TOML-shaped) — this document is evidence of how that
happened, so deleting it would destroy the provenance.

Changes: :status: Draft -> SUPERSEDED, plus :superseded-by: and
:superseded-date:, and a WARNING notice ahead of the abstract. No change to
the specification text itself.

Superseded by: DEED-GRAMMAR-SPEC.adoc v0.1.0, hyperpolymath/standards
deed/spec/ (PR #752).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QNjWX2B4FffG7zqMBMui6v
@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: e740425a-b422-4fd5-85f0-953233de95ac

📥 Commits

Reviewing files that changed from the base of the PR and between 75704e4 and fbbdfa5.

📒 Files selected for processing (1)
  • RECORD-DIALECT-SPEC.adoc

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Recent review details
⚠️ CI failures not shown inline (6)

GitHub Actions: Idris2 Tests / 0_test.txt: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run if [ ! -f ~/.idris2/bin/idris2 ]; then
 �[36;1mif [ ! -f ~/.idris2/bin/idris2 ]; then�[0m
 �[36;1m  echo "Installing Idris2 0.7.0..."�[0m
 �[36;1m  curl -L https://github.com/idris-lang/Idris2/releases/download/v0.7.0/idris2-0.7.0-x86_64-linux.tar.gz -o idris2.tar.gz�[0m
 �[36;1m  tar xf idris2.tar.gz�[0m
 �[36;1m  cd idris2-0.7.0�[0m
 �[36;1m  PREFIX=$HOME/.idris2 make install�[0m
 �[36;1mfi�[0m
 �[36;1mecho "$HOME/.idris2/bin" >> $GITHUB_PATH�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 Installing Idris2 0.7.0...
   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                  Dload  Upload   Total   Spent    Left  Speed
   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
 100     9  100     9    0     0     35      0 --:--:-- --:--:-- --:--:--    36
 tar: This does not look like a tar archive
 gzip: stdin: not in gzip format
 tar: Child returned status 1
 tar: Error is not recoverable: exiting now
 ##[error]Process completed with exit code 2.

GitHub Actions: Idris2 Tests / test: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run if [ ! -f ~/.idris2/bin/idris2 ]; then
 �[36;1mif [ ! -f ~/.idris2/bin/idris2 ]; then�[0m
 �[36;1m  echo "Installing Idris2 0.7.0..."�[0m
 �[36;1m  curl -L https://github.com/idris-lang/Idris2/releases/download/v0.7.0/idris2-0.7.0-x86_64-linux.tar.gz -o idris2.tar.gz�[0m
 �[36;1m  tar xf idris2.tar.gz�[0m
 �[36;1m  cd idris2-0.7.0�[0m
 �[36;1m  PREFIX=$HOME/.idris2 make install�[0m
 �[36;1mfi�[0m
 �[36;1mecho "$HOME/.idris2/bin" >> $GITHUB_PATH�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 Installing Idris2 0.7.0...
   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                  Dload  Upload   Total   Spent    Left  Speed
   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
 100     9  100     9    0     0     35      0 --:--:-- --:--:-- --:--:--    36
 tar: This does not look like a tar archive
 gzip: stdin: not in gzip format
 tar: Child returned status 1
 tar: Error is not recoverable: exiting now
 ##[error]Process completed with exit code 2.

GitHub Actions: ReScript Tests / 0_test.txt: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run deno install
 �[36;1mdeno install�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 ##[error]An error occurred trying to start process '/usr/bin/bash' with working directory '/home/runner/work/a2ml/a2ml/prototype/rescript'. No such file or directory

GitHub Actions: ReScript Tests / test: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run deno install
 �[36;1mdeno install�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 ##[error]An error occurred trying to start process '/usr/bin/bash' with working directory '/home/runner/work/a2ml/a2ml/prototype/rescript'. No such file or directory

GitHub Actions: Fuzzing / 0_fuzzing.txt: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run deno install
 �[36;1mdeno install�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 ##[error]An error occurred trying to start process '/usr/bin/bash' with working directory '/home/runner/work/a2ml/a2ml/prototype/rescript'. No such file or directory

GitHub Actions: Fuzzing / fuzzing: docs(spec): supersede RECORD-DIALECT-SPEC with the DEED grammar (owner ruling)

Conclusion: failure

View job details

##[group]Run deno install
 �[36;1mdeno install�[0m
 shell: /usr/bin/bash -e {0}
 ##[endgroup]
 ##[error]An error occurred trying to start process '/usr/bin/bash' with working directory '/home/runner/work/a2ml/a2ml/prototype/rescript'. No such file or directory
🔇 Additional comments (1)
RECORD-DIALECT-SPEC.adoc (1)

5-7: LGTM!

Also applies to: 14-34


📝 Summary

Summary by CodeRabbit

  • Documentation
    • Marked the record dialect specification as superseded by the DEED Grammar Specification v0.1.0.
    • Added supersession details, including the replacement specification and date.
    • Added a prominent warning that the record dialect is not part of .deed, is retained unchanged for historical reference, and must not be used as an implementation guide.

Walkthrough

The record dialect specification is marked SUPERSEDED. It references DEED-GRAMMAR-SPEC v0.1.0 and states that the dialect is not part of .deed and must not be implemented.

Changes

Record specification status

Layer / File(s) Summary
Add supersession notice
RECORD-DIALECT-SPEC.adoc
The document adds supersession metadata and a warning that the record dialect is retained as a historical record and must not be implemented.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk: ⚪ Minimal · up to fbbdf

This change clearly marks the record dialect specification as superseded and non-implementable while retaining its historical text. No current merge-blocking risk remains.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the documentation change and the supersession of RECORD-DIALECT-SPEC by the DEED grammar.
Description check ✅ Passed The description directly explains the supersession, retained historical record, scope of the changes, and unresolved manifest dialect decision.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🛠️ Fix failing CI checks
  • Create stacked PR
  • Commit on current branch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

I hop past records marked old,
The grammar’s path is clear and told.
No keys or sections bloom,
The warning guards the room.
I nibble dates, then bound away.

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

sonarqubecloud Bot commented Sep 8, 2026

Copy link
Copy Markdown

@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown

⚠️ Agent ran but produced no code changes.

The CI failures may require manual intervention.

View agent analysis
I investigated all three failing checks and found none of them are fixable within scope — they are all pre-existing infrastructure failures unrelated to this PR's actual change.

**What the PR changes:** Only `RECORD-DIALECT-SPEC.adoc` (adds a `SUPERSEDED` status attribute and a WARNING admonition). No source, build, or CI files are touched.

**Check 1 — Idris2 Tests:** Fails because `curl -L https://github.com/idris-lang/Idris2/releases/download/v0.7.0/idris2-0.7.0-x86_64-linux.tar.gz` returns a 9-byte non-gzip response. I verified directly: that URL now 404s upstream. This is an external release-asset availability problem, not something fixable in repo source — the only fix would be updating the pinned Idris2 version/URL in `.github/workflows/idris2-tests.yml`, which is a CI workflow edit I'm not permitted to make.

**Checks 2 & 3 — ReScript Tests / Fuzzing:** Both fail at `deno install` with "No such file or directory" for `prototype/rescript`. I confirmed via `git log --all` that `prototype/rescript/{rescript.json,src,...}` has never existed in this repository's history — it's not something the PR deleted or broke, the entire ReScript prototype implementation the workflow expects was never committed. Fixing this would mean writing an entire ReScript parser prototype from scratch, which is far outside the scope of a docs-only spec-status PR and isn't a regression caused by this change.

Per the rules ("If the failure can only be fixed by changing repository infrastructure rather than the code under test, explain that and stop without making changes"), I'm stopping here without making any edits. These three checks were already broken on `origin/main` prior to this PR and are unrelated to the `RECORD-DIALECT-SPEC.adoc` change.

@hyperpolymath
hyperpolymath marked this pull request as ready for review September 8, 2026 18:37
@hyperpolymath
hyperpolymath merged commit 8c6ebca into main Sep 9, 2026
3 of 6 checks passed
@hyperpolymath
hyperpolymath deleted the chore/supersede-record-dialect branch September 9, 2026 08:55
hyperpolymath added a commit to hyperpolymath/deed-ecosystem that referenced this pull request Sep 9, 2026
…am pin (#50)

## The defect

This hub's upstream specification pointer has been **dangling since
2026-08-28**.

`spec/README.adoc` pinned:

```
Repository: hyperpolymath/standards
Path:       a2ml/SPEC.adoc  (typed core + markup surface, v1.1.0)
Pin:        891b1ed6164478616cb3375f328c6487ccb13f80
```

That pointer was **correct when written** — `a2ml/` did exist in
`standards` at
`891b1ed6`. It was removed by `24a12d6f` (2026-08-28), *"carve-out:
evict a2ml,
lol and the repo-guardian pair (#490 #494 #492) (#680)"*, which moved
the v1
material into the standalone `hyperpolymath/a2ml` repository. The
satellite
pointer was never updated.

This is not a cosmetic defect. While the pointer dangles, nothing
downstream can
check itself against a specification, and every consumer is free to
invent its
own idea of the format. Measured across all 35,884 legacy `.a2ml` files,
the
descriptile family had reached **0.2%** conformance to the actual
grammar — 10
correct against 5,424 TOML-shaped.

## What this changes

| File | Change |
|---|---|
| `spec/README.adoc` | Repointed at `deed/spec/DEED-GRAMMAR-SPEC.adoc`
in standards. The stale pin is **recorded, not deleted**, together with
why it went stale. |
| `README.adoc` | Banner: the format is DEED (`.deed`), s-expression,
one normative source. `Not Owned Here` pin repaired to match. |

It also records, for anyone landing here from the old pointer:

* `RECORD-DIALECT-SPEC.adoc` (in `hyperpolymath/a2ml`) is **superseded**
by the
  DEED grammar — stamped in hyperpolymath/a2ml#2.
* `MANIFEST-DIALECT-SPEC.adoc` (same repo) describes the `---`
frontmatter
surface of `0-AI-MANIFEST.a2ml` — 894 files, 100% conformant. Its
disposition
under DEED is an **open question for the owner** and it is deliberately
not
  stamped.

## Deliberately not done

* **The repository is not renamed.** `a2ml-ecosystem` → `deed-ecosystem`
is
estate task #77; the rename is the owner's trigger, not a side effect of
a
  docs commit.
* **The title is not changed.** It expands A2ML as "Attestation Markup
  Language"; `hyperpolymath/standards` expands it as "Annotated Markup
Language". Both are current text — 4 occurrences here, 6 there. The
banner
  records the discrepancy rather than picking a winner.

## Structural note for #77

The owner's requirement is that this hub be *"broadly equivalent to the
k9-ecosystem structure"*. Measured on `origin/main` of both:

* `a2ml-ecosystem`: **35** top-level entries
* `k9-ecosystem`: **57**
* Present in k9, absent here (**23**): `benchmarks`, `compose.yaml`,
  `Containerfile`, `dispatch-templates`, `eclexiaiser.toml`, `editors`,
  `examples`, `Justfile`, `k9-scan`, `k9-sign`, `lsp`, `MAINTAINERS`,
  `manifest.scm`, `mime`, `must`, `packaging`, `pandoc`, `receipt`,
  `release-k9.k9.ncl`, `sign.sh`, `site`, `test.sh`, `tools`

The 34 shared entries are the governance skeleton; the whole
*functional* layer
is missing. Notably `mime` (the media-type registration that #51/IANA
needs),
`must` (the contractile runner), and `receipt`. Recorded here as
evidence for
#77; not acted on.

## Verification

`asciidoctor -o /dev/null` renders both files clean.

## Ordering

Merge **after** hyperpolymath/standards#752, which creates the path this
now
points at.

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

https://claude.ai/code/session_01QNjWX2B4FffG7zqMBMui6v

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.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