From 074047fed94a54f9f305e35f541b7875a01333c8 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Fri, 12 Jun 2026 10:38:19 -0400 Subject: [PATCH] conductor(track): Update intent_dsl_survey bookkeeping to v1.2 (213e4994) Three bookkeeping files updated to reflect the v1.2 deliverable: - metadata.json: deliverable now points at report_v1.2.md; added deliverable_v1_1, final_commit=213e4994 - tracks.md: track #23 heading shows COMPLETE: 213e4994; status line lists v1.0 -> v1.1 -> v1.2 history with the 3 v1.2 changes (rename, postfix heuristic, nagent fix) - state.toml: added version='v1.2'; deliverable_summary updated with v1_2, v1_1, v1_0 fields and v1_2_changes list --- conductor/tracks.md | 6 +++--- .../tracks/intent_dsl_survey_20260612/metadata.json | 5 +++-- conductor/tracks/intent_dsl_survey_20260612/state.toml | 10 +++++++--- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/conductor/tracks.md b/conductor/tracks.md index 218d6533..be5bf90e 100644 --- a/conductor/tracks.md +++ b/conductor/tracks.md @@ -492,10 +492,10 @@ Lightweight chronology; full spec/plan/state per track is in the linked folder. #### Track: RAG Phase 4 Stress Test Fix `[x] — fixed 16412ad5` *Status: 2026-06-06 — Surfaced during post-v2 verification. Resolved: real bug, NOT a test flake. Root cause: ChromaDB collection dimension mismatch across test runs. The persistent on-disk collection (`tests/artifacts/live_gui_workspace/.slop_cache/chroma_test_stress/`) was created by a previous run with Gemini embeddings (3072-dim); the current run uses local SentenceTransformers (384-dim). `index_file()` upserts silently corrupt the collection, then `search()` fails with `Collection expecting embedding with dimension of 3072, got 384` and the AI request never reaches 'done' status, timing out the 50*0.5s = 25s poll loop. Fix: `RAGEngine._init_vector_store` now calls `_validate_collection_dim` which inspects the first existing vector's dim, compares to the current provider's output, and recreates the collection on mismatch (with a stderr warning). Regression tests added: `test_rag_collection_dim_mismatch_recreates_collection` and `test_rag_collection_dim_match_preserves_collection` in `tests/test_rag_engine.py`. This also fixes a real user-facing bug: switching embedding providers in the GUI previously caused silent corruption. Commit 16412ad5.* -#### Track: Intent-Based Scripting Languages Survey `[COMPLETE: c7e92896]` -*Link: [./tracks/intent_dsl_survey_20260612/](./tracks/intent_dsl_survey_20260612/), Spec: [./tracks/intent_dsl_survey_20260612/spec.md](./tracks/intent_dsl_survey_20260612/spec.md), Plan: [./tracks/intent_dsl_survey_20260612/plan.md](./tracks/intent_dsl_survey_20260612/plan.md), Report: [./tracks/intent_dsl_survey_20260612/report_v1.1.md](./tracks/intent_dsl_survey_20260612/report_v1.1.md), Review: [./tracks/intent_dsl_survey_20260612/reportreview.md](./tracks/intent_dsl_survey_20260612/reportreview.md)* +#### Track: Intent-Based Scripting Languages Survey `[COMPLETE: 213e4994]` +*Link: [./tracks/intent_dsl_survey_20260612/](./tracks/intent_dsl_survey_20260612/), Spec: [./tracks/intent_dsl_survey_20260612/spec.md](./tracks/intent_dsl_survey_20260612/spec.md), Plan: [./tracks/intent_dsl_survey_20260612/plan.md](./tracks/intent_dsl_survey_20260612/plan.md), Report: [./tracks/intent_dsl_survey_20260612/report_v1.2.md](./tracks/intent_dsl_survey_20260612/report_v1.2.md), v1.1: [./tracks/intent_dsl_survey_20260612/report_v1.1.md](./tracks/intent_dsl_survey_20260612/report_v1.1.md), v1.0: [./tracks/intent_dsl_survey_20260612/report.md](./tracks/intent_dsl_survey_20260612/report.md), Review: [./tracks/intent_dsl_survey_20260612/reportreview.md](./tracks/intent_dsl_survey_20260612/reportreview.md)* -*Status: 2026-06-12 — COMPLETE. Research-only track (non-impl). Deliverable: `report_v1.1.md` (1301 lines, 168KB, 7 sections + 9-subsection expanded Appendix). 4-tier vocab with 42 verbs (T1 math 12, T2 pipeline 12, T3 shell 10, T4 AI-fuzzing 8); 8 prior-art clusters (O'Donnell as philosophical anchor); 14-primitive grammar from user's math pseudocode; 4 hardware anchor claims; 10 AI-agent properties tying to existing project architecture; 8 open questions for the follow-up interpreter prototype. v1.0 (418 lines) → v1.1 (1301 lines) included: XML/JSON rejection citation fix, OCR-restored Lottes quote, softened Wasm streaming-parse inference, expanded Appendix A.1-A.9 (deep-dives, EBNF grammar, full vocab reference, register allocation, implementation notes, glossary, bibliography). Time-sensitive goal met: completed before nagent v2.2 hard boundary. Will be consumed by nagent v2.2 (Future-Track Candidate #4) and the future interpreter prototype (follow-up B track, separate).* +*Status: 2026-06-12 — COMPLETE. Research-only track (non-impl). Final deliverable: `report_v1.2.md` (1301 lines, 168KB, 7 sections + 9-subsection expanded Appendix). 4-tier vocab with 42 verbs (T1 math 12, T2 pipeline 12, T3 shell 10, T4 AI-fuzzing 8); 8 prior-art clusters (O'Donnell as philosophical anchor); 14-primitive grammar from user's math pseudocode; 4 hardware anchor claims; 10 AI-agent properties tying to existing project architecture; 8 open questions for the follow-up interpreter prototype. Version history: v1.0 (418 lines) → v1.1 (1301 lines, +883): XML/JSON rejection citation fix, OCR-restored Lottes quote, softened Wasm streaming-parse inference, expanded Appendix A.1-A.9. → **v1.2** (1301 lines): (1) Renamed `arena { }` → `tape { }` (46 occurrences); (2) **Mixed postfix/infix notation** for math (postfix for precedence-bearing math primitives `+ - * / ^` + math indexing `[]`; infix for structural ops `:=`, function calls, control flow, field access); (3) nagent attribution corrected (Jody Bruchon → Mike Acton, `github.com/macton/nagent`); Jofito remains correctly attributed to Jody Bruchon. Time-sensitive goal met: completed before nagent v2.2 hard boundary. Will be consumed by nagent v2.2 (Future-Track Candidate #4) and the future interpreter prototype (follow-up B track, separate). Appendix A.3/A.4 retain v1.1 form pending a sync pass; noted in v1.2 changelog at the top of the report.* *Goal: Survey intent-based scripting languages as a design philosophy and propose a Meta-Tooling-facing intent DSL vocabulary. **Research-only** (non-impl): produces 1 markdown file at `conductor/tracks/intent_dsl_survey_20260612/report.md`. No new `src/` code, no new tests, no `pyproject.toml` changes. The report is the *foundation document* for the user's nagent v2.2 (its "Future-Track Candidate #4: Intent-based DSL" section), the placeholder `intent_dsl_for_meta_tooling_20260608_PLACEHOLDER` (per `mcp_architecture_refactor_20260606/spec.md` §12.1 and `nagent_review_20260608/metadata.json:28`), and a future interpreter prototype (follow-up B track, separate). 7 sections: (1) the "intent-based" design philosophy (O'Donnell immediate-mode as the anchor); (2) prior art across 8 clusters (0: John O'Donnell IMGUI/MVC at johno.se/book/*; 1: Forth family — Forth, ColorForth, KYRA/Onat, x68/Lottes, Joy, CoSy/Bob Armstrong; 2: Array — APL, K, BQN, Uiua; 3: Intent-mapping — Jofito/Jody, jq, nagent tag protocol [rejected as model], Wasm; 4: Meta-Tooling DSLs — `mcp_dsl_20260606` placeholder, nagent's Bridge DSL, OpenAI/Anthropic tool-use; 5: SSDL shape primitives per `computational_shapes_ssdl_digest_20260608.md`; 6: Project's own Command Palette 33 commands; 7: `Result[T]` + `ErrorInfo` convention per `data_oriented_error_handling_20260606`); (3) the 14-primitive grammar formalized from the user's math pseudocode (`determinate`/`minor`/`matrix-transpose` snippets), with explicit ambiguity flags; (4) the 4-tier vocab (~40 verbs: T1 math ~10, T2 data pipeline ~12, T3 shell ~10, T4 AI-fuzzing tolerance ~8 — T4 is the novel contribution); (5) hardware mapping with 4 anchor claims (Onat/Lottes 2-register stack + magenta pipe + basic blocks + lambdas + preemptive scatter; O'Donnell "widgets are method invocations"; Forth/CoSy concatenative syntax; APL/K array data); (6) AI-agent properties (10 claims tying to existing project architecture: Meta-Tooling domain per `guide_meta_boundary.md`, runtime path through `cli_tool_bridge.py`, 3-layer security per `guide_tools.md`, 4 memory dimensions per nagent v2.1 §2.1, stable-to-volatile cache ordering, `Result[T]` envelope, Command Palette 33 commands, Hook API state fields, O'Donnell IEventTarget = `sandbox` verb, O'Donnell "reads are free" = cheap Tier 2 verbs); (7) ≥6 open questions for follow-up B (interpreter prototype) + connection block to `intent_dsl_for_meta_tooling_20260608_PLACEHOLDER`. 4 phases: source gathering + outline (checkpoint commit), write sections 1-3, write sections 4-7, self-review + user review + commit + register in tracks.md. **Time-sensitive**: report must complete before nagent v2.2 ships.* diff --git a/conductor/tracks/intent_dsl_survey_20260612/metadata.json b/conductor/tracks/intent_dsl_survey_20260612/metadata.json index 8b658289..59f98f2c 100644 --- a/conductor/tracks/intent_dsl_survey_20260612/metadata.json +++ b/conductor/tracks/intent_dsl_survey_20260612/metadata.json @@ -7,10 +7,11 @@ "type": "research-only", "domain": "Meta-Tooling", "blocked_by": [], - "deliverable": "conductor/tracks/intent_dsl_survey_20260612/report_v1.1.md", + "deliverable": "conductor/tracks/intent_dsl_survey_20260612/report_v1.2.md", + "deliverable_v1_1": "conductor/tracks/intent_dsl_survey_20260612/report_v1.1.md", "deliverable_v1_0": "conductor/tracks/intent_dsl_survey_20260612/report.md", "review": "conductor/tracks/intent_dsl_survey_20260612/reportreview.md", - "final_commit": "c7e92896", + "final_commit": "213e4994", "consumed_by": [ "nagent v2.2 (Future-Track Candidate #4: Intent-based DSL)", "intent_dsl_for_meta_tooling_20260608_PLACEHOLDER (per mcp_architecture_refactor_20260606/spec.md §12.1)", diff --git a/conductor/tracks/intent_dsl_survey_20260612/state.toml b/conductor/tracks/intent_dsl_survey_20260612/state.toml index a68a47ec..7807c7e3 100644 --- a/conductor/tracks/intent_dsl_survey_20260612/state.toml +++ b/conductor/tracks/intent_dsl_survey_20260612/state.toml @@ -7,6 +7,7 @@ name = "Intent-Based Scripting Languages Survey" status = "complete" current_phase = "complete" last_updated = "2026-06-12" +version = "v1.2" [blocked_by] # No blockers. Track is independent. @@ -64,11 +65,14 @@ git_note_attached = true tracks_md_registered = true [deliverable_summary] -primary = "conductor/tracks/intent_dsl_survey_20260612/report.md (v1.0, 418 lines)" -final = "conductor/tracks/intent_dsl_survey_20260612/report_v1.1.md (1301 lines, +883 from v1.0)" +primary = "conductor/tracks/intent_dsl_survey_20260612/report_v1.2.md (1301 lines, final)" +v1_1 = "conductor/tracks/intent_dsl_survey_20260612/report_v1.1.md (1301 lines, secondary review pass)" +v1_0 = "conductor/tracks/intent_dsl_survey_20260612/report.md (418 lines, original)" review = "conductor/tracks/intent_dsl_survey_20260612/reportreview.md (154 lines, secondary review pass)" research_sub_reports = "conductor/tracks/intent_dsl_survey_20260612/research/ (5 cluster files, ~1300 lines combined)" -final_commit = "c7e92896" +final_commit = "213e4994" +v1_1_commit = "c7e92896" spec_commit = "b389f1be" plan_commit = "5ef68a00" +v1_2_changes = ["rename arena to tape (46 occurrences)", "mixed postfix/infix notation for math (per user heuristic)", "nagent attribution corrected (Jody Bruchon -> Mike Acton)"] time_sensitive_goal = "Completed 2026-06-12 before nagent v2.2 hard boundary."