Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
03ee56e
v4: structural scaffold + 15 XL task plan
briansrls May 15, 2026
526111b
v4: add pipeline orchestrator + ratify substrate decisions from PR re…
briansrls May 15, 2026
43e08db
v4: add Anchor convention + extdeps/process + extdeps/file_system
briansrls May 15, 2026
8c3f800
v4: convert to v2-syntax + add bootstrap viability CI gate
briansrls May 15, 2026
3f663c9
docs: migrate r3-close-interrogation.md → v4-close-interrogation.md +…
briansrls May 15, 2026
7040740
v4: zero-deferrals policy — operator directive 2026-05-15
briansrls May 15, 2026
140594e
v4: operator ratifications 2026-05-15 — IN/OUT decisions for §13-§17
briansrls May 15, 2026
951688d
v4: C7 cross-algorithm complexity IN — add synthesis lens + report ca…
briansrls May 15, 2026
21145f6
v4: §1-§12 R4-deferred ratifications — A through E IN
briansrls May 15, 2026
11a59a7
v4: authority-doc supersession declarations + T-15 falsification sketch
briansrls May 15, 2026
93cc603
v4: testgen lens + manual-bootstrap path (Phase 1.5; tier × layer cro…
briansrls May 15, 2026
ae29177
v4: structurally enforce THESIS concept unifications via Unifies: hea…
briansrls May 15, 2026
f083f11
v4: algebra-enforcer-primary framing + task-count consistency fix
briansrls May 15, 2026
dbda3b1
v4: workflow/bootstrap.dag — "off Rust, can't regress" made structural
briansrls May 15, 2026
d6d4ffe
v4: address 3 BLOCKING review findings
briansrls May 15, 2026
c2949dd
v4: close 4 scaffold gaps (apply_lens / CI-as-data / affected-set / i…
briansrls May 15, 2026
cfb3520
v4: address 4 BLOCKING (08:45 review pass)
briansrls May 15, 2026
961392e
v4: dissolve spurious NodeFragment alias in Diagnostic.correction
briansrls May 15, 2026
3a7ed8f
v4: address 2 BLOCKING (09:44 review) + close same-class enum proacti…
briansrls May 15, 2026
acad527
v4: dissolve annotation premise — properties are lens-derived, not tags
briansrls May 15, 2026
b368ca7
v4: encode held testgen/verification/coordination per operator forks
briansrls May 15, 2026
afe3a18
v4: sweep TASKS.md for coordination carrier-shape + annotation drift
briansrls May 15, 2026
a131cca
v4: encode A1 ratification — the recursion contract in node.dag
briansrls May 15, 2026
e4fb5c2
v4: encode U1 + no-engine discipline in algebra.dag
briansrls May 15, 2026
c68c857
v4: encode C2 reframe — synthesis is relation→lower-bound, not a library
briansrls May 15, 2026
aa4c9cf
v4: encode A2 ratification — termination is Tier-1 in node.dag
briansrls May 15, 2026
c5d04e6
v4: encode reframed A3 — structure surfaces, culture enforces
briansrls May 15, 2026
b4e8a7c
v4: add CULTURE.md — the working agreement + reading map for workers
briansrls May 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ jobs:
outputs:
v2: ${{ steps.detect.outputs.v2 }}
v3: ${{ steps.detect.outputs.v3 }}
v4: ${{ steps.detect.outputs.v4 }}
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -174,6 +175,46 @@ jobs:
run: |
set -euo pipefail
cargo test -p v2-compiler-tests --release bootstrap_fixed_point -- --ignored --exact
# v4 bootstrap viability — verifies v2's compiled binary can still parse
# every v4 .dag file. v4 stage0 must stay in v2-syntax-compatible subset
# (per src/v4/STRUCTURE.md "Bootstrap chain") until v4 self-compiles.
# This gate catches any v4 change that introduces syntax v2 can't parse.
v4:
if: github.event.pull_request.draft != true && needs.affected.outputs.v4 == 'true'
needs: [affected]
runs-on: ${{ vars.CI_RUNNER || 'ubuntu-latest' }}
timeout-minutes: 15
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1.16.0
with:
cache: false
rustflags: ''
- name: Cache Cargo (v4 — shares with v2 since we build v2 binary)
uses: actions/cache@v4
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: cargo-v2-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}-${{ hashFiles('src/v2/**') }}
restore-keys: |
cargo-v2-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}-
cargo-v2-${{ runner.os }}-
- name: Build v2 compiler (bootstrap stage minus one)
run: cargo build -p v2-compiler --release
- name: v2 → v4 bootstrap viability (parse all v4 .dag files via v2)
run: |
set -euo pipefail
rm -rf /tmp/v4-stage1
mkdir -p /tmp/v4-stage1
target/release/v2-compiler compile --source-root src/v4 --output-dir /tmp/v4-stage1 --target dag
echo "Bootstrap viability OK — v2 indexed and resolved all v4 modules."
# v3 — FROZEN 2026-05-15 pending v4 program. Runs only when src/v3/ or dsl/
# is affected (or on push-to-main for trunk verification). v3 is no longer
# the active compiler; v4 program supersedes it (see PR #3147).
Expand Down
2 changes: 2 additions & 0 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

Single source of truth for project status, active work, and deferred items. Long-form receipts and historical narratives now live under `docs/history/` and `docs/db-history/` so this file can stay operational.

