Skip to content

feat(standards): add TRG + CRG per-language profile templates#229

Merged
hyperpolymath merged 1 commit into
mainfrom
trg-crg-profile-templates
May 28, 2026
Merged

feat(standards): add TRG + CRG per-language profile templates#229
hyperpolymath merged 1 commit into
mainfrom
trg-crg-profile-templates

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

Fills a gap in the existing TRG/CRG standards: both standards permit per-language profiles (TRG §1.1, CRG §4.6) that tighten the baseline, but neither shipped a profile template.

  • toolchain-readiness-grades/templates/TRG-PROFILE-TEMPLATE.adoc — mirrors the per-component breakdown from TRG §3 (F1-F7 front-end, M1-M5 middle-end, B1-B6 back-end, T1-T9 tool surface), each with its own grade column and evidence column
  • component-readiness-grades/templates/CRG-PROFILE-TEMPLATE.adoc — mirrors the released-component shape from CRG §3; one row per released artefact, plus a grade-clause rationale table per CRG §4

Both templates use the same outer structure as the ARG/FRG templates introduced in #226 (metadata header, axes recap, language-specific tightening, honest-gaps, path-to-next-grade, demotion risk, iteration history, review cycle, VeriSimDB attestation footer).

Follow-ups (separate PRs)

Per-language TRG + CRG profiles to land in:

  • affinescript
  • ephapax
  • my-lang
  • typed-wasm (compilation target treated as a language-shaped artefact — has grammar, AST, semantics, type system, runtime)

Test plan

  • CI passes
  • .adoc renders cleanly
  • No SPDX-header lint complaints

🤖 Generated with Claude Code

Fills a gap in the existing TRG/CRG standards: both standards permit
per-language profiles (TRG §1.1, CRG §4.6) that tighten the baseline,
but neither shipped a profile template. The new ARG + FRG standards
introduced in #226 ship templates as a matter of course; TRG and CRG
should match.

- toolchain-readiness-grades/templates/TRG-PROFILE-TEMPLATE.adoc
  Mirrors the per-component breakdown from TRG §3 (F1-F7 front-end,
  M1-M5 middle-end, B1-B6 back-end, T1-T9 tool surface), each with
  its own grade column and evidence column.
- component-readiness-grades/templates/CRG-PROFILE-TEMPLATE.adoc
  Mirrors the released-component shape from CRG §3; one row per
  released artefact, plus a grade-clause rationale table per CRG §4.

Both templates use the same outer structure as the ARG/FRG templates
(metadata header, axes recap, language-specific tightening section,
honest-gaps section, path-to-next-grade, demotion risk, iteration
history, review cycle, VeriSimDB attestation footer).

Per-language profiles to land separately in affinescript / ephapax /
my-lang / typed-wasm.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath enabled auto-merge (squash) May 28, 2026 10:54
@github-actions
Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 187 issues detected

Severity Count
🔴 Critical 65
🟠 High 32
🟡 Medium 90

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Issue in affinescript-verify.yml",
    "type": "unknown",
    "file": "affinescript-verify.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in boj-build.yml",
    "type": "unknown",
    "file": "boj-build.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "unknown",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "unknown",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in changelog-reusable.yml",
    "type": "unknown",
    "file": "changelog-reusable.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql-reusable.yml",
    "type": "unknown",
    "file": "codeql-reusable.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql.yml",
    "type": "unknown",
    "file": "codeql.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in deno-ci-reusable.yml",
    "type": "unknown",
    "file": "deno-ci-reusable.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in doc-format.yml",
    "type": "unknown",
    "file": "doc-format.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in echidna-verify.yml",
    "type": "unknown",
    "file": "echidna-verify.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath merged commit 68715a7 into main May 28, 2026
20 checks passed
@hyperpolymath hyperpolymath deleted the trg-crg-profile-templates branch May 28, 2026 11:27
hyperpolymath added a commit that referenced this pull request May 28, 2026
…#234)

