|
1 | | -;; SPDX-License-Identifier: PMPL-1.0-or-later |
2 | | -;; Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) |
3 | | -;; |
4 | | -;; AI Manifest — 007 Agent Meta-Language |
5 | | -;; Read this file FIRST before any other file in this directory. |
6 | | - |
7 | | -(ai-manifest |
8 | | - (version "2.0") |
9 | | - (project "007") |
10 | | - (type "programming-language") |
11 | | - (status "active-development") |
12 | | - (license "ALL-RIGHTS-RESERVED") |
13 | | - (last-major-session "2026-03-24") |
14 | | - |
15 | | - (session-resume |
16 | | - "This repo had a MAJOR session on 2026-03-24 and substantial follow-on work |
17 | | - through 2026-04. If resuming work: |
18 | | - 1. Read docs/DESIGN-RATIONALE.adoc for design rationale |
19 | | - 2. Read docs/AUDIT-SCORECARD-2026-03-29.md for the most recent authoritative |
20 | | - status snapshot (supersedes the 2026-03-27 scorecard) |
21 | | - 3. Read TOPOLOGY.md for the current component map |
22 | | - 4. Grammar is at v0.5.0 (see spec/grammar.ebnf and crates/oo7-core/src/grammar.pest) |
23 | | - 5. Type checker and evaluator are substantial; L1-L3, L6-L7, L8 are solid; |
24 | | - L4 dependent types check integer bounds only; L5 refinements only on ground |
25 | | - terms; L9 proof dispatch generates obligations but does not enforce them. |
26 | | - 6. Evaluator has a working agent runtime (spawn/send/receive/exchange) plus |
27 | | - five branch strategies and decision traces. Supervision restart is stubbed. |
28 | | - 7. Codegen: Elixir/OTP is the best-tested path (beam_roundtrip runs the output). |
29 | | - Cranelift/QBE/WASM/Zig exist with narrower coverage. |
30 | | - 8. Agent JSON API is complete (parse, validate, agent-moves, agent-card, reify). |
31 | | - 9. 752 #[test] annotations in the workspace as of 2026-04-10 (CHANGELOG is catching |
32 | | - up — see 0.6.0 entry). Clippy clean on oo7-core at 0.5.0; status post-0.5.0 TBD. |
33 | | - 10. Two paper drafts exist in docs/paper/. End-to-end re-reads of |
34 | | - tropical-token-types.tex found no visible math errors (prior 'KNOWN MATH ERRORS' |
35 | | - note in this manifest is retracted). Papers remain draft quality, not |
36 | | - submission-ready. |
37 | | - 11. Harvard, session, and proof claims must be stated no stronger than the |
38 | | - checked artifact supports. In particular: Harvard.idr models DataExpr with |
39 | | - DAdd only; the grammar allows + - * / %. The proof generalizes trivially |
40 | | - but the generalization is not yet written down. |
41 | | - 12. Use 007 dogfooding methodology (see memory/feedback_007_dogfood.md)") |
42 | | - |
43 | | - (classification |
44 | | - (dual-use #t) |
45 | | - (dual-use-notice "DUAL-USE-NOTICE.adoc") |
46 | | - (visibility "private") |
47 | | - (reason "Novel agent creation language with dual-use potential")) |
48 | | - |
49 | | - (description |
50 | | - "007 is a programming language for agents that make agents. |
51 | | - It enforces safety properties (no agent injection, no capability |
52 | | - escalation, no resource leaks) as core design goals. The current |
53 | | - repository is substantial but still under audit for proof, claim, |
54 | | - and release-grade alignment.") |
55 | | - |
56 | | - (canonical-locations |
57 | | - (spec "spec/LANGUAGE-SPEC.adoc") |
58 | | - (grammar "spec/grammar.ebnf") |
59 | | - (examples "examples/") |
60 | | - (dual-use-notice "DUAL-USE-NOTICE.adoc")) |
61 | | - |
62 | | - ;; M3 (reference type-checker oracle) has its own canonical |
63 | | - ;; documentation chain. Read these BEFORE any work on the M2/M3 |
64 | | - ;; surface, because the M3 design has been re-litigated within a |
65 | | - ;; single calendar day before — see audits/audit-m3-decision.md |
66 | | - ;; revision note. The dispatch architecture document was created |
67 | | - ;; specifically to prevent that recurrence. |
68 | | - (m3-canonical-pointers |
69 | | - (architecture "audits/audit-m3-dispatch-architecture.md") |
70 | | - (decision-log "audits/audit-m3-decision.md") |
71 | | - (machine-readable-routing ".machine_readable/m3-dispatch.a2ml") |
72 | | - (v0-implementation "crates/oo7-typechecker-oracle/") |
73 | | - (v0-scope-statement "crates/oo7-typechecker-oracle/src/lib.rs") |
74 | | - (read-protocol |
75 | | - "Before modifying ANY M3-related artefact (oracle code, prover dispatch, routing, decision log):" |
76 | | - "1. Read audits/audit-m3-dispatch-architecture.md (the canonical doc)." |
77 | | - "2. Read audits/audit-m3-decision.md (the why and the sub-decisions)." |
78 | | - "3. Check .machine_readable/m3-dispatch.a2ml for the current routing." |
79 | | - "4. Run `git status` and `git diff` on the M3 surface — parallel sessions are real." |
80 | | - "5. If state has moved, re-read before writing." |
81 | | - "Violating this protocol is what created the M3-DD-3 conflict on 2026-04-13.")) |
82 | | - |
83 | | - (critical-invariants |
84 | | - (rule "Data expressions CANNOT contain control flow — this is grammatical, not a lint rule") |
85 | | - (rule "Capabilities are NEVER inherited — always explicit subset") |
86 | | - (rule "Agent handles are LINEAR — must be consumed exactly once") |
87 | | - (rule "Content-addressed behaviours are IMMUTABLE — referenced by hash") |
88 | | - (rule "This project is PRIVATE — do not publish or share without authorisation") |
89 | | - (rule "This project is classified as DUAL-USE — handle accordingly")) |
90 | | - |
91 | | - (design-doc-conventions |
92 | | - (rule "Cite symbols, not line numbers, in design docs and audit notes. |
93 | | - Prefer `eval.rs :: ControlStmt::EnterDiscourse` or |
94 | | - `metainterpreter.rs :: MetaHook::before_step` over |
95 | | - `eval.rs:1850` / `metainterpreter.rs:1771`. Line numbers rot |
96 | | - the moment any `use` is inserted; symbol paths survive. |
97 | | - Applies to: docs/, audits/, crates/**/DESIGN-*.adoc, |
98 | | - crates/**/AUDIT-*.md. Indicative line numbers in inline code |
99 | | - comments are acceptable where the comment lives adjacent to |
100 | | - the cited site. This rule was added 2026-04-13 after the T6 |
101 | | - step-semantics thread flagged citation rot as bot-hostile.")) |
102 | | - |
103 | | - (design-influences |
104 | | - (language "JTV" (contribution "Harvard architecture, purity, reversibility")) |
105 | | - (language "Elixir" (contribution "Actor model, supervision, distribution")) |
106 | | - (language "Chapel" (contribution "Locale-aware parallelism")) |
107 | | - (language "Ephapax" (contribution "Linear types")) |
108 | | - (language "Pony" (contribution "Capability security")) |
109 | | - (language "Unison" (contribution "Content-addressable code")) |
110 | | - (language "Chor-lambda" (contribution "Choreographic programming")))) |
| 1 | +# STOP - CRITICAL READING REQUIRED |
| 2 | + |
| 3 | +**THIS FILE MUST BE READ FIRST BY ALL AI AGENTS** |
| 4 | + |
| 5 | +## WHAT IS THIS? |
| 6 | + |
| 7 | +This is the AI manifest for **007-lang**. It declares: |
| 8 | +- Canonical file locations (where things MUST be, and nowhere else) |
| 9 | +- Critical invariants (rules that must NEVER be violated) |
| 10 | +- Repository structure and organization |
| 11 | + |
| 12 | +## CANONICAL LOCATIONS (UNIVERSAL RULE) |
| 13 | + |
| 14 | +### Machine-Readable Metadata: `.machine_readable/6a2/` ONLY |
| 15 | + |
| 16 | +These 6 A2ML files MUST exist in `.machine_readable/6a2/` directory ONLY: |
| 17 | +1. **STATE.a2ml** - Project state, progress, blockers |
| 18 | +2. **META.a2ml** - Architecture decisions, governance |
| 19 | +3. **ECOSYSTEM.a2ml** - Position in ecosystem, relationships |
| 20 | +4. **AGENTIC.a2ml** - AI agent interaction patterns |
| 21 | +5. **NEUROSYM.a2ml** - Neurosymbolic integration config |
| 22 | +6. **PLAYBOOK.a2ml** - Operational runbook |
| 23 | + |
| 24 | +### Project-Specific Canonical Pointers |
| 25 | + |
| 26 | +- **Grammar:** `spec/grammar.ebnf` and `crates/oo7-core/src/grammar.pest` |
| 27 | +- **Language Spec:** `spec/LANGUAGE-SPEC.adoc` |
| 28 | +- **Design Rationale:** `docs/DESIGN-RATIONALE.adoc` |
| 29 | +- **M3 Architecture:** `audits/audit-m3-dispatch-architecture.md` |
| 30 | +- **Dual-Use Notice:** `DUAL-USE-NOTICE.adoc` |
| 31 | + |
| 32 | +## CORE INVARIANTS |
| 33 | + |
| 34 | +1. **Harvard Architecture** - Data expressions CANNOT contain control flow. This is a grammatical invariant, not a lint rule. |
| 35 | +2. **Linear Handles** - Agent handles are LINEAR. They must be consumed exactly once. |
| 36 | +3. **No Capability Inheritance** - Capabilities are NEVER inherited; they must be an explicit subset. |
| 37 | +4. **Immutable Behaviors** - Content-addressed behaviors are IMMUTABLE and referenced by hash. |
| 38 | +5. **Privacy & Dual-Use** - This project is PRIVATE and classified as DUAL-USE. Do not share or publish without authorization. |
| 39 | +6. **Author Attribution** - Always "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>". |
| 40 | + |
| 41 | +## REPOSITORY STRUCTURE |
| 42 | + |
| 43 | +``` |
| 44 | +007-lang/ |
| 45 | +├── 0-AI-MANIFEST.a2ml # THIS FILE (start here) |
| 46 | +├── README.adoc # Project overview |
| 47 | +├── crates/ # Rust workspace members |
| 48 | +├── proofs/ # Idris2/Agda/Rocq proofs |
| 49 | +├── .machine_readable/ |
| 50 | +│ ├── 6a2/ # A2ML files (6 files) |
| 51 | +│ └── contractiles/ # MUST, TRUST, DUST, ADJUST, BUST, INTEND |
| 52 | +└── .bot_directives/ # Bot instructions |
| 53 | +``` |
| 54 | + |
| 55 | +## LIFECYCLE HOOKS |
| 56 | + |
| 57 | +### on-enter (Session Start) |
| 58 | + |
| 59 | +1. Read and acknowledge this manifest. |
| 60 | +2. Read `.machine_readable/6a2/STATE.a2ml` for current status and blockers. |
| 61 | +3. State understanding of the **Harvard Architecture** invariant. |
| 62 | + |
| 63 | +### on-exit (Session End) |
| 64 | + |
| 65 | +1. Update `.machine_readable/6a2/STATE.a2ml` (v2 format). |
| 66 | +2. Record any new proof debt or clippy regressions. |
| 67 | + |
| 68 | +## Calling ECHIDNA via BoJ |
| 69 | + |
| 70 | +All ECHIDNA invocations go through the `echidna-llm-mcp` BoJ cartridge. |
| 71 | +**Never call ECHIDNA directly — always go through BoJ.** |
| 72 | + |
| 73 | +| Tool | Description | |
| 74 | +|------|-------------| |
| 75 | +| `echidna_list_provers` | Discover all 105 provers with tier/category/complexity | |
| 76 | +| `echidna_prove` | Invoke a prover on a file path (auto-detects from extension) | |
| 77 | +| `echidna_verify` | Verify inline proof content as a string | |
| 78 | +| `echidna_search` | Keyword search over the 66,674-proof corpus | |
| 79 | +| `echidna_suggest_tactics` | Advisory tactic suggestions for a goal | |
| 80 | +| `echidna_rank_provers` | Advisory prover ranking for a theorem | |
| 81 | + |
| 82 | +```json |
| 83 | +{ "tool": "echidna_list_provers", "args": {} } |
| 84 | +{ "tool": "echidna_prove", "args": { "file": "/path/to/proof.lean", "prover": "Lean" } } |
| 85 | +{ "tool": "echidna_suggest_tactics", "args": { "goal": "n + 0 = n", "prover": "Lean" } } |
| 86 | +``` |
| 87 | + |
| 88 | +Full protocol: `boj-server/cartridges/echidna-llm-mcp/docs/CALL-PROTOCOL.adoc` |
| 89 | + |
| 90 | +## ATTESTATION PROOF |
| 91 | + |
| 92 | +After reading this file, demonstrate understanding by stating: |
| 93 | + |
| 94 | +**"I have read the AI manifest. I understand the Harvard Architecture invariant and that A2ML files are located in `.machine_readable/6a2/` ONLY."** |
| 95 | + |
| 96 | +## META |
| 97 | + |
| 98 | +- **Format Version:** 1.0.0 |
| 99 | +- **Last Updated:** 2026-04-23 |
| 100 | +- **Maintained By:** Jonathan D.A. Jewell (hyperpolymath) |
| 101 | +- **License:** PMPL-1.0-or-later |
| 102 | +- **Classification:** DUAL-USE / PRIVATE |
0 commit comments