> **v4 supersession (2026-05-15).** The active development phase is **v4** — see [`src/v4/STRUCTURE.md`](src/v4/STRUCTURE.md), [`src/v4/TASKS.md`](src/v4/TASKS.md), [`docs/v4-close-interrogation.md`](docs/v4-close-interrogation.md). v4 combines R3 + R4 into one ship per zero-deferrals discipline; the R1 program below is being superseded by v4's XL task plan. v3 is frozen (CI gated to `src/v3/`-affected only). This roadmap doc retains R1 lane structure as historical context until v4-driven work fully replaces it; lane-by-lane translation lands incrementally.

> Design spec: [docs/v3-spec.md](docs/v3-spec.md)
> Validation: [docs/v3-validation-experiments.md](docs/v3-validation-experiments.md)
> Lineage: [docs/design-lineage.md](docs/design-lineage.md)
Expand Down
2 changes: 2 additions & 0 deletions THESIS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

This is the parent document. Everything else — ROADMAP, INVARIANTS, MODELING, architecture, and design docs — serves this thesis.

> **v4 supersession (2026-05-15).** The active program is **v4** in [`src/v4/`](src/v4/) — substrate scaffold + R3+R4 combined ship per [`docs/v4-close-interrogation.md`](docs/v4-close-interrogation.md). Every thesis claim below applies to v4; v3 references in the §Self-hosting four facets section (line ~232+) describe the v2→v3 transition that v4 supersedes (v4 = "v2's residual discipline + v3's modeling depth + recursive-flex from day 1"). v4's substrate is the operational instantiation of every claim in this thesis; v3 is frozen pending v4 ship. See [`src/v4/STRUCTURE.md`](src/v4/STRUCTURE.md) for the v4 file tree and [`docs/v4-close-interrogation.md`](docs/v4-close-interrogation.md) §"v4 applicability mapping" for v3→v4 path translation.

## How this doc is organized

Read this file for the thesis itself and the complete claims list. Extended argumentation now lives under `docs/thesis/`, while `ROADMAP.md`, `INVARIANTS.md`, and `MODELING.md` stay as the live operational companions.
Expand Down
2 changes: 2 additions & 0 deletions docs/design-pure-bootstrap-zero.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

**Status:** `LIVE` (promoted 2026-04-25 via cascade promotion [PR #782](https://github.com/gunb-ai/gunbc/pull/782)). Supersedes the ≤5-floor framing in [`docs/design-pure-bootstrap.md`](design-pure-bootstrap.md) (now marked SUPERSEDED with explicit retraction) and the 2-3 principled-floor framing introduced via [PR #756](https://github.com/gunb-ai/gunbc/pull/756) (also retracted). This doc is the live authority on the Pure Bootstrap to Zero program.

> **v4 supersession (2026-05-15).** The 0-floor target articulated in this doc now applies to **v4** ([`src/v4/`](../src/v4/)) as the operational instantiation. v2 binary serves as v4's stage minus one (per [`src/v4/STRUCTURE.md`](../src/v4/STRUCTURE.md) "Bootstrap chain"); v4's compiler emits its own Rust trampoline (`bin/main.dag`) to satisfy 0-floor without needing the runtime-resolution choices (shipped binary / runtime crate / rustc-macro) described below. v3 references throughout this doc describe the v2→v3 transition that v4 supersedes; v3 is frozen pending v4 ship.

**Promotion evidence chain (cited in cascade promotion PR body):**
- D1 audit: PRs #769 + #771 + #775 + #777 + #779 (audit doc with substrate-generation already proven; 23 generated files + 24 REGEN_OUTPUTS entries; 38-type substrate.dag coverage survey)
- D2 PB-1 brief amendment: PR #770 (non-goals revised under 0-floor)
Expand Down
4 changes: 2 additions & 2 deletions docs/thesis-claim-coverage.md
Original file line number Diff line number Diff line change
Expand Up @@ -197,8 +197,8 @@ This doc is that audit. Every thesis claim in `THESIS.md §"Thesis claims — co

| # | Claim | Disposition | Evidence | Status |
|---|---|---|---|---|
| 64 | (R1) Suboptimal-complexity contract violation: function annotated bound errors at compile | R1-closed | T-Demo `impossible_bug_class_suite_r1` includes suboptimal-complexity demo | partial (CostBounded receipt is runner-fail) |
| 65 | (R1) Idempotency-contract violation: marked `@idempotent` function structure errors | R1-closed | T-Demo impossible-bugs suite (`compose_effects` + `AppendEffect` violation) | green |
| 64 | (R1) Suboptimal-complexity contract violation: lens-derived complexity exceeds the structural cost bound (consumer/inhabitance) → compile error (no annotation) | R1-closed | T-Demo `impossible_bug_class_suite_r1` includes suboptimal-complexity demo | partial (CostBounded receipt is runner-fail) |
| 65 | (R1) Idempotency-contract violation: structurally non-idempotent operation in an idempotence-required (algebra-inhabitance) position → compile error (no annotation) | R1-closed | T-Demo impossible-bugs suite (`compose_effects` + `AppendEffect` violation) | green |
| 66 | (R1) Transport/type-drift: client/server cannot hold different types for same field | R1-closed | T-Demo impossible-bugs suite (`TypeMismatch` multi-target) | green |
| 67 | (R2+) Nested-optional flatten: `Option<Option<T>>` patterns error at compile | R2-gated | `docs/r2-structure.md` Goal 4; gated on cardinality refinement; closed by PR #890 / `6562081e` | green |
| 68 | (R2+) Unenumerated effects: operations intrinsically read/write via type signature | R2-gated | `docs/r2-structure.md` Goal 4; `docs/briefs/t-impossiblebugs-unenumerated-effects-design.md` + `docs/briefs/r2-impossible-bugs-unenumerated-effects-worker.md` closed-system structural derivation path | in-flight (implementation worker dispatchable; consumer/lens PR active) |
Expand Down
Loading
Loading