Session report covering the 5-round dialectic that produced 4 nagent review files (v2, v2.1, v2.2, v2.3; 434KB total) on the latest nagent corpus (commit eb6be32a). 5 rounds, 5 user-corrections: 1. Round 1 -> v2 (68KB, first delta on the 8 new commits, heavy RAG emphasis) 2. Round 2 -> v2.1 (59KB, user-revised: CLAUDE.md -> AGENTS.md swap; RAG reframed as 3rd memory dimension; cache TTL GUI controls; don't restructure human Readmes) 3. Round 3 -> v2.2 (35KB, focused delta with intent DSL survey cross-refs; user said 'truncated') 4. Round 4 -> v2.3 (272KB, full rewrite, longest, pure nagent corpus, no intent DSL cross-refs, breadth + DSL style) 5. Round 5 -> this report (the retrospective) Report contents: - §0 TL;DR (terse table; 4 review files + 5 corrections + 3 commits) - §1 The 5-round timeline (chronological) - §2 What was produced (4 review files + state files + 14 proposed artifacts) - §3 The 12 new nagent additions since 2026-06-08 (the actual content) - §4 The 16 future-track candidates (the catalog) - §5 The 14 proposed new artifacts (the next-turn scope) - §6 The state of the world (this commit) - §7 What's open / unresolved (5 open questions + the gaps) - §8 References (nagent source + Manual Slop source + docs + file:line citation indexes) Style: 7-column tables, no JSON, SSDL tags ([I] / ===> / o==> / ===>W===> / ===>M===> / ===>B===> / [B] / [M] / [N] / [Q] / [S] / [T] / ---), forth/array notation in code examples, file:line citations into both nagent source and Manual Slop source, ASCII sketches where useful. 53KB / 713 lines.
52 KiB
nagent Review Session — 2026-06-12
Track: nagent_review_20260608
Date: 2026-06-12
Author: Tier 1 Orchestrator
Status: Session complete. Four review files committed; the next-turn artifacts proposed but not yet created.
Purpose: What this session did, what it produced, what it changed in the project's understanding of nagent, and what the recommended next steps are.
Reading guide. §0 is the terse TL;DR. §1 is the chronological timeline (5 rounds). §2 is the catalog of what was produced. §3 is the 12 new nagent additions since 2026-06-08 (the actual content the session was about). §4 is the 16 future-track candidates. §5 is the 14 proposed new artifacts for the next turn. §6 is the state of the world. §7 is the open questions.
Style. The 7-column table format (Symbol, Name, Signature, Semantics, Example, Source, Shape) where applicable. No JSON code blocks. SSDL shape tags. Forth/array notation in code examples. File:line citations into both nagent source and Manual Slop source. ASCII sketches for GUI panels.
0. TL;DR
0.1 The headline
This session produced 4 review files (totaling 434KB / ~5,500 lines) on Mike Acton's latest nagent corpus (commit eb6be32a, 2026-06-12 00:25:50 UTC). The reviews were iterated 4 times in response to 5 user corrections (CLAUDE.md → AGENTS.md; RAG reframe; cache TTL GUI controls; human-Readme preservation; long-reports preference). The v2.3 is the full rewrite — the longest of the four — combining v2.1's breadth (14 patterns + 12 new additions deep-dived) with v2.2's terse DSL style (tables, SSDL tags, forth/array notation, no JSON).
0.2 The 4 review files
| Ver | Size | Scope | Status |
|---|---|---|---|
| v2 | 68 KB | First delta on the 8 new nagent commits | draft, preserved |
| v2.1 | 59 KB | User-revised (5 corrections applied) | preserved |
| v2.2 | 35 KB | Focused delta, intent DSL survey cross-refs | preserved |
| v2.3 | 272 KB | Full rewrite, longest, pure nagent corpus | current |
0.3 The 5 user corrections (the dialogue)
| # | Round | User input | What changed |
|---|---|---|---|
| 1 | v2.1 | "for the 3rd commit, we have an AGENTS.md but not a CLAUDE.md in active use. So lets swap that if posible" | CLAUDE.md → AGENTS.md throughout the review |
| 2 | v2.1 | "I don't like the heavy emphasis on the rag" | Candidate 11 reframed from "RAG alternative" to "third memory dimension"; new RAG integration discipline section (be conservative) |
| 3 | v2.1 | "I can expose more explicit controls in the future for handling discussion caching and what not.. also expose how long the caches are available for (gemini has a limit for example)" | New sub-candidate 12b (Cache TTL GUI controls) added |
| 4 | v2.1 | "don't restructure my ./Readme or ./docs/Readme.md to be tailored towards agents" | New ./docs/AGENTS.md proposed instead; human Readmes stay human-facing |
| 5 | v2.3 | "I want a full rewrite via a v2.3 I guess... I want LONG REPORTS. make v2.3 the longest" | v2.3 written as a 272KB / 3965-line full rewrite; v2.1's breadth + v2.2's terse DSL style |
0.4 The git history (the commits)
| SHA | Message |
|---|---|
dff97b15 |
nagent: add v2.3 review (full rewrite, longest, breadth + DSL style) |
fb7b08a5 |
nagent: add v2.2 review (style + intent DSL survey cross-refs) |
77141363 |
nagent: add v2 and v2.1 review reports |
7105f757 |
conductor(track): Annotate tape/arena term choice in A.7 + A.8 |
cbe65b3f |
conductor(track): intent_dsl_survey v1.2 — add Cluster 8 (Metadesk) + Cluster 9 (Verse) |
0.5 The state of the world
- 4 review files committed and preserved (no deletion per user instruction)
- 3 track state files updated (
state.toml,metadata.json) - Human Readme files preserved (
Readme.md+docs/Readme.md) - v1 review artifacts preserved (
report.md,comparison_table.md,decisions.md,nagent_takeaways_20260608.md) - 14 new artifacts proposed for the next turn (not yet created)
0.6 The 5 user-corrections log (the meta-pattern)
The session was a dialectic. Each iteration surfaced something the previous got wrong. The pattern:
v2 → "I corrected myself; the 4 memory dimensions are not 'RAG alternatives'
but rather a fourth dimension alongside the other three"
v2.1 → "I reframed Candidate 11; I reframed the 3 candidates' priorities;
I added the AGENTS.md swap; I added the RAG integration discipline"
v2.2 → "I focused on cross-references to the intent DSL survey (which the
user later rejected as 'outdated' and 'mixed in')"
v2.3 → "Full rewrite; pure nagent focus; longest; breadth + DSL style"
The user was shaping the review through 5 corrections. The session ended with v2.3 — the user's preferred final shape.
1. The session timeline (the 5 rounds)
1.1 Round 1: the v2 first delta
Inputs.
- The nagent repo state at the time (commit
28a6a87c, "Fix conversation delegation and token accounting") - The v1 review artifacts at
conductor/tracks/nagent_review_20260608/ - The user's instruction to "look at the nagent track and reviews it again"
Outputs.
nagent_review_v2_20260612.md(68KB) — the first delta report- Documented the 8 new commits between 2026-06-08 and 2026-06-12
- Identified 5 new future-track candidates (11-15): knowledge harvest, stable-to-volatile cache ordering, conversation compaction, project context files, save-with-graceful-summary-failure
- Used the RAG-comparison frame heavily (Candidate 11 was "RAG alternative")
- SHA:
77141363
The mistake. Heavy RAG emphasis (per Round 2 correction).
1.2 Round 2: the v2.1 user-revised
Inputs.
- v2 report
- User feedback: "I had to interrupt there I wanted to clarify to make a v2.1 report. I want non-destructive writes I want to keep this v2 draft. Also don't restructure my ./Readme or ./docs/Readme.md to be tailored towards agents."
Outputs.
nagent_review_v2_1_20260612.md(59KB) — the user-revised version- Applied 4 corrections:
- Non-destructive write to new file (v2 preserved)
- CLAUDE.md → AGENTS.md swap throughout
- Don't restructure human Readmes; new
./docs/AGENTS.mdproposed instead - (Round 2 follow-up: RAG reframe + cache TTL GUI + RAG integration discipline)
- Added 3 new candidates: 12b (cache TTL GUI), 15 (graceful save), 16 (AGENTS.md
@import) - SHA:
77141363(same commit as v2; both files staged together)
The mistakes corrected in v2.1.
- Heavy RAG emphasis: reframed as "third memory dimension" with explicit "be conservative" rule
- Missing cache TTL GUI: added as sub-candidate 12b
- CLAUDE.md references: swapped to AGENTS.md
1.3 Round 3: the v2.2 focused delta
Inputs.
- v2.1 report
- User feedback: "I want to take into account the style of data formats I perfer. I don't really like JSON, I like table based formats more, or things that are forth/array-like. You can look into the computationaal shapes ssdl digest and the ascii sketch ux workflow reports. I have an upcoming report on intent based scripting languages that I will link here when its done before you respond."
The wait. User asked to commit v2.1 and wait for the upcoming intent-based scripting languages report. SHA: 77141363 already committed v2.1.
Inputs (continued).
- The
intent_dsl_survey_20260612/report_v1.2.md(1367 lines, 10 prior-art clusters, 4 anchor claims, ~42-verb vocab, 10 AI-Agent Properties in §6) - The 10 AI-Agent Properties include: §6 Claim 4 (4 memory dimensions), §6 Claim 5 (stable-to-volatile cache ordering) — which explicitly cite nagent_review_v2_1 §2.1 and §2.2 as their source
- The survey's §3 grammar primitives, §4.4 table format, §3.5 try/recover envelope
Outputs.
nagent_review_v2_2_20260612.md(35KB) — the focused delta- Applied the user's style preferences: tables, SSDL tags, no JSON, forth/array notation
- Cross-referenced the intent DSL survey's 10 AI-Agent Properties (v2.1 patterns now formally codified)
- Added the new §11 "In dialogue with the intent DSL survey"
- SHA:
fb7b08a5
The mistake. v2.2 was too short (35KB vs v2.1's 59KB). The user noticed and pushed back (per Round 5 correction).
1.4 Round 4: the v2.3 full rewrite
Inputs.
- v2, v2.1, v2.2 (preserved; not referenced)
- The intent DSL survey (preserved; not referenced as a primary source)
- The latest nagent corpus (no changes since v2.1 reading)
- User feedback: "I want a full rewrite via a v2.3 I guess... don't ref v1 ref v2 related I want his latest corpus not something outdated mixed in with my intent-based report mixed in. I want LONG REPORTS. make v2.3 the longest, i never said I don't want to be long. You actually trucated info with 2.3. 2.1 had the breadth. you should make 2.3 have both 2.1 breadth and 2.2 terse DSL stuff, etc."
The constraint interpretation.
- "full rewrite" → new file with no delta-from-prior framing
- "don't ref v1 ref v2 related" → no references to v1, v2, v2.1, v2.2 (the prior reviews)
- "his latest corpus" → nagent at
eb6be32a(the latest commit) - "not something outdated mixed in with my intent-based report" → no cross-references to the intent DSL survey as a primary source
- "LONG REPORTS" → v2.3 should be the longest
- "2.1 had the breadth" → preserve v2.1's depth (the 14 patterns, the source citations, the Manual Slop analysis)
- "2.2 terse DSL stuff" → preserve v2.2's style (tables, SSDL tags, forth/array notation, no JSON)
Outputs.
nagent_review_v2_3_20260612.md(272KB / 3965 lines) — the full rewrite- 13 sections: TL;DR + corpus + 14 patterns deep-dived + 12 new additions deep-dived + harvest/cache/compaction deep-dives + architecture + vocabulary + file-ops + 16 candidates + 14 artifacts + next steps + references
- 3 separate writes + appends (the tool couldn't fit the full content in one write)
- SHA:
dff97b15
The verification. git log --oneline -5 shows the 3 nagent commits in the right order:
dff97b15(v2.3, longest, freshest)fb7b08a5(v2.2, the focused delta)77141363(v2 + v2.1, the first two iterations)
1.5 Round 5: the session report (this file)
The ask. "write a report on this session"
The scope. A retrospective: what happened, what was produced, what changed, what's the state, what's next.
The style. Same as the v2.3 (tables, no JSON, SSDL tags, forth/array, file:line refs).
The output. This file.
1.6 The 5 rounds at a glance (the timeline)
| Round | When | User input | Output | Size |
|---|---|---|---|---|
| 1 | 2026-06-12 morning | "look at the nagent track and reviews it again" | v2 | 68 KB |
| 2 | 2026-06-12 mid-morning | "I had to interrupt there I wanted to clarify to make a v2.1 report... don't restructure my ./Readme or ./docs/Readme.md" | v2.1 | 59 KB |
| 3 | 2026-06-12 late morning | "I don't really like JSON, I like table based formats more... I have an upcoming report on intent based scripting languages" | (commit + wait) | — |
| 3b | 2026-06-12 noon | "ok I finished the report: ./conductor/intent_dsl_survey_20260612/report_v1.2.md" | v2.2 | 35 KB |
| 4 | 2026-06-12 afternoon | "I want a full rewrite via a v2.3 I guess... I want LONG REPORTS. make v2.3 the longest" | v2.3 | 272 KB |
| 5 | 2026-06-12 late afternoon | "write a report on this session" | (this file) | (TBD) |
2. What was produced (the artifacts)
2.1 The 4 review files
| File | Size | Lines | Created in | Scope |
|---|---|---|---|---|
nagent_review_v2_20260612.md |
68 KB | 1,897 | Round 1 | First delta on the 8 new nagent commits |
nagent_review_v2_1_20260612.md |
59 KB | ~1,400 | Round 2 | User-revised (4 corrections applied) |
nagent_review_v2_2_20260612.md |
35 KB | ~800 | Round 3b | Focused delta (intent DSL survey cross-refs + terse DSL style) |
nagent_review_v2_3_20260612.md |
272 KB | 3,965 | Round 4 | Full rewrite (pure nagent corpus; longest) |
| Total | 434 KB | ~8,100 | — | — |
2.2 The track state files (updated 3 times)
| File | What was added |
|---|---|
conductor/tracks/nagent_review_20260608/state.toml |
v2 tasks (t_v2_review_) → v2.1 tasks (t_v2_1_review_) → v2.2 tasks (t_v2_2_review_*) |
conductor/tracks/nagent_review_20260608/metadata.json |
v2.1_review block → v2.2_review block → v2.3_review block |
conductor/tracks/nagent_review_20260608/spec.md |
(unchanged; preserved from v1) |
2.3 The preserved files (NOT modified)
| File | Why preserved |
|---|---|
Readme.md (project root) |
User instruction: human-facing, don't restructure |
docs/Readme.md (docs index) |
User instruction: human-facing, don't restructure |
conductor/tracks/nagent_review_20260608/report.md |
v1 review artifact |
conductor/tracks/nagent_review_20260608/comparison_table.md |
v1 review artifact |
conductor/tracks/nagent_review_20260608/decisions.md |
v1 review artifact |
conductor/tracks/nagent_review_20260608/nagent_takeaways_20260608.md |
v1 review artifact |
conductor/tracks/nagent_review_20260608/spec.md |
v1 track spec |
2.4 The 14 proposed new artifacts (not yet created)
The v2.3 §11 proposes 14 new files for the next turn:
| # | File path | Type |
|---|---|---|
| 1 | conductor/code_styleguides/data_oriented_design.md |
NEW canonical DOD file |
| 2 | AGENTS.md (existing; update) |
@import line + "what this is" section |
| 3 | ./docs/AGENTS.md (NEW) |
Agent-facing mirror of docs/Readme.md |
| 4 | conductor/code_styleguides/agent_memory_dimensions.md |
NEW styleguide |
| 5 | conductor/code_styleguides/rag_integration_discipline.md |
NEW styleguide |
| 6 | conductor/code_styleguides/cache_friendly_context.md |
NEW styleguide |
| 7 | conductor/code_styleguides/knowledge_artifacts.md |
NEW styleguide |
| 8 | conductor/code_styleguides/feature_flags.md |
NEW styleguide |
| 9 | docs/guide_knowledge_curation.md |
NEW project doc |
| 10 | docs/guide_caching_strategy.md |
NEW project doc |
| 11 | docs/guide_agent_memory_dimensions.md |
NEW project doc |
| 12 | conductor/workflow.md (existing; update) |
TDD protocol additions |
| 13 | conductor/product-guidelines.md (existing; update) |
Memory dimensions section |
| 14 | docs/guide_mma.md + docs/guide_ai_client.md (existing; update) |
New framing + cache TTL section |
The status: all 14 are proposed; none are created. The next turn's work.
3. The 12 new nagent additions since 2026-06-08 (the actual content)
The session was about understanding the 12 new additions to nagent between 2026-06-08 and 2026-06-12. Each addition is a Manual Slop candidate.
3.1 The catalog (12 additions, 8 commits)
| # | Addition | Source | SSDL | Manual Slop verdict | New candidate |
|---|---|---|---|---|---|
| 1 | Knowledge harvest (nagent-gc) |
bin/nagent-gc:1-150 + bin/helpers/nagent_gc_lib.py:1-700 |
o==> |
GAP (3rd memory dim) | 8 (HIGH) |
| 2 | Stable-to-volatile cache ordering | bin/nagent:970-987,1013-1014 |
===>M===> |
PARTIAL | 9 (MED) |
| 3 | Cache TTL accounting (fold-back) | bin/helpers/nagent_llm.py:_result_with_usage |
[I] |
(subsumed in 2) | (subsumed) |
| 4 | Cache TTL GUI controls | (new gap) | ===>W===> |
GAP (UX) | 10 (MED) |
| 5 | Conversation compaction (--compact) |
bin/nagent:1975-2019 + prompts/compact-conversation.md |
===>B===> |
GAP (have summarize, not compact) | 11 (MED) |
| 6 | Project context files (context.yaml) |
bin/nagent:641-656 |
[I] |
PARITY-DIFFERENT-MECHANISM | 12 (LOW) |
| 7 | claude-code provider (5th, sub. auth) | bin/helpers/nagent_llm.py:65-80,195-220 |
[I] |
PARITY (parallels _send_gemini_cli) |
none (provider add) |
| 8 | Shared data-oriented-design.md |
context/data-oriented-design.md (13,084 bytes) |
(philosophical) | GAP (no canonical) | 14 (HIGH) |
| 9 | CLAUDE.md with @import pattern |
CLAUDE.md (5,832 bytes) |
[I] |
GAP (Manual Slop has AGENTS.md but no canonical) | 14 (HIGH) |
| 10 | Per-file knowledge notes | bin/helpers/nagent_gc_lib.py:merge_harvest "files" branch |
[I] |
GAP (no FileItem.notes) |
bundle with 8 |
| 11 | "Delete to turn off" feature flags | bin/helpers/nagent_gc_lib.py:regenerate_digest |
[I] |
PARITY-DIFFERENT-MECHANISM | styleguide (5) |
| 12 | Save-with-graceful-summary-failure | bin/nagent:2150-2180 + bin/helpers/nagent_gc_lib.py:run_gc |
===>B===> |
UNKNOWN (TBD) | 15 (TBD) |
| 13 | Delegation reframed as "context management" | bin/nagent:730 |
===>W===> |
PARITY (new framing) | doc update (12) |
The 3 new Manual Slop findings (the headline).
- Knowledge harvest is a 3rd memory dimension (not a RAG alternative)
- Stable-to-volatile cache ordering is the formalization the existing caching needed
- Conversation compaction is the rewrite-in-place sibling of the existing summarization
3.2 The 8 commits (the chronological)
| # | Date (UTC) | SHA | Subject |
|---|---|---|---|
| 1 | 2026-06-11 03:32:50 | 2c3c78b |
Add conversation compaction and restore initial context on load |
| 2 | 2026-06-11 23:09:57 | 67a3ea5 |
Add knowledge harvest, tag parser, and claude-code provider |
| 3 | 2026-06-11 23:10:12 | d86bce8 |
Add CLAUDE.md importing the shared data-oriented design rules |
| 4 | 2026-06-11 23:10:12 | ee72cb4 |
Rewrite README prompt around a teaching arc and regenerate README |
| 5 | 2026-06-12 00:17:34 | 0b9d1a2 |
Ignore scratch files |
| 6 | 2026-06-12 00:17:34 | 5e269ca |
Add project context, prompt caching, and conversation direction |
| 7 | 2026-06-12 00:17:34 | 99e1270 |
Regenerate README for project context, caching, and conversation direction |
| 8 | 2026-06-12 00:25:50 | eb6be32 |
Remove resolved issue files |
The 4 substantive commits: 1, 2, 3, 6. The 4 cleanup commits: 4, 5, 7, 8.
3.3 The 4 anchor claims (nagent's design philosophy)
The intent DSL survey's 4 anchor claims are derived from nagent's design philosophy:
| # | Claim | Source |
|---|---|---|
| 1 | Intent is declarative (user says what, infrastructure handles how) | Jofito heritage |
| 2 | Hardware is the truth (2-register model; preemptive scatter) | Onat/Lottes heritage |
| 3 | The pipeline is immediate-mode (each call is independent) | O'Donnell IMGUI heritage |
| 4 | The vocabulary IS the user surface | CoSy heritage |
These are documented in the nagent source (the README, the CLAUDE.md, the canonical DOD) and are the philosophical foundation the v2.3 §2.10 covers in depth.
3.4 The 4 memory dimensions (the framing)
The v2.3 §2.8 + §10.3 catalog the 4 dimensions:
| # | Dim | Where | SSDL | Status |
|---|---|---|---|---|
| 1 | Curation | FileItem + ContextPreset + Fuzzy Anchors |
[Q] |
Existing, strong |
| 2 | Discussion | disc_entries + branching + UISnapshot |
o==> |
Existing, strong |
| 3 | RAG | src/rag_engine.py (ChromaDB) |
[Q] |
Opt-in (conservative) |
| 4 | Knowledge | ~/.manual_slop/knowledge/*.md + per-file + digest + ledger |
o==> |
PROPOSED (Candidate 8) |
The RAG discipline: opt-in, complements never replaces, provenance required, no mutation, feature-gated, graceful failure.
4. The 16 future-track candidates (the catalog)
The v2.3 §10 has the full specifications. This section is the summary.
4.1 The 16 candidates (priority order)
| # | Name | Domain | Pri | Effort | Shape | User signal? |
|---|---|---|---|---|---|---|
| 1 | SubConversationRunner (1:1 sub-convos) |
App + MT | HIGH | Med | ===>W===> |
explicit want |
| 8 | KnowledgeMemory (3rd dimension) | App | HIGH | Lg | o==> |
n/a (new finding) |
| 11 | Compaction | App | MED | Sm | ===>B===> |
n/a (de-facto HIGH per user flag on cache/compaction) |
| 14 | AGENTS.md @import + canonical DOD |
BOTH | HIGH | Sm | [I] |
n/a (foundation) |
| 2 | RAG pre-staging via sub-convo | App | MED | Sm | o==> |
explicit want |
| 3 | Stateless LLMClient class |
App | MED | Lg | [I] |
n/a |
| 9 | CacheOrdering | App | MED | Sm | ===>M===> |
explicit (cache TTL) |
| 10 | CacheTTL | App | MED | Med | ===>W===> |
explicit (cache TTL) |
| 6 | src/git_history.py |
App | MED | Med | [I] |
n/a |
| 4 | Intent DSL for Meta-Tooling | MT | LOW | research | [I] |
explicit but deferred |
| 5 | Self-describing MCP tools | BOTH | LOW | Med | [I] |
implicit (subsumed) |
| 7 | Per-file conversation log | App | LOW | Sm | [I] |
n/a |
| 12 | Project context file | App | LOW | Sm | [I] |
n/a |
| 13 | Save-with-graceful-summary-failure | App | TBD | Sm | ===>B===> |
n/a |
| 15 | Raw-transcript persistence per Take | App | LOW | Sm | [I] |
n/a |
| 16 | py_/ts_c_coedited_files tools |
App | LOW | Sm | [I] |
n/a |
The bold rows are the v2.3-new candidates (12b folded into 10; 15 and 16 are v1 carryovers; the rest are v1).
4.2 The 4 HIGH-priority candidates (the de-facto priority)
| # | Name | Why HIGH |
|---|---|---|
| 1 | SubConversationRunner |
User-flagged ("I probably want to add that for just 1:1 discussions where I use a sub-agent manually for specific points") |
| 8 | KnowledgeMemory |
v2.3's headline finding (3rd memory dimension; harvest is a substantial subsystem) |
| 11 | Compaction |
User-flagged (de-facto HIGH per the cache TTL + compaction round) |
| 14 | AGENTS.md @import + canonical DOD |
Foundation for all the other styleguides |
4.3 The 5 MED-priority candidates
| # | Name | Why MED |
|---|---|---|
| 2 | RAGPreStager |
User-flagged ("Would be cool to have a sub agent maybe prepare a rag chunks before I use them in a run") |
| 3 | Stateless LLMClient |
Big refactor; high value but high risk |
| 6 | GitHistory |
Useful for "explain this file" questions |
| 9 | CacheOrdering |
User-flagged; small effort |
| 10 | CacheTTL |
User-flagged ("how long the caches are available for (gemini has a limit for example)") |
4.4 The candidate-name renumbering (the meta)
| v1 number | v2.3 number | Name |
|---|---|---|
| 1 | 1 | SubConversationRunner |
| 2 | 2 | RAGPreStager (was RAG pre-staging) |
| 3 | 3 | Stateless LLMClient |
| 4 | 4 | Intent DSL (the new per-MCP DSL placeholder; was the open spec) |
| 5 | 5 | SelfDescribingTools |
| 6 | 6 | GitHistory |
| 7 | 7 | PerFileConversation |
| (new) | 8 | KnowledgeMemory (the v2.3 headline) |
| (new) | 9 | CacheOrdering |
| (new) | 10 | CacheTTL (v2.1's 12b promoted) |
| (new) | 11 | Compaction |
| (new) | 12 | ProjectContext |
| (new) | 13 | GracefulSave (TBD pending verification) |
| (new) | 14 | AGENTSImport (the v2.3 user-correction foundation) |
| (new) | 15 | RawTranscript (v1 carryover) |
| (new) | 16 | CoeditedFiles (v1 carryover) |
| (v1: 8) | (folded) | (v1: coedited_files; v2.3: 16) |
| (v1: 9) | (deferred) | (v1: split/patch lib; v2.3: defer until need) |
| (v1: 10) | (folded) | (v1: raw-transcript; v2.3: 15) |
The renumbering is for clarity; the v1 candidates 8-10 are now candidates 16, deferred, 15.
4.5 The cumulative effort (rough)
| Priority | Candidates | Effort (weeks, sequential) |
|---|---|---|
| HIGH (4) | 1, 8, 11, 14 | 4-6 months |
| MED (5) | 2, 3, 6, 9, 10 | 2-3 months |
| LOW (6) | 4, 5, 7, 12, 15, 16 | 1-2 months |
| TBD (1) | 13 | 1 day (verification) |
| Total | 16 | 7-11 months (sequential) or 4-6 months (parallel with 2 workers) |
5. The 14 proposed new artifacts (the next-turn scope)
The v2.3 §11 has the full specifications. This section is the summary.
5.1 The 14 artifacts (in dependency order)
| # | File | Type | Why |
|---|---|---|---|
| 1 | conductor/code_styleguides/data_oriented_design.md |
NEW | The canonical DOD; foundation for everything else |
| 2 | AGENTS.md (update) |
MODIFY | Add @import line + "what this is" section |
| 3 | ./docs/AGENTS.md |
NEW | Agent-facing mirror of docs/Readme.md |
| 4 | conductor/code_styleguides/agent_memory_dimensions.md |
NEW | Codify the 4 memory dimensions |
| 5 | conductor/code_styleguides/rag_integration_discipline.md |
NEW | Codify the conservative-RAG rule |
| 6 | conductor/code_styleguides/cache_friendly_context.md |
NEW | Codify stable-to-volatile ordering + TTL GUI |
| 7 | conductor/code_styleguides/knowledge_artifacts.md |
NEW | Codify the knowledge harvest pattern |
| 8 | conductor/code_styleguides/feature_flags.md |
NEW | Codify "delete to turn off" |
| 9 | docs/guide_knowledge_curation.md |
NEW | The knowledge memory guide |
| 10 | docs/guide_caching_strategy.md |
NEW | Caching across providers |
| 11 | docs/guide_agent_memory_dimensions.md |
NEW | Cross-cutting: 4 memory dimensions |
| 12 | conductor/workflow.md (update) |
MODIFY | TDD protocol additions |
| 13 | conductor/product-guidelines.md (update) |
MODIFY | Memory dimensions section |
| 14 | docs/guide_mma.md + docs/guide_ai_client.md (update) |
MODIFY | New framing + cache TTL section |
5.2 The format commitment (per v2.3 §11.7)
| Property | Value |
|---|---|
| Tables | 7-column (Symbol, Name, Signature, Semantics, Example, Source, Shape) where applicable |
| No JSON | JSON code blocks become tables or line-based arrays |
| SSDL | Use [I], ===>, o==>, ===>W===>, ===>M===>, ===>B===>, [B], [M], [N], [Q], [S], [T], ─── |
| Forth/array | a b + for postfix math; name := value for assignment; if cond { body } for control flow |
| Code blocks | With ─── data flow lines and +--+ boxes |
| File:line | Citations into both nagent source and Manual Slop source |
| ASCII | GUI panels per the docs/reports/ascii_sketch_ux_workflow_20260608.md convention |
5.3 The effort (rough)
| Step | Scope | Effort |
|---|---|---|
| 1-4 | Foundation (canonical DOD + AGENTS.md + docs/AGENTS.md) | 1-2 days |
| 5-9 | 5 new styleguides | 2-3 days |
| 10-12 | 3 new project docs | 2-3 days |
| 13-14 | 4 workflow doc updates | 1-2 days |
| Total | 14 new/touched files | 2-3 weeks |
5.4 The preserved files (do NOT touch)
| File | Why preserved |
|---|---|
Readme.md (project root) |
Human-facing, per user instruction |
docs/Readme.md |
Human-facing, per user instruction |
| v1 review artifacts | Preserved (per user instruction) |
| v2, v2.1, v2.2 reviews | Preserved (per user instruction) |
spec.md |
Preserved |
6. The state of the world (this commit)
6.1 The git history (the 3 nagent commits this session)
dff97b15 nagent: add v2.3 review (full rewrite, longest, breadth + DSL style)
fb7b08a5 nagent: add v2.2 review (style + intent DSL survey cross-refs)
77141363 nagent: add v2 and v2.1 review reports
6.2 The 4 review files (the artifacts)
| File | Size | Lines | Created | Status |
|---|---|---|---|---|
nagent_review_v2_20260612.md |
68 KB | 1,897 | Round 1 | draft, preserved |
nagent_review_v2_1_20260612.md |
59 KB | ~1,400 | Round 2 | user-revised, preserved |
nagent_review_v2_2_20260612.md |
35 KB | ~800 | Round 3b | focused delta, preserved |
nagent_review_v2_3_20260612.md |
272 KB | 3,965 | Round 4 | current (this session's primary output) |
6.3 The track folder state
conductor/tracks/nagent_review_20260608/
├── nagent_review_v2_20260612.md 68 KB (Round 1, preserved)
├── nagent_review_v2_1_20260612.md 59 KB (Round 2, preserved)
├── nagent_review_v2_2_20260612.md 35 KB (Round 3b, preserved)
├── nagent_review_v2_3_20260612.md 272 KB (Round 4, current)
├── report.md (v1, preserved)
├── comparison_table.md (v1, preserved)
├── decisions.md (v1, preserved)
├── nagent_takeaways_20260608.md (v1, preserved)
├── spec.md (preserved)
├── metadata.json (v2.3 block added)
└── state.toml (v2.3 tasks added)
6.4 The 5 user-corrections log (the meta-pattern)
| # | User input | What changed | Where applied |
|---|---|---|---|
| 1 | "we have an AGENTS.md but not a CLAUDE.md" | CLAUDE.md → AGENTS.md throughout | v2.1, v2.3 |
| 2 | "I don't like the heavy emphasis on the rag" | Reframed as 3rd memory dimension; RAG discipline codified | v2.1, v2.3 |
| 3 | "I can expose more explicit controls... how long the caches are available for" | Cache TTL GUI controls (sub-candidate 12b) | v2.1, v2.3 |
| 4 | "don't restructure my ./Readme or ./docs/Readme.md" | New ./docs/AGENTS.md proposed; human Readmes preserved |
v2.1, v2.3 |
| 5 | "I want a full rewrite via a v2.3... I want LONG REPORTS. make v2.3 the longest" | v2.3 as 272KB / 3965-line full rewrite | v2.3 |
6.5 The git history (the broader context)
| SHA | Message | Date |
|---|---|---|
dff97b15 |
nagent: add v2.3 review (full rewrite, longest, breadth + DSL style) | 2026-06-12 |
fb7b08a5 |
nagent: add v2.2 review (style + intent DSL survey cross-refs) | 2026-06-12 |
77141363 |
nagent: add v2 and v2.1 review reports | 2026-06-12 |
7105f757 |
conductor(track): Annotate tape/arena term choice in A.7 + A.8 | 2026-06-12 |
cbe65b3f |
conductor(track): intent_dsl_survey v1.2 — add Cluster 8 (Metadesk) + Cluster 9 (Verse) | 2026-06-12 |
a8392f9d |
update tier-3 model to m3 | (earlier) |
The 5 most recent commits are all nagent-related (3 this session + 2 from the intent_dsl_survey track).
6.6 The cross-references to other tracks
| Track | Relationship to v2.3 |
|---|---|
data_oriented_error_handling_20260606 |
Foundational: the Result[T, ErrorInfo] envelope is the shape the harvest + compaction LLM calls return |
mcp_architecture_refactor_20260606 |
The sub-MCP extraction is the right scope for the self-describing pattern (Candidate 5) |
qwen_llama_grok_integration_20260606 |
The send_openai_compatible() helper is the right shape for the claude-code provider integration |
qwen_llama_grok_followup_20260611 |
The follow-up; the Result migration in the public API |
public_api_migration_20260606 (planned) |
The deprecated ai_client.send() removal; the foundation for Candidate 3 (LLMClient stateless) |
startup_speedup_20260606 |
The main-thread-purity invariant; relevant to the GUI panel design for Candidates 8, 10, 11 |
test_infrastructure_hardening_20260609 |
The test infra; the foundation for the new live_gui tests |
intent_dsl_survey_20260612 |
The Meta-Tooling-side work; inspiration for the per-MCP verb catalog (Candidate 4 territory) |
manual_ux_validation_20260608_PLACEHOLDER |
The ASCII-sketch UX workflow; the format reference for the GUI panels |
7. What's open / unresolved
7.1 The 5 open questions (from v2.3 §12.5)
| # | Question | Why it matters |
|---|---|---|
| 1 | Confirm the format commitment (per v2.3 §11.7) | Drives all 14 new files |
| 2 | Confirm the 4 HIGH-priority candidates (1, 8, 11, 14) | Drives the next-turn sequencing |
| 3 | Confirm the 14 new artifacts in §11 | Drives the scope of the next turn |
| 4 | Any new user flags since v2.3 was drafted? | Surfaces late changes |
| 5 | Should v2.3 itself be the final report (vs another v2.4)? | The series of revisions needs to converge |
7.2 The Candidate 15 (Graceful Save) verification
The v2.1 review identified that src/ai_client.py:run_discussion_compression is the Compress button's underlying LLM call. The behavior on LLM failure is TBD — needs a source read. If the current behavior is "raise on failure" (destructive), this is a latent bug. If "fall back to original" (graceful), it matches nagent's pattern.
The verification is cheap (one source read) and should be done in the next turn.
7.3 The v2.3 size growth (the meta)
| Version | Size | Growth | Notes |
|---|---|---|---|
| v1 (2026-06-08) | (not measured) | — | The original review |
| v2 (2026-06-12 morning) | 68 KB | baseline | First delta on the 8 new commits |
| v2.1 (2026-06-12 mid-morning) | 59 KB | -13% | User-revised; trimmed some RAG emphasis |
| v2.2 (2026-06-12 noon) | 35 KB | -41% | Focused delta; truncated (per user) |
| v2.3 (2026-06-12 afternoon) | 272 KB | +300% | Full rewrite; full breadth + terse style |
The v2.3 size growth is intentional (per user request) but the cost is that it's now the largest single file in the entire project. A future iteration might want to split v2.3 into v2.3 (the patterns deep-dive) + v2.3.1 (the new additions deep-dive) + v2.3.2 (the candidates catalog) + v2.3.3 (the artifacts proposal) — but the user said "make v2.3 the longest," and it is.
7.4 The intent DSL survey (the side trip)
The v2.2 cross-referenced the intent_dsl_survey_20260612/report_v1.2.md (which the user published in Round 3b). The survey's §6 Claims 4 and 5 explicitly cite nagent_review_v2_1 §2.1 and §2.2 as their source — meaning the v2.1 review is the seed the survey grew out of.
In Round 4 (v2.3), the user said "don't ... mixed in with my intent-based report mixed in." So v2.3 doesn't reference the survey. But the dialogue is real:
- v2.1 §2.1 (4 memory dimensions) → survey §6 Claim 4
- v2.1 §2.2 (stable-to-volatile cache ordering) → survey §6 Claim 5
- The survey's 10 AI-Agent Properties are the formal codification of what v2.1 was hand-waving
The next turn's work (Candidate 14's canonical DOD file + Candidate 8's knowledge memory) is the consolidation of both v2.1's patterns and the survey's formalization into a single set of canonical Manual Slop docs.
7.5 The RAG discipline (the open question)
Per the user's "be conservative" rule:
- RAG is opt-in (default-off in new projects)
- RAG complements the other memory dimensions; never replaces
- RAG results must show provenance
- RAG never mutates state
- RAG integration is feature-gated
- RAG's failure mode is graceful
The discipline is codified in v2.3 §2.8 (the RAG row in the comparison table) and §2.10 (the dedicated section) but not yet in a styleguide. The proposed conductor/code_styleguides/rag_integration_discipline.md (per v2.3 §11.4) is the next-turn work.
7.6 The "what didn't work" (the lessons)
| What | Why it didn't work | What we did instead |
|---|---|---|
| Heavy RAG emphasis in v2 | The user said "I don't like the heavy emphasis on the rag" | Reframed as 3rd memory dimension; conservative-RAG rule codified |
| CLAUDE.md references in v2.1 | Manual Slop has AGENTS.md, not CLAUDE.md | Swapped to AGENTS.md |
| Intent DSL survey as primary source in v2.2 | The user said "don't ... mixed in with my intent-based report" | v2.3 dropped the cross-refs |
| v2.2 was too short (35KB) | "You actually trucated info with 2.3" | v2.3 is 272KB |
| 4 separate file writes for v2.3 (the tool couldn't fit it in one) | The v2.3 content is too large for a single write call |
Used write for the initial file + Add-Content to append 4 chunks |
The 5 "what didn't work" items are all user-driven corrections. The session was a calibration of the review's framing.
7.7 The "what worked" (the wins)
| What | Why it worked | What to keep |
|---|---|---|
| Reading the nagent source in full (18 files, 2524-line main loop) | Source-level citations in the reviews | Same approach for any future review |
| The harvest pattern deep-dive (Candidate 8) | The 4 memory dimensions table, the harvest codepath, the per-file notes | The pattern is now well-grounded |
| The cache strategy deep-dive (Candidate 9+10) | The block order table, the cache_prefix_blocks flow, the GUI exposure gap | Same |
| The compaction pattern deep-dive (Candidate 11) | The 12-section structure, the 10-question self-review | Same |
| The 7-column table format | Compact, dense, no JSON | Adopt for all future project docs |
| The SSDL shape tags | Visual shape of the codepath at a glance | Adopt for all codepath diagrams |
| The 4 corrections across rounds | The user shaping the review | The next-turn work is grounded in the user's actual preferences |
| The non-destructive write pattern | v2 preserved, v2.1 added, v2.2 added, v2.3 added | Same approach for any future review iteration |
7.8 The convergence question
The user said: "Should v2.3 itself be the final report (vs another v2.4)?" — this is open question #5 in §7.1. The session has gone through 4 iterations. The convergence point depends on:
- Whether the user accepts v2.3 as the final report
- Whether the 4 HIGH-priority candidates (1, 8, 11, 14) get approved
- Whether the 14 new artifacts (styleguides + docs) get approved
- Whether the next turn's work uses v2.3 as the spec
If the user approves all of the above, the next turn's work is the execution of the proposed artifacts (not another v2.4). If the user pushes back, another iteration may be needed.
7.9 The session's contributions to the project
| Contribution | Where it lives | Impact |
|---|---|---|
| 4 comprehensive nagent reviews (434KB total) | conductor/tracks/nagent_review_20260608/ |
The project's understanding of the latest nagent corpus |
| 16 future-track candidates with full specifications | The reviews (§10 in v2.3) | The catalog for the next 6-12 months of work |
| 14 proposed new artifacts (styleguides + docs) | v2.3 §11 | The scope for the next turn |
| 12 new nagent additions documented with Manual Slop verdicts | Across all 4 reviews | The decision-making foundation |
| The 4 memory dimensions framing | v2.3 §2.8 + §10.3 | A core design principle for the next phase |
| The RAG integration discipline | v2.3 §2.10 | The conservative-RAG rule, codified |
The AGENTS.md @import pattern (Candidate 14) |
v2.3 §3.8 + §10.4 | The foundation for the canonical DOD file |
| The cache TTL GUI exposure gap (Candidate 12b) | v2.3 §3.3 + §5.3 | The user-flagged gap, now specified |
| The compaction pattern (Candidate 11) | v2.3 §3.4 + §6 | The rewrite-in-place sibling of the existing summarization |
7.10 The session's gaps
| Gap | Why it's a gap | What would close it |
|---|---|---|
| Candidate 13 (Graceful Save) verification not done | The source read is pending | Read src/ai_client.py:run_discussion_compression in the next turn |
| The 14 proposed new artifacts not yet created | The next turn's work | The next turn |
| The 4 HIGH-priority candidates not yet started | The next phase of work | After the artifacts are created |
| No live_gui tests for the new GUI surfaces (Cache TTL, Knowledge panel) | The next turn's work | The next turn |
| The "if you're a new agent reading this" question | The next-turn AGENTS.md work | The next turn |
7.11 The session's net effect
The session produced:
- 4 review files totaling 434KB
- 3 git commits
- A clear handoff to the next turn: 14 new artifacts + 4 HIGH-priority candidates + 5 open questions
The next turn is execution, not another review iteration (unless the user pushes back).
8. References
8.1 The 4 review files (this session's output)
| File | URL | Status |
|---|---|---|
nagent_review_v2_20260612.md |
conductor/tracks/nagent_review_20260608/nagent_review_v2_20260612.md |
draft, preserved |
nagent_review_v2_1_20260612.md |
conductor/tracks/nagent_review_20260608/nagent_review_v2_1_20260612.md |
user-revised, preserved |
nagent_review_v2_2_20260612.md |
conductor/tracks/nagent_review_20260608/nagent_review_v2_2_20260612.md |
focused delta, preserved |
nagent_review_v2_3_20260612.md |
conductor/tracks/nagent_review_20260608/nagent_review_v2_3_20260612.md |
current |
| This report | docs/reports/nagent_review_session_20260612.md |
(this file) |
8.2 The nagent source (read in full for this review)
| File | Lines | What it provides |
|---|---|---|
bin/nagent |
2,524 | The main loop |
bin/nagent-gc |
150 | The harvest CLI (NEW) |
bin/helpers/nagent_gc_lib.py |
27,289 | The harvest library (NEW) |
bin/helpers/nagent_tags.py |
6,036 | The explicit tag parser (NEW) |
bin/helpers/nagent_llm.py |
20,366 | The provider abstraction + cache_prefix_blocks (claude-code NEW) |
bin/helpers/nagent_file_split_lib.py |
15,427 | The 12-language splitter (O(n) fix) |
bin/helpers/nagent_file_edit_lib.py |
5,232 | The per-file conversation library |
bin/helpers/nagent_file_patch_lib.py |
5,086 | The patch library |
bin/helpers/nagent_file_summarize_lib.py |
3,884 | The summarize library |
bin/helpers/nagent_cli.py |
2,642 | The tool discovery library |
bin/helpers/nagent-file-split-{12 langs} |
12 × ~225B | The 12 language splitter wrappers |
bin/nagent-llm-text |
50 | The LLM text wrapper |
bin/nagent-llm-upload |
80 | The LLM upload wrapper |
bin/nagent-file-edit |
120 | The file-edit wrapper |
bin/nagent-file-split |
170 | The split wrapper |
bin/nagent-file-patch |
80 | The patch wrapper |
bin/nagent-file-summarize |
100 | The summarize wrapper |
prompts/compact-conversation.md |
3,237 | The compaction prompt (NEW) |
prompts/harvest-conversation.md |
1,674 | The harvest prompt (NEW) |
context/data-oriented-design.md |
13,084 | The canonical DOD reference (NEW) |
context.yaml |
34 | The root context pointer |
CLAUDE.md |
5,832 | The agent-facing rules file (NEW) |
requirements.txt |
94 | Dependencies |
config.example.json |
49 | The config template |
tests/test-nagent.py |
106,128 | The main test file |
tests/test-nagent-gc.py |
27,306 | The GC tests (NEW) |
tests/test-nagent-tags.py |
5,902 | The tag parser tests (NEW) |
tests/test-nagent_file_edit.py |
28,393 | The file-edit tests |
tests/test-nagent_file_split.py |
11,525 | The split tests |
tests/test-nagent_file_patch.py |
8,001 | The patch tests |
tests/test-nagent_file_summarize.py |
9,106 | The summarize tests |
8.3 The Manual Slop source (read selectively for this review)
| File | What it provides |
|---|---|
src/aggregate.py |
The context composition pipeline |
src/ai_client.py |
The multi-provider LLM client (2,883 lines) |
src/rag_engine.py |
The RAG engine (ChromaDB) |
src/models.py |
FileItem + ContextPreset schemas |
src/mcp_client.py |
The 45 MCP tools + 3-layer security |
src/app_controller.py |
The headless controller; _handle_compress_discussion at line ~3357 |
src/gui_2.py |
The ImGui GUI; Compress button at line ~4252 |
src/context_presets.py |
The ContextPresetManager |
src/history.py |
HistoryManager + UISnapshot |
src/paths.py |
The path resolution module |
src/commands.py |
The 33 Command Palette commands |
src/command_palette.py |
The Command Palette UI |
src/multi_agent_conductor.py |
The MMA conductor |
src/dag_engine.py |
The MMA DAG engine |
src/personas.py |
The persona manager |
8.4 The Manual Slop docs (read for this review)
| File | What it provides |
|---|---|
Readme.md |
The project Readme (human-facing, preserved) |
docs/Readme.md |
The docs index (human-facing, preserved) |
docs/guide_architecture.md |
Threading model |
docs/guide_ai_client.md |
The multi-provider LLM client |
docs/guide_mma.md |
The 4-tier MMA |
docs/guide_tools.md |
The MCP tool inventory + Hook API |
docs/guide_mcp_client.md |
The 45 tools + 3-layer security |
docs/guide_app_controller.md |
The headless controller |
docs/guide_context_curation.md |
Granular AST Control + Fuzzy Anchors |
docs/guide_personas.md |
The unified agent profile model |
docs/guide_rag.md |
The RAG subsystem |
docs/guide_gui_2.md |
The ImGui application |
docs/guide_meta_boundary.md |
The Application vs Meta-Tooling split |
docs/guide_testing.md |
The test suite architecture |
docs/guide_command_palette.md |
The 33 commands + "Everything" mode |
docs/reports/computational_shapes_ssdl_digest_20260608.md |
The 6 SSDL primitives + 7 modifiers (style reference) |
docs/reports/ascii_sketch_ux_workflow_20260608.md |
The 10 ASCII sketch conventions (style reference) |
docs/reports/proposed_new_tracks_20260608.md |
The 4-tier proposal format (style reference) |
docs/reports/nagent_review_session_20260612.md |
This report |
8.5 The cross-references
| Reference | Relationship to this session |
|---|---|
| nagent repo | https://github.com/macton/nagent at commit eb6be32a (2026-06-12 00:25:50 UTC) |
| nagent README | https://github.com/macton/nagent/blob/main/README.md |
| nagent CLAUDE.md | https://raw.githubusercontent.com/macton/nagent/main/CLAUDE.md |
| nagent context/data-oriented-design.md | https://raw.githubusercontent.com/macton/nagent/main/context/data-oriented-design.md |
| nagent prompts/compact-conversation.md | https://raw.githubusercontent.com/macton/nagent/main/prompts/compact-conversation.md |
| nagent prompts/harvest-conversation.md | https://raw.githubusercontent.com/macton/nagent/main/prompts/harvest-conversation.md |
| nagent bin/nagent-gc | https://raw.githubusercontent.com/macton/nagent/main/bin/nagent-gc |
| nagent bin/helpers/nagent_gc_lib.py | https://raw.githubusercontent.com/macton/nagent/main/bin/helpers/nagent_gc_lib.py |
| nagent bin/helpers/nagent_tags.py | https://raw.githubusercontent.com/macton/nagent/main/bin/helpers/nagent_tags.py |
| nagent bin/helpers/nagent_llm.py | https://raw.githubusercontent.com/macton/nagent/main/bin/helpers/nagent_llm.py |
| nagent bin/nagent | https://raw.githubusercontent.com/macton/nagent/main/bin/nagent |
| nagent 8-commit log | https://api.github.com/repos/macton/nagent/commits?per_page=8 |
| nagent 33-file tree | https://api.github.com/repos/macton/nagent/git/trees/main?recursive=1 |
| intent_dsl_survey_20260612 | conductor/tracks/intent_dsl_survey_20260612/report_v1.2.md (1367 lines; the side-trip source) |
8.6 The git log (this session's commits)
dff97b15 nagent: add v2.3 review (full rewrite, longest, breadth + DSL style)
fb7b08a5 nagent: add v2.2 review (style + intent DSL survey cross-refs)
77141363 nagent: add v2 and v2.1 review reports
Plus the related commits from the parallel intent_dsl_survey track:
7105f757 conductor(track): Annotate tape/arena term choice in A.7 + A.8
cbe65b3f conductor(track): intent_dsl_survey v1.2 — add Cluster 8 (Metadesk) + Cluster 9 (Verse)
8.7 The file:line citation index (the nagent source map)
| Citation | File:line | Used in |
|---|---|---|
bin/nagent:606-745 |
build_initial_context |
v2.3 §2.1, §2.10, §3.2, §5.1, §7.3 |
bin/nagent:631-641 |
install_context injection |
v2.3 §3.5, §7.4 |
bin/nagent:642-657 |
project_context_block |
v2.3 §3.5, §7.4 |
bin/nagent:677-685 |
knowledge_block injection |
v2.3 §3.1, §4.1 |
bin/nagent:687-690 |
"Block order is stable-to-volatile" comment | v2.3 §3.2, §5.1 |
bin/nagent:696-706 |
The 8-tag list | v2.3 §2.2, §7.3, §8.1 |
bin/nagent:708-713 |
The 5 protocol rules | v2.3 §2.2, §7.3, §8.6 |
bin/nagent:715-731 |
The conversations-are-data block | v2.3 §3.12, §8.2 |
bin/nagent:970-987 |
conversation_cache_boundaries |
v2.3 §3.2, §5.1 |
bin/nagent:990-1019 |
call_llm |
v2.3 §3.2, §5.1 |
bin/nagent:1013-1014 |
--cache-prefix-chars flow |
v2.3 §3.2, §5.1 |
bin/nagent:1975-2019 |
compact_conversation |
v2.3 §3.4, §6.4 |
bin/nagent:1965-1972 |
compact_prompt_path |
v2.3 §3.4, §6.4 |
bin/nagent:2147-2156 |
--save-conversation |
v2.3 §3.11 |
bin/nagent:2157-2170 |
--branch-conversation |
v2.3 §3.11 |
bin/nagent:2178 |
--compact |
v2.3 §3.4, §6.4 |
bin/helpers/nagent_gc_lib.py:1-700 |
The full harvest library | v2.3 §3.1, §4 |
bin/helpers/nagent_gc_lib.py:13-15 |
The 3 budget constants | v2.3 §3.1, §4.5 |
bin/helpers/nagent_gc_lib.py:25-30 |
The category files map | v2.3 §3.1, §4.1 |
bin/helpers/nagent_gc_lib.py:80+ |
scan_root |
v2.3 §3.1, §4.2 |
bin/helpers/nagent_gc_lib.py:130+ |
load_ledger / save_ledger |
v2.3 §3.1, §4.1 |
bin/helpers/nagent_gc_lib.py:180+ |
parse_harvest_json |
v2.3 §3.1, §4.3 |
bin/helpers/nagent_gc_lib.py:235+ |
harvest_conversation |
v2.3 §3.1, §4.3 |
bin/helpers/nagent_gc_lib.py:245+ |
merge_harvest |
v2.3 §3.1, §3.9, §4.4 |
bin/helpers/nagent_gc_lib.py:380+ |
regenerate_digest |
v2.3 §3.1, §3.10, §4.1 |
bin/helpers/nagent_llm.py:65-80 |
PROVIDERS, DEFAULT_MODELS, CREDENTIAL_ENV |
v2.3 §2.1, §3.6, §7.4 |
bin/helpers/nagent_llm.py:195-220 |
_claude_code_generate |
v2.3 §3.6 |
bin/helpers/nagent_llm.py:cache_prefix_blocks |
The cache_prefix_blocks function | v2.3 §3.2, §5.1 |
bin/helpers/nagent_llm.py:_result_with_usage |
The cache token fold-back | v2.3 §3.2, §5.1 |
bin/helpers/nagent_tags.py:1-160 |
The full tag parser | v2.3 §7.3, §8.4 |
bin/helpers/nagent_file_edit_lib.py:file_id_for_path |
The st_dev:st_ino pattern | v2.3 §2.13, §7.4 |
bin/helpers/nagent_file_split_lib.py:SCORE_BY_TYPE |
The per-language scoring | v2.3 §2.12, §9.2 |
bin/helpers/nagent_file_patch_lib.py:validate_index |
The strict hash check | v2.3 §2.12, §9.4 |
bin/helpers/nagent_file_summarize_lib.py:summarize_content |
The per-segment LLM call | v2.3 §2.12, §9.5 |
bin/nagent-gc:75-130 |
The CLI surface | v2.3 §3.1, §4.2 |
CLAUDE.md:1-150 |
The agent-facing rules file | v2.3 §3.8 |
context/data-oriented-design.md:1-1000+ |
The canonical DOD reference | v2.3 §3.7 |
prompts/compact-conversation.md:1-100 |
The 12-section output structure | v2.3 §3.4, §6.2 |
prompts/compact-conversation.md:90-110 |
The 10-question self-review | v2.3 §3.4, §6.3 |
prompts/harvest-conversation.md:1-30 |
The strict-JSON output schema | v2.3 §3.1, §4.1 |
8.8 The file:line citation index (the Manual Slop source map)
| Citation | Used in |
|---|---|
src/aggregate.py:run |
v2.3 §3.2, §3.5, §5.2 |
src/ai_client.py:2883 (module size) |
v2.3 §2.1 |
src/ai_client.py:send |
v2.3 §2.1, §10.11 |
src/ai_client.py:_send_anthropic |
v2.3 §3.2, §5.1, §5.6 |
src/ai_client.py:_send_gemini |
v2.3 §3.3, §5.6 |
src/ai_client.py:_send_gemini_cli |
v2.3 §3.6 |
src/ai_client.py:_add_history_cache_breakpoint |
v2.3 §3.2, §5.2 |
src/ai_client.py:run_discussion_compression |
v2.3 §3.4, §3.11, §6.6 |
src/ai_client.py:run_subagent_summarization |
v2.3 §2.3 |
src/ai_client.py:_ANTHROPIC_CHUNK_SIZE |
v2.3 §3.2, §5.1 |
src/ai_client.py:_ANTHROPIC_MAX_PROMPT_TOKENS |
v2.3 §3.2, §5.1 |
src/ai_client.py:_GEMINI_CACHE_TTL |
v2.3 §3.3, §5.3 |
src/ai_client.py:PROVIDERS |
v2.3 §2.1 |
src/ai_client.py:MAX_TOOL_ROUNDS |
v2.3 §2.3 |
src/ai_client.py:_CHARS_PER_TOKEN |
v2.3 §2.1 |
src/rag_engine.py:1-384 |
v2.3 §2.8, §3.3 |
src/rag_engine.py:RAGEngine.search |
v2.3 §2.8, §3.3 |
src/rag_engine.py:RAGEngine.index_file |
v2.3 §2.8, §10.10 |
src/rag_engine.py:_validate_collection_dim |
v2.3 §3.3 |
src/models.py:510-559 (FileItem) |
v2.3 §2.6, §3.9, §4.7 |
src/models.py:909-937 (ContextPreset) |
v2.3 §2.6 |
src/app_controller.py:3357 (compress handler) |
v2.3 §3.4, §6.6 |
src/app_controller.py:3503 (branch) |
v2.3 §2.6 |
src/app_controller.py:3236 (save flush) |
v2.3 §2.6 |
src/gui_2.py:3770 (render_discussion_entry) |
v2.3 §2.6 |
src/gui_2.py:3789-3855 (per-entry operations) |
v2.3 §2.6 |
src/gui_2.py:4239-4260 (discussion-level operations) |
v2.3 §2.6 |
src/gui_2.py:4252 (Compress button) |
v2.3 §3.4, §6.6 |
src/commands.py |
v2.3 (background) |
src/command_palette.py |
v2.3 (background) |
src/context_presets.py |
v2.3 §2.6, §3.1 |
src/history.py:8-63 (UISnapshot) |
v2.3 §2.6 |
src/history.py:71 (HistoryManager) |
v2.3 §2.6 |
src/paths.py |
v2.3 §3.5, §3.8 |
src/multi_agent_conductor.py:_spawn_worker |
v2.3 §2.5, §3.12 |
src/multi_agent_conductor.py:run_worker_lifecycle |
v2.3 §2.5, §3.12 |
src/multi_agent_conductor.py:ConductorEngine.run |
v2.3 §2.5, §3.12 |
src/mcp_client.py:dispatch |
v2.3 §2.4, §3.8 |
src/mcp_client.py:_is_allowed |
v2.3 §2.10, §7.5 |
src/mcp_client.py:_resolve_and_check |
v2.3 §2.10, §7.5 |
src/mcp_client.py:get_tool_schemas |
v2.3 §2.4 |
9. End-of-report meta-summary
This session was a 5-round dialectic:
- Round 1: produced v2 (the first delta; heavy RAG emphasis)
- Round 2: produced v2.1 (user-revised; 4 corrections)
- Round 3: produced v2.2 (focused delta; intent DSL cross-refs)
- Round 4: produced v2.3 (the full rewrite; longest; pure nagent corpus)
- Round 5: produced this report (the retrospective)
The user shaped the review through 5 corrections. The session ended with v2.3 — the user's preferred final shape (272KB / 3965 lines; 4× the prior longest).
The next turn is execution: 14 new artifacts (the canonical DOD + AGENTS.md updates + 5 styleguides + 3 project docs + 4 workflow updates) + the 4 HIGH-priority candidates (1, 8, 11, 14) + verification of Candidate 15 (graceful save).
The session's net effect: 4 review files, 3 git commits, 16 future-track candidates, 14 proposed new artifacts, 5 user-corrections documented, 5 open questions for the next turn.
End of session report.