diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 2132109..65789e9 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -29,9 +29,9 @@ Copyright (c) Jonathan D.A. Jewell ### As Applicable -- [ ] `.machine_readable/STATE.a2ml` updated (if project state changed) -- [ ] `.machine_readable/ECOSYSTEM.a2ml` updated (if integrations changed) -- [ ] `.machine_readable/META.a2ml` updated (if architectural decisions changed) +- [ ] `.machine_readable/descriptiles/STATE.a2ml` updated (if project state changed) +- [ ] `.machine_readable/descriptiles/ECOSYSTEM.a2ml` updated (if integrations changed) +- [ ] `.machine_readable/descriptiles/META.a2ml` updated (if architectural decisions changed) - [ ] Documentation updated for user-facing changes - [ ] `TOPOLOGY.md` updated (if architecture changed) - [ ] `CHANGELOG` or release notes updated diff --git a/.machine_readable/ai/.clinerules b/.machine_readable/ai/.clinerules index eb95175..32565bc 100644 --- a/.machine_readable/ai/.clinerules +++ b/.machine_readable/ai/.clinerules @@ -2,7 +2,7 @@ # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # Authoritative source: docs/AI-CONVENTIONS.md -# STARTUP: Read 0-AI-MANIFEST.a2ml first, then .machine_readable/STATE.a2ml. +# STARTUP: Read 0-AI-MANIFEST.a2ml first, then .machine_readable/descriptiles/STATE.a2ml. # LICENSE # All original code: MPL-2.0. diff --git a/.machine_readable/ai/.windsurfrules b/.machine_readable/ai/.windsurfrules index eb95175..32565bc 100644 --- a/.machine_readable/ai/.windsurfrules +++ b/.machine_readable/ai/.windsurfrules @@ -2,7 +2,7 @@ # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # Authoritative source: docs/AI-CONVENTIONS.md -# STARTUP: Read 0-AI-MANIFEST.a2ml first, then .machine_readable/STATE.a2ml. +# STARTUP: Read 0-AI-MANIFEST.a2ml first, then .machine_readable/descriptiles/STATE.a2ml. # LICENSE # All original code: MPL-2.0. diff --git a/.machine_readable/anchors/README.adoc b/.machine_readable/anchors/README.adoc index 9493b09..13cae63 100644 --- a/.machine_readable/anchors/README.adoc +++ b/.machine_readable/anchors/README.adoc @@ -1,3 +1,25 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) Jonathan D.A. Jewell -= anchors Registry +# A2ML Anchor Directory + +This directory contains ANCHOR.a2ml files for project recalibration and scope intervention. + +## Files + +- `ANCHOR.a2ml` - Project recalibration, scope intervention, canonical authority + +## Multiple Versions + +Unlike other A2ML files, multiple versions of ANCHOR.a2ml with different dates may exist. +Each version represents a specific recalibration point in the project history. + +## Standards Compliance + +These files follow the ANCHOR.a2ml specification from: +https://github.com/hyperpolymath/standards/tree/main/anchor-a2ml + +## See Also + +- [A2ML Repository Template](https://github.com/hyperpolymath/standards/blob/main/A2ML-REPO-TEMPLATE.adoc) +- [Anchor A2ML Spec](https://github.com/hyperpolymath/standards/tree/main/anchor-a2ml) + diff --git a/affinescript/.machine_readable/6a2/META.a2ml b/affinescript/.machine_readable/6a2/META.a2ml index 2952ea3..efecf35 100644 --- a/affinescript/.machine_readable/6a2/META.a2ml +++ b/affinescript/.machine_readable/6a2/META.a2ml @@ -483,10 +483,10 @@ consequences = """ form across format passes. """ references = [ - ".machine_readable/6a2/STATE.a2ml [track-a-manhattan]", - ".machine_readable/6a2/STATE.a2ml [[open-bug]] BUG-001", - ".machine_readable/6a2/STATE.a2ml [[open-bug]] BUG-002", - ".machine_readable/6a2/META.a2ml [[adr]] ADR-002 (scaled Let rule)", + ".machine_readable/descriptiles/STATE.a2ml [track-a-manhattan]", + ".machine_readable/descriptiles/STATE.a2ml [[open-bug]] BUG-001", + ".machine_readable/descriptiles/STATE.a2ml [[open-bug]] BUG-002", + ".machine_readable/descriptiles/META.a2ml [[adr]] ADR-002 (scaled Let rule)", "lib/ast.ml ExprLet (lines 105-111), StmtLet (lines 170-176)", "lib/lexer.ml (ZERO/ONE never emitted)", "lib/parser.mly quantity rule (lines 180-183)", diff --git a/affinescript/.machine_readable/6a2/PLAYBOOK.a2ml b/affinescript/.machine_readable/6a2/PLAYBOOK.a2ml index 5003fd0..b9215be 100644 --- a/affinescript/.machine_readable/6a2/PLAYBOOK.a2ml +++ b/affinescript/.machine_readable/6a2/PLAYBOOK.a2ml @@ -11,7 +11,7 @@ last-updated = "2026-04-11" # target = "container" # container | binary | library | wasm [incident-response] -# 1. Check .machine_readable/STATE.a2ml for current status +# 1. Check .machine_readable/descriptiles/STATE.a2ml for current status # 2. Review recent commits and CI results # 3. Run `just validate` to check compliance # 4. Run `just security` to audit for vulnerabilities diff --git a/affinescript/.machine_readable/anchors/ANCHOR.a2ml b/affinescript/.machine_readable/anchors/ANCHOR.a2ml index c45b6d6..66ff739 100644 --- a/affinescript/.machine_readable/anchors/ANCHOR.a2ml +++ b/affinescript/.machine_readable/anchors/ANCHOR.a2ml @@ -61,7 +61,7 @@ thesis: authorities: scope-statement: - - ".machine_readable/6a2/META.a2ml (ADRs)" + - ".machine_readable/descriptiles/META.a2ml (ADRs)" - "~/Desktop/Frontier_Programming_Practices_AffineScript/AI.a2ml (v2.0)" human-guide: diff --git a/affinescript/README.adoc b/affinescript/README.adoc index 16eac26..dbd17ff 100644 --- a/affinescript/README.adoc +++ b/affinescript/README.adoc @@ -15,7 +15,7 @@ image:https://img.shields.io/badge/Powered%20By-Gossamer%20%26%20Burble-orange.s [NOTE] ==== -*Honest status sync (2026-04-12):* Affine/QTT and borrow checking are wired into the CLI pipeline (`check`, `compile`, `eval`) and gate user programs today. Specifically, `Typecheck.check_program`, `Borrow.check_program`, and `Quantity.check_program_quantities` are all invoked from `bin/main.ml`. Dependent/refinement types remain parse-first (predicates do not reduce yet), and codegen backends still have feature gaps (notably effect-handler lowering in Wasm backends). See `.machine_readable/6a2/STATE.a2ml` `[features]` for the authoritative per-feature status. +*Honest status sync (2026-04-12):* Affine/QTT and borrow checking are wired into the CLI pipeline (`check`, `compile`, `eval`) and gate user programs today. Specifically, `Typecheck.check_program`, `Borrow.check_program`, and `Quantity.check_program_quantities` are all invoked from `bin/main.ml`. Dependent/refinement types remain parse-first (predicates do not reduce yet), and codegen backends still have feature gaps (notably effect-handler lowering in Wasm backends). See `.machine_readable/descriptiles/STATE.a2ml` `[features]` for the authoritative per-feature status. ==== AffineScript is the only language that combines affine types, quantitative type theory, row polymorphism, and algebraic effects in a single practical systems language. This means you can write game code where the compiler *proves* your protocol states, resource lifecycles, and effect boundaries are correct -- with syntax that feels like a modern game scripting language, not a theorem prover. @@ -325,7 +325,7 @@ _build/default/bin/main.exe check --json test/e2e/fixtures/affine_basic.affine == Project Status -**Status sync (2026-04-12):** This section is aligned with `.machine_readable/6a2/STATE.a2ml`. +**Status sync (2026-04-12):** This section is aligned with `.machine_readable/descriptiles/STATE.a2ml`. Core affine/QTT and borrow gates are live in the standard CLI paths. Dependent/refinement types are still parse-only. Effects run in the interpreter; Wasm backend support is still partial for handlers/resume semantics. **Bridge layer developers: use the typed channel workaround documented in `docs/WASM-EFFECT-HANDLER-WORKAROUND.md`.** NOTE: The standard file extension for AffineScript source is `.affine`. @@ -393,7 +393,7 @@ AffineScript is in active development with active weekly commits and a passing ` === Next Priorities (Post-Sync) The immediate priorities are execution and drift control: -* Keep `README`, `ROADMAP`, `COMPILER-CAPABILITIES`, and `.machine_readable/6a2/STATE.a2ml` synchronized on each feature milestone. +* Keep `README`, `ROADMAP`, `COMPILER-CAPABILITIES`, and `.machine_readable/descriptiles/STATE.a2ml` synchronized on each feature milestone. * Finish parser/README/example syntax convergence around effects and quantity annotations. * Close remaining backend gaps for effect handler lowering so interpreter and Wasm behavior converge. * Keep `examples/` parse-checkable in CI to prevent documentation drift from reappearing. diff --git a/affinescript/ROADMAP.adoc b/affinescript/ROADMAP.adoc index 3b7e494..3cca81e 100644 --- a/affinescript/ROADMAP.adoc +++ b/affinescript/ROADMAP.adoc @@ -12,7 +12,7 @@ Historical development plan from the January 2026 baseline. ==== Status sync note (2026-04-12): This file contains historical planning text and is not the authoritative source for current feature readiness. Use -`.machine_readable/6a2/STATE.a2ml` for live status (including affine/QTT +`.machine_readable/descriptiles/STATE.a2ml` for live status (including affine/QTT wiring, borrow-checker gating, effect handling status, row polymorphism, and dependent/refinement progress). ==== diff --git a/affinescript/docs/BRIDGE-DECISIONS.adoc b/affinescript/docs/BRIDGE-DECISIONS.adoc index 21ff475..b945201 100644 --- a/affinescript/docs/BRIDGE-DECISIONS.adoc +++ b/affinescript/docs/BRIDGE-DECISIONS.adoc @@ -50,7 +50,7 @@ Dirty-rects contain coordinates and version numbers only - Frontend accesses pixel data via typed region reference (L12 freshness) - Full implementation: docs/WASM-EFFECT-HANDLER-WORKAROUND.md -*Migration Path*: - Monitor Ephapax `+.machine_readable/6a2/STATE.a2ml+` +*Migration Path*: - Monitor Ephapax `+.machine_readable/descriptiles/STATE.a2ml+` - Replace channels with effect handlers when lowering is complete - Traffic class separation preserved regardless of transport mechanism diff --git a/affinescript/docs/EFFECTS-IMPLEMENTATION.adoc b/affinescript/docs/EFFECTS-IMPLEMENTATION.adoc index 33faa22..f2ea9e5 100644 --- a/affinescript/docs/EFFECTS-IMPLEMENTATION.adoc +++ b/affinescript/docs/EFFECTS-IMPLEMENTATION.adoc @@ -3,7 +3,7 @@ === Status Sync (2026-04-12) This document tracks the implementation status of algebraic effects in -AffineScript and is aligned with `+.machine_readable/6a2/STATE.a2ml+`. +AffineScript and is aligned with `+.machine_readable/descriptiles/STATE.a2ml+`. === Syntax (Current Parser Form) diff --git a/affinescript/docs/WASM-EFFECT-HANDLER-WORKAROUND.adoc b/affinescript/docs/WASM-EFFECT-HANDLER-WORKAROUND.adoc index b60ce4d..0aac788 100644 --- a/affinescript/docs/WASM-EFFECT-HANDLER-WORKAROUND.adoc +++ b/affinescript/docs/WASM-EFFECT-HANDLER-WORKAROUND.adoc @@ -387,7 +387,7 @@ until effect handler lowering is complete. === Migration Trigger *When to migrate*: Only when Ephapax -`+.machine_readable/6a2/STATE.a2ml+` confirms effect-handler lowering in +`+.machine_readable/descriptiles/STATE.a2ml+` confirms effect-handler lowering in WASM targets is complete. *What changes*: Transport mechanism only (channels → effect handlers). diff --git a/affinescript/docs/history/TYPECHECKER-COMPLETION-2026-01-23.adoc b/affinescript/docs/history/TYPECHECKER-COMPLETION-2026-01-23.adoc index 37c8301..a38474a 100644 --- a/affinescript/docs/history/TYPECHECKER-COMPLETION-2026-01-23.adoc +++ b/affinescript/docs/history/TYPECHECKER-COMPLETION-2026-01-23.adoc @@ -1,6 +1,6 @@ ____ Historical snapshot from 2026-01-23. Superseded by -.machine_readable/6a2/STATE.a2ml. Retained for audit trail only. +.machine_readable/descriptiles/STATE.a2ml. Retained for audit trail only. ____ == Type Checker Completion Report diff --git a/affinescript/docs/spec.adoc b/affinescript/docs/spec.adoc index 78c408b..d756621 100644 --- a/affinescript/docs/spec.adoc +++ b/affinescript/docs/spec.adoc @@ -12,7 +12,7 @@ project. *The authoritative current scope lives in:* - `+.machine_readable/anchors/ANCHOR.a2ml+` (canonical identity + thesis) -- `+.machine_readable/6a2/META.a2ml+` (architecture decision records) - +- `+.machine_readable/descriptiles/META.a2ml+` (architecture decision records) - `+~/Desktop/Frontier_Programming_Practices_AffineScript/AI.a2ml+` (v2.0) - `+~/Desktop/Frontier_Programming_Practices_AffineScript/Human_Programming_Guide.adoc+` diff --git a/affinescript/docs/specs/SETTLED-DECISIONS.adoc b/affinescript/docs/specs/SETTLED-DECISIONS.adoc index 64c13f8..d1f98fa 100644 --- a/affinescript/docs/specs/SETTLED-DECISIONS.adoc +++ b/affinescript/docs/specs/SETTLED-DECISIONS.adoc @@ -8,7 +8,7 @@ Jonathan D.A. Jewell This document records design decisions that are fully settled. Each entry gives the decision, the reasoning, and a pointer to the full ADR in -`.machine_readable/6a2/META.a2ml`. +`.machine_readable/descriptiles/META.a2ml`. These are not open questions. Do not reopen them without amending the ADR. diff --git a/docs/RSR_OUTLINE.adoc b/docs/RSR_OUTLINE.adoc index f6e9a9a..b2b1603 100644 --- a/docs/RSR_OUTLINE.adoc +++ b/docs/RSR_OUTLINE.adoc @@ -217,7 +217,7 @@ project/ * `Justfile` * `README.adoc` * `LICENSE` (MPL-2.0) -* `.machine_readable/STATE.a2ml` +* `.machine_readable/descriptiles/STATE.a2ml` * `.well-known/security.txt` * `.well-known/ai.txt` * `.well-known/humans.txt` diff --git a/docs/practice/AI-CONVENTIONS.adoc b/docs/practice/AI-CONVENTIONS.adoc index a883654..ab8d658 100644 --- a/docs/practice/AI-CONVENTIONS.adoc +++ b/docs/practice/AI-CONVENTIONS.adoc @@ -12,12 +12,12 @@ Per-tool config files (.cursorrules, .clinerules, etc.) reference this document. ## Session Startup 1. Read `0-AI-MANIFEST.a2ml` FIRST (mandatory gatekeeper). -2. Read `.machine_readable/STATE.a2ml` for current status and blockers. +2. Read `.machine_readable/descriptiles/STATE.a2ml` for current status and blockers. 3. Read `.machine_readable/anchors/ANCHOR.a2ml` for canonical authority boundaries. 4. Read `.machine_readable/policies/MAINTENANCE-AXES.a2ml` for maintenance/audit sequencing. 5. Read `.machine_readable/policies/MAINTENANCE-CHECKLIST.a2ml` for baseline controls. 6. Read `.machine_readable/policies/SOFTWARE-DEVELOPMENT-APPROACH.a2ml` for execution order. -7. Read `.machine_readable/AGENTIC.a2ml` for agent constraints. +7. Read `.machine_readable/descriptiles/AGENTIC.a2ml` for agent constraints. ## License @@ -79,8 +79,8 @@ Use `just` (Justfile) for all build, test, lint, and format tasks. ## References - `0-AI-MANIFEST.a2ml` -- universal AI entry point -- `.machine_readable/AGENTIC.a2ml` -- agent permissions and constraints -- `.machine_readable/STATE.a2ml` -- current project state +- `.machine_readable/descriptiles/AGENTIC.a2ml` -- agent permissions and constraints +- `.machine_readable/descriptiles/STATE.a2ml` -- current project state - `.machine_readable/anchors/ANCHOR.a2ml` -- canonical authority and policy boundary - `.machine_readable/policies/MAINTENANCE-AXES.a2ml` -- canonical axis sequencing and audit requirements - `.machine_readable/policies/MAINTENANCE-CHECKLIST.a2ml` -- baseline maintenance checklist policy