- **README.adoc** Overview: add Language-Maturation Grades bullet
(ARG/FRG with TRG/CRG templates, pointer to nextgen-languages
dashboard).
- **ROADMAP.adoc**: bump Current State date 2026-04-04 → 2026-05-28; add
ARG/FRG Language-Maturation Framework row to Core Standards table
(Complete, PRs #229 + #232 landed 2026-05-28).

Doc-only. CHANGELOG.md auto-syncs via git-cliff workflow on conventional
commits — no manual update needed.

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

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
hyperpolymath added a commit to hyperpolymath/my-lang that referenced this pull request May 28, 2026
Completes the four-axis maturation grading for My, following the
ARG + FRG profiles landed in #77 and the templates introduced in
hyperpolymath/standards#229.

Grade:
- TRG-D — 14-crate Rust workspace covering F1-F4/F6/F7, M1/M2/M5,
  B1-B6, T1-T8 with the bulk of the compiler in crates/my-lang/
  (parser 2867 lines, checker 1792, interpreter 955, stdlib 1931).
  Worst-of: M5 canonical semantics document partial (grammar.ebnf
  + system-specs.md cover surface syntax only), B5 ABI/FFI not yet
  declared (Idris2 + Zig), T3 REPL not separately discoverable.
- CRG-D — `my` binary + 14 workspace crates; none yet published to
  crates.io. No per-crate v2.2 STRICT audits, no VeriSimDB
  attestation. The non-load-bearing crates/my-parser scaffold is
  marked separately as E (the real parser lives in
  crates/my-lang/src/parser.rs).

Both profiles cite spec/ARG-PROFILE.adoc (D-leaning-E) +
spec/FRG-PROFILE.adoc (X, with the honestly-retracted 2026-03-29
template ABI scaffolding) for the full axis chain.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
hyperpolymath added a commit to hyperpolymath/typed-wasm that referenced this pull request May 28, 2026
## Summary

Adds the four-axis maturation grading for typed-wasm, scored against the
framework introduced in hyperpolymath/standards#232 (ARG + FRG) and the
templates introduced in hyperpolymath/standards#229 (TRG + CRG profile
templates).

typed-wasm is treated as a **language-shaped compilation target**: it
has a defined grammar (binary + textual per `spec/grammar.ebnf`),
instruction AST, operational semantics (per
`spec/type-safety-levels-for-wasm.adoc`), a layered type system (L1-L17
per `LEVEL-STATUS.md`), and a runtime contract. "Adoption" means
*downstream languages targeting it as a compilation backend* (ephapax,
AffineScript).

## Grades

| Axis | Grade | Headline reason |
|------|-------|-----------------|
| ARG | **D** | README/EXPLAINME/QUICKSTART + 6 example `.twasm` + 3
consumer-feature surfaces. No public playground / error-code index /
educator curriculum. |
| TRG | **C** | Front-end + middle-end + back-end strong; T1-T5 N/A
(target, not compiler). 88/88 parser tests pass at v1.5. |
| FRG | **C** | 22 Idris2 files at `src/abi/` with QTT linearity +
dependent types, zero `believe_me`/`assert_total` in ABI files, A10
closure landed PR #79. Gated below B by absence of explicit L1-L10
preservation lemmas per `PROOF-NEEDS.md`. |
| CRG | **D** | `typed-wasm-verify` v0.1.0 (workspace-internal, not yet
on crates.io). Idris2 ABI surface at C (consumed as source). |

Cross-axis rule: ARG ≤ TRG holds (TRG = C ≥ ARG = D). typed-wasm becomes
the **strongest of the audit cohort on FRG** (versus ephapax-D,
AffineScript-E, my-lang-X) and ties ephapax at TRG-C.

## Honest gaps for grade promotion

- **B** for TRG/FRG requires per-level preservation lemmas for L1-L10
(currently structural only); L11/L12 still draft.
- **C** for ARG requires a published error-code index + web playground +
VeriSimDB attestation.
- **C** for CRG requires `audits/audit-typed-wasm-verify.md` + VeriSimDB
attestation.

## Test plan

- [ ] CI passes
- [ ] `.adoc` renders cleanly
- [ ] Grade-line regex from
`nextgen-languages/language-status-tracker.jl` matches each `*<GRADE>*`
correctly
- [ ] No SPDX-header lint complaints

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

Co-authored-by: Claude Opus 4.7 (1M context) <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