Files
ed b693c3ae4b conductor(track): nagent_review_v3.1 spec + plan (standalone-readable)
Initial v3.1 spec + plan for the delta thickening of v3. v3.1 is the canonical v3 review at depth (>=3,800 LOC main review) with a chunking strategy that v3 lacked. Adds 3 new top-level sections (YAML avoidance, agent context-window, fine-tuning). Load-bearing principle: v3.1 is standalone-readable without consulting v2.3 or v3.
2026-06-20 10:25:38 -04:00

46 KiB

nagent_review_v3.1 Implementation Plan

For agentic workers: v3.1 is Tier 1 sole-authored (mirroring v3 and fable_review_20260617). The "tasks" below describe the structure each piece of work must produce; the actual prose is written by the Tier 1 author during execution. Steps use checkbox (- [ ]) syntax for tracking.

Goal: Produce the v3.1 delta thickening of the nagent review — expand the 11 cluster sections in nagent_review_v3_20260619.md from ~60 lines/cluster to 300-450 lines/cluster (per the chunking strategy), append 3 new top-level sections (§12 YAML avoidance, §13 Agent context-window observations, §14 Fine-tuning observations), refresh the side artifacts, and write a delta-summary doc + bridge doc.

Architecture: 15 phases. Phase 1 is setup + audit. Phases 2-12 are one phase per cluster (thickening — each phase deepens the v3 cluster to the v3.1 chunking target). Phase 13 writes the 3 new sections. Phase 14 refreshes the side artifacts (comparison_table, decisions, new takeaways bridge). Phase 15 verifies the chunking strategy + format commitment. Each phase commits atomically with a git note.

Tech Stack: Markdown (the deliverable). git for atomic per-phase commits + git notes for per-task summaries. state.toml for per-task commit SHA tracking. manual-slop MCP tools for file reads. webfetch for the GitHub commit/file fetches + the fine-tuning vendor pricing pages.

Spec pair: This plan implements spec_v3.1.md in the same track directory. Read the spec first; the plan is executable against the spec.

Naming convention: All v3.1 file basenames use 20260620 (today, the day v3.1 was initiated). The main review file (nagent_review_v3_20260619.md) keeps its v3 filename; only the new files use 20260620.


File Structure

Files created in v3.1

Path Purpose
conductor/tracks/nagent_review_20260608/plan_v3.1.md This file.
conductor/tracks/nagent_review_20260608/spec_v3.1.md The v3.1 spec.
conductor/tracks/nagent_review_20260608/nagent_review_v3_1_20260620.md The v3.1 delta summary doc. ~200 LOC. Points to the thickened sections + summarizes the new sections.
conductor/tracks/nagent_review_20260608/nagent_takeaways_v3_1_20260620.md The v3.1 bridge doc. ~150 LOC. 5-part structure.

Files refreshed in v3.1 (REPLACE / THICKEN in place)

Path Refresh action
conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md THICKEN: each cluster section grows from ~60 lines to 300-450 lines (per cluster) via the chunking strategy. 3 new sections (§12-§14) appended. Total target: ≥3,800 lines.
conductor/tracks/nagent_review_20260608/comparison_table.md REPLACE: refreshed for v3.1. Adds rows for §12, §13, §14. Target: 100-130 lines.
conductor/tracks/nagent_review_20260608/decisions.md REPLACE: refreshed for v3.1. Adds 3-5 new candidates (Candidates 27-30). Target: 180-220 lines.
conductor/tracks/nagent_review_20260608/metadata.json REFRESH: v3.1 fields.
conductor/tracks/nagent_review_20260608/state.toml REFRESH: v3.1 phases + tasks.

Files NOT modified in v3.1

Path Why preserved
conductor/tracks/nagent_review_20260608/spec_v3.md + plan_v3.md v3 spec/plan pair; historical.
conductor/tracks/nagent_review_20260608/nagent_review_v2_*.md + report.md All v2.x historical.
conductor/tracks/nagent_review_20260608/nagent_takeaways_v3_20260619.md v3-era bridge; preserved unchanged.
conductor/tracks.md Per "B. Same track" decision.

File responsibility boundaries

  • nagent_review_v3_20260619.md owns the thickened cluster sections + the 3 new top-level sections (§12-§14). The filename is preserved because the content grows in place — v3.1 is a delta thickening, not a new review.
  • nagent_review_v3_1_20260620.md owns the delta summary — a quick-reference doc that points to the thickened sections + summarizes the new sections. The "v3.1 added X" reference.
  • nagent_takeaways_v3_1_20260620.md owns the bridge doc (TL;DR + cross-ref table + new candidates + sibling pointer).
  • comparison_table.md owns the flat side-by-side table for v3.1's 14 sections (11 clusters + 3 new).
  • decisions.md owns the v3.1 candidate list (v3's 25-30 + v3.1's 3-5 new).
  • metadata.json + state.toml own the machine-readable summary + per-task progress.

The Chunking Strategy (the new constraint)

These targets are enforced per cluster. Phase 15 verifies all of them mechanically.

Metric Target Verification command
Main review total LOC ≥3,800 lines wc -l conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md
Per-cluster LOC 300-450 lines (deep-dive clusters §9-§11: 400-500) per-cluster wc -l on the cluster section
Per-cluster sub-sections 4-7 per-cluster grep -c "^#### §N\."
Per-cluster source-read citations ≥30 per-cluster grep for path/to/file:L[0-9]+ or prompts/[a-z_-]+.md or bin/[a-z_-]+ or commit SHA
Per-cluster honest gaps ≥6 per-cluster grep for Honest gaps bullet count
Per-cluster Manual Slop implications 2-3 paragraphs with file:line citations manual inspection per cluster
Frontmatter + §0 + §12-14 + references 200-400 lines wc -l

A failure on any metric = back to the cluster phase, add depth, re-commit, re-verify.


Phase 1: Setup + audit

Focus: Initialize v3.1's track-state plumbing + audit the v3 baseline.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/metadata.json

  • Modify: conductor/tracks/nagent_review_20260608/state.toml

  • Create: conductor/tracks/nagent_review_20260608/nagent_review_v3_1_20260620.md (the delta summary skeleton)

  • Step 1.1: Refresh metadata.json with v3.1 fields

Add v3.1 fields to metadata.json (preserving v3 fields below):

{
  "version": "v3.1",
  "v3_1_initialized": "2026-06-20",
  "v3_1_is_delta_of": "v3",
  "v3_1_baseline": {
    "v3_review_commit": "195b0f45",
    "nagent_commit": "a1f0680",
    "case_study_repos_at": "main"
  },
  "chunking_strategy": {
    "main_review_loc_floor": 3800,
    "per_cluster_loc_target": "300-450",
    "deep_dive_clusters_loc_target": "400-500",
    "per_cluster_sub_sections": "4-7",
    "per_cluster_source_read_citations": ">=30",
    "per_cluster_honest_gaps": ">=6",
    "per_cluster_manual_slop_implications": "2-3 paragraphs with file:line citations",
    "frontmatter_and_new_sections_loc_target": "200-400"
  },
  "scope_v3_1": {
    "new_files": [
      "spec_v3.1.md",
      "plan_v3.1.md",
      "nagent_review_v3_1_20260620.md",
      "nagent_takeaways_v3_1_20260620.md"
    ],
    "thickened_files": [
      "nagent_review_v3_20260619.md"
    ],
    "replaced_files": [
      "comparison_table.md",
      "decisions.md"
    ],
    "refreshed_files": [
      "metadata.json",
      "state.toml"
    ],
    "deleted_files": []
  },
  "v3_1_observations_added": [
    "YAML avoidance (no YAML in new Manual Slop artifacts; use markdown + custom DSL)",
    "Agent context-window observations (warm-up ~100-150k; window up to ~500k MiniMax M3; safe zone 250-350k; compact-re-warm-continue cycle)",
    "Fine-tuning observations (current generalized models bottlenecked by not having conventions baked in; Together.ai + 5-6 other prosumer fine-tuning vendors)"
  ],
  "verification_criteria_v3_1": [
    "Main review >=3,800 lines",
    "Each cluster 300-450 lines (deep-dive clusters 400-500)",
    "Each cluster has 4-7 sub-sections",
    "Each cluster has >=30 source-read citations",
    "Each cluster has >=6 honest-gap bullets",
    "Each cluster has 2-3 paragraphs of Manual Slop implications with file:line citations",
    "Format commitment verified (5 commitments)",
    "Sections §12, §13, §14 present at target LOC ranges",
    "comparison_table.md, decisions.md, nagent_takeaways_v3_1_20260620.md all committed with v3.1 deltas",
    "spec_v3.1.md + plan_v3.1.md committed",
    "metadata.json + state.toml refreshed",
    "One commit per phase with git notes",
    "v3 preserved (git log -p recoverable)"
  ]
}

Preserve all v3 fields below. v3.1 fields above; v3 fields below.

  • Step 1.2: Initialize state.toml v3.1 fields

Add v3.1 phase + task entries to state.toml below the v3 entries:

[v3_1_phases]
phase_1 = { status = "in_progress", checkpointsha = "", name = "Setup + audit" }
phase_2 = { status = "pending", checkpointsha = "", name = "Thicken §1 Campaigns cluster" }
phase_3 = { status = "pending", checkpointsha = "", name = "Thicken §2 Conversation safety net cluster" }
phase_4 = { status = "pending", checkpointsha = "", name = "Thicken §3 Hooks cluster" }
phase_5 = { status = "pending", checkpointsha = "", name = "Thicken §4 Project-local roots cluster" }
phase_6 = { status = "pending", checkpointsha = "", name = "Thicken §5 Provider expansion cluster" }
phase_7 = { status = "pending", checkpointsha = "", name = "Thicken §6 Delegation rewrite cluster" }
phase_8 = { status = "pending", checkpointsha = "", name = "Thicken §7 Robustness cluster" }
phase_9 = { status = "pending", checkpointsha = "", name = "Thicken §8 Operating rules cluster" }
phase_10 = { status = "pending", checkpointsha = "", name = "Thicken §9 Case-study methodology cluster" }
phase_11 = { status = "pending", checkpointsha = "", name = "Thicken §10 PEP case study cluster" }
phase_12 = { status = "pending", checkpointsha = "", name = "Thicken §11 Collisions case study cluster" }
phase_13 = { status = "pending", checkpointsha = "", name = "Write new sections §12-§14 (YAML avoidance, Agent context-window, Fine-tuning)" }
phase_14 = { status = "pending", checkpointsha = "", name = "Refresh side artifacts (comparison_table, decisions, takeaways_v3_1)" }
phase_15 = { status = "pending", checkpointsha = "", name = "Chunking-strategy + format-commitment verification + final" }

[v3_1_tasks]
t1_1 = { status = "in_progress", commit_sha = "", description = "Refresh metadata.json with v3.1 fields" }
t1_2 = { status = "pending", commit_sha = "", description = "Initialize state.toml v3.1 fields" }
t1_3 = { status = "pending", commit_sha = "", description = "Confirm spec_v3.1.md + plan_v3.1.md exist and are approved" }
t1_4 = { status = "pending", commit_sha = "", description = "Write nagent_review_v3_1_20260620.md delta summary skeleton" }
t1_5 = { status = "pending", commit_sha = "", description = "Commit Phase 1 setup" }

[v3_1_verification]
v3_1_main_review_loc_floor_met = false
v3_1_per_cluster_depth_met = false
v3_1_per_cluster_sub_sections_met = false
v3_1_per_cluster_citations_met = false
v3_1_per_cluster_honest_gaps_met = false
v3_1_per_cluster_manual_slop_cited = false
v3_1_new_sections_present = false
v3_1_format_commitment_verified = false
v3_1_side_artifacts_refreshed = false
v3_1_track_artifacts_committed = false
v3_1_commits_with_notes = false
v3_1_v3_preserved = false

Preserve all v3 fields below. v3.1 fields above; v3 fields below.

  • Step 1.3: Confirm spec_v3.1.md + plan_v3.1.md exist

Verify both files exist in the track directory. (If they don't, stop and report to the user.)

  • Step 1.4: Write nagent_review_v3_1_20260620.md delta summary skeleton

Create the file with the skeleton:

# nagent_review_v3_1_20260620 — Delta Summary

**Date:** 2026-06-20
**Status:** Draft (Phase 1 setup complete; cluster thickening in progress)
**Owner:** Tier 1 Orchestrator
**Delta from:** v3 (`nagent_review_v3_20260619.md`, 664 lines, 2026-06-19)
**Spec pair:** `spec_v3.1.md` + `plan_v3.1.md`

## What v3.1 changed

### Per-cluster thickening (11 clusters)

The main review file (`nagent_review_v3_20260619.md`) is thickened in place. Each cluster section grows from ~60 lines to 300-450 lines (or 400-500 for deep-dive clusters §9-§11). The thickening follows the chunking strategy (per spec_v3.1.md §4.1).

| § | Cluster | v3 lines | v3.1 target | Phase |
|---|---|---|---|---|
| §1 | Campaigns | ~50 | 350-450 | Phase 2 |
| §2 | Conversation safety net | ~60 | 350-450 | Phase 3 |
| §3 | Hooks | ~60 | 350-450 | Phase 4 |
| §4 | Project-local roots | ~50 | 300-400 | Phase 5 |
| §5 | Provider expansion | ~50 | 300-400 | Phase 6 |
| §6 | Delegation rewrite | ~50 | 300-400 | Phase 7 |
| §7 | Robustness | ~60 | 350-450 | Phase 8 |
| §8 | Operating rules | ~60 | 300-400 | Phase 9 |
| §9 | Case-study methodology | ~65 | 400-500 | Phase 10 |
| §10 | PEP case study | ~50 | 400-500 | Phase 11 |
| §11 | Collisions case study | ~50 | 400-500 | Phase 12 |

### Three new top-level sections (Phase 13)

- **§12 YAML avoidance** (~200-300 lines): catalogs every YAML use site in nagent; flags them as "do not adopt" for Manual Slop; documents the markdown + custom DSL alternative.
- **§13 Agent context-window observations** (~200-300 lines): captures the user's OpenCode + MiniMax M3 empirical findings; notes nagent's stricter enforcement; documents Manual Slop's partial mitigation via docs/ + conductor/ markdown navigation; flags the "agents forget to read" shortcoming; proposes nagent's `--hook-per-run` as the pattern for closing the gap.
- **§14 Fine-tuning observations** (~150-250 lines): captures the diagnosis + Together.ai observation + lists 6 prosumer fine-tuning vendors in a comparison table; flags that vendor analysis is out of scope.

### Side artifacts refresh (Phase 14)

- `comparison_table.md` REPLACED with v3.1 content (adds rows for §12, §13, §14).
- `decisions.md` REPLACED with v3.1 content (adds Candidates 27-30).
- `nagent_takeaways_v3_1_20260620.md` NEW bridge doc (~150 LOC, 5-part structure).

## What v3.1 did not change

- The 11-cluster scheme from v3 stands.
- All v2.x historical reviews + v3 spec/plan/bridge preserved unchanged.
- `conductor/tracks.md` not modified.
- No new commits to nagent or the case-study repos are reviewed (v3 baseline preserved).

## Verification

Per spec_v3.1.md §7 verification criteria (12 criteria). All verified in Phase 15.
  • Step 1.5: Commit Phase 1 setup
cd C:/projects/manual_slop
git add conductor/tracks/nagent_review_20260608/spec_v3.1.md \
        conductor/tracks/nagent_review_20260608/plan_v3.1.md \
        conductor/tracks/nagent_review_20260608/metadata.json \
        conductor/tracks/nagent_review_20260608/state.toml \
        conductor/tracks/nagent_review_20260608/nagent_review_v3_1_20260620.md
git commit -m "conductor(track): nagent_review_v3.1 Phase 1 setup + audit"
git notes add -m "Phase 1 complete. Refreshed metadata.json with v3.1 fields (chunking strategy, scope_v3_1, observations_added, verification_criteria_v3_1). Initialized state.toml v3.1 phases + tasks. Wrote nagent_review_v3_1_20260620.md delta summary skeleton." $(git log -1 --format='%H')

Update state.toml: mark t1_1, t1_2, t1_3, t1_4, t1_5 as completed with their commit SHAs.


Phase 2: Thicken §1 Campaigns cluster

Focus: Expand the §1 Campaigns cluster from ~50 lines to 350-450 lines per the chunking strategy.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§1)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: 24cf16d, 199a36b, f3ec090, c1d2cad, 6443d70, 7a7e242 (unchanged from v3)

  • Step 2.1: Read v3's §1 in full + identify what's thin

Use manual-slop_read_file or get_file_slice to read v3's §1 (lines ~18-64 of the main review). Identify what's thin:

  • Per-commit detail (6 commits covered in 1 paragraph)

  • Sub-sections (no §1.1 / §1.2 / etc.)

  • Manual Slop implications (1 paragraph)

  • Source-read citations (need to expand from current ~13 to ≥30)

  • Honest gaps (currently 1 + 1 continued; need ≥6)

  • Step 2.2: Source-read the 6 campaigns commits + their files

For each commit (24cf16d, 199a36b, f3ec090, c1d2cad, 6443d70, 7a7e242):

  • Fetch https://github.com/macton/nagent/commit/<sha> and extract the diff + full commit message.
  • Read the actual files changed (e.g., bin/nagent-campaign, bin/helpers/nagent_campaign_lib.py, bin/helpers/nagent_distill_lib.py:228-260 + :793-979, bin/nagent-distill:107-200, prompts/campaign-decompose.md, prompts/campaign-item.md, prompts/knowledge-merge.md, prompts/knowledge-graduate.md, prompts/create-readme.md:248-251, issues/0002-campaign-system.md, tests/test_nagent_campaign.py, tests/test_nagent_distill.py).

Identify the per-commit detail to add (per-commit sub-section).

  • Step 2.3: Read Manual Slop subsystems for the implications section

For the Manual Slop implications sub-section, read:

  • conductor/tracks/ layout + the per-track state.toml + metadata.json + spec.md/plan.md structure
  • src/multi_agent_conductor.py (the MMA WorkerPool)
  • src/app_controller.py (the _predefined_callbacks / _gettable_fields Hook API registries — the closest analog to the campaigns abstraction)
  • conductor/code_styleguides/knowledge_artifacts.md

Cite file:line for each Manual Slop claim.

  • Step 2.4: Design the sub-section structure

§1 Campaigns cluster gets 6 sub-sections:

  • §1.1 What Campaigns Adds (overview, 30-50 lines)
  • §1.2 The Driver Phases (the 6-phase update command, 50-70 lines, code-shape sketch)
  • §1.3 The Invariants (the 4 load-bearing rules, 40-60 lines)
  • §1.4 Per-Commit Detail (the 6 commits, 80-120 lines)
  • §1.5 Manual Slop Implications (2-3 paragraphs with citations, 50-80 lines)
  • §1.6 Honest Gaps (≥6 bullets, 40-60 lines)
  • §1.7 Code-Shape Sketch (survey grammar + SSDL, 30-50 lines)

Plus the closing fields (Source-read citations: ≥30 entries; Decision candidate; Cross-refs).

  • Step 2.5: Write the thickened §1

Replace the §1 section in nagent_review_v3_20260619.md with the 6-sub-section version following the template (per spec_v3.1.md §4.2). Verify the chunking strategy metrics:

  • §1 total: 350-450 lines

  • §1 sub-sections: 6

  • §1 source-read citations: ≥30

  • §1 honest gaps: ≥6

  • §1 Manual Slop implications: 2-3 paragraphs with file:line citations

  • Step 2.6: Commit §1 thickening + git note

cd C:/projects/manual_slop
git add conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md \
        conductor/tracks/nagent_review_20260608/state.toml
git commit -m "conductor(track): nagent_review_v3.1 thicken §1 Campaigns cluster"
git notes add -m "Phase 2 complete. §1 Campaigns thickened from ~50 lines to <N> lines. 6 sub-sections, <N> source-read citations, <N> honest gaps, 3 Manual Slop implications with file:line citations. Chunking strategy metrics met for §1." $(git log -1 --format='%H')

Update state.toml: phase_2.status = "completed", phase_2.checkpointsha = "<first 7 chars>".


Phase 3: Thicken §2 Conversation safety net cluster

Focus: Expand §2 from ~60 lines to 350-450 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§2)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: 38d3d4f, 6426a67 (unchanged from v3)

  • Step 3.1: Read v3's §2 in full + identify what's thin
  • Step 3.2: Source-read the 2 commits + their files (bin/nagent:1455-1687 + :1840-1881 + :2463-2677 + :2819, bin/helpers/nagent_distill_lib.py:587-654 + :851-862, config.example.json:3-7, prompts/checkpoint-conversation.md, issues/0004-conversation-safety-net.md, tests/test_nagent_safety.py)
  • Step 3.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/error_handling.md, src/discussion.py or similar for the discussion save path, src/ai_client.py:run_discussion_compression)
  • Step 3.4: Design sub-section structure (6 sub-sections)
  • Step 3.5: Write the thickened §2 — verify chunking metrics
  • Step 3.6: Commit §2 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §2 Conversation safety net cluster"
git notes add -m "Phase 3 complete. §2 thickened from ~60 lines to <N> lines. Chunking strategy metrics met for §2." $(git log -1 --format='%H')

Phase 4: Thicken §3 Hooks cluster

Focus: Expand §3 from ~60 lines to 350-450 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§3)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: a4fb141 (nagent) + both case-study repos (unchanged from v3)

  • Step 4.1: Read v3's §3 in full + identify what's thin
  • Step 4.2: Source-read the hooks commit + the case-study harness scripts
  • Step 4.3: Read Manual Slop subsystems for implications (docs/guide_ai_client.md Tier 4 QA, docs/guide_api_hooks.md ApiHookClient, src/app_controller.py:_predefined_callbacks)
  • Step 4.4: Design sub-section structure (6 sub-sections including a deep sub-section on the case-study harness scripts)
  • Step 4.5: Write the thickened §3 — verify chunking metrics
  • Step 4.6: Commit §3 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §3 Hooks cluster"
git notes add -m "Phase 4 complete. §3 thickened from ~60 lines to <N> lines. Hooks deep-dive + both case-study harness scripts cited. Chunking strategy metrics met for §3." $(git log -1 --format='%H')

Phase 5: Thicken §4 Project-local roots cluster

Focus: Expand §4 from ~50 lines to 300-400 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§4)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: 54c8741, 557dd39, 0b9d1a2, 023e23a (unchanged from v3)

  • Step 5.1: Read v3's §4 in full + identify what's thin
  • Step 5.2: Source-read the 4 commits + their files (bin/helpers/nagent_cli.py:11-86 + :109-141, bin/helpers/nagent_llm.py:55-72, bin/nagent:640-748 + :2075-2295, .gitignore)
  • Step 5.3: Read Manual Slop subsystems for implications (src/paths.py for the path resolution pattern, [conductor].dir in manual_slop.toml, tests/artifacts/ gitignore discipline)
  • Step 5.4: Design sub-section structure (5 sub-sections)
  • Step 5.5: Write the thickened §4 — verify chunking metrics
  • Step 5.6: Commit §4 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §4 Project-local roots cluster"
git notes add -m "Phase 5 complete. §4 thickened from ~50 lines to <N> lines. Chunking strategy metrics met for §4." $(git log -1 --format='%H')

Phase 6: Thicken §5 Provider expansion cluster

Focus: Expand §5 from ~50 lines to 300-400 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§5)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: bdfa2a6, 5075f6e, 2edc7ee (unchanged from v3)

  • Step 6.1: Read v3's §5 in full + identify what's thin
  • Step 6.2: Source-read the 3 commits + their files (Together provider implementation, MODEL_CONTEXT_WINDOWS, model_context_window(), --list-providers CLI flag, claude-code billing fix, spinner name change)
  • Step 6.3: Read Manual Slop subsystems for implications (src/ai_client.py for the multi-provider pattern, conductor/tech-stack.md for the 8 providers, docs/guide_ai_client.md for the cache strategy)
  • Step 6.4: Design sub-section structure (5 sub-sections including a table of the 6 providers with their context windows)
  • Step 6.5: Write the thickened §5 — verify chunking metrics
  • Step 6.6: Commit §5 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §5 Provider expansion cluster"
git notes add -m "Phase 6 complete. §5 thickened from ~50 lines to <N> lines. 6 providers table + per-model context windows. Chunking strategy metrics met for §5." $(git log -1 --format='%H')

Phase 7: Thicken §6 Delegation rewrite cluster

Focus: Expand §6 from ~50 lines to 300-400 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§6)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: d56f0f0, 65787a6, 315fe9e (unchanged from v3)

  • Step 7.1: Read v3's §6 in full + identify what's thin
  • Step 7.2: Source-read the 3 commits + their files (the recursion bug, the fix, the context-isolation rationale, the test fixup)
  • Step 7.3: Read Manual Slop subsystems for implications (src/multi_agent_conductor.py MMA WorkerPool, scripts/mma_exec.py delegation, docs/guide_mma.md)
  • Step 7.4: Design sub-section structure (5 sub-sections with a deep sub-section on the recursion bug)
  • Step 7.5: Write the thickened §6 — verify chunking metrics
  • Step 7.6: Commit §6 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §6 Delegation rewrite cluster"
git notes add -m "Phase 7 complete. §6 thickened from ~50 lines to <N> lines. Recursion bug deep-dive + context-isolation rationale. Chunking strategy metrics met for §6." $(git log -1 --format='%H')

Phase 8: Thicken §7 Robustness cluster

Focus: Expand §7 from ~60 lines to 350-450 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§7)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: 065168c, 6b762da, 12c35b7, 49e07f3 (unchanged from v3)

  • Step 8.1: Read v3's §7 in full + identify what's thin
  • Step 8.2: Source-read the 4 commits + their files (non-protocol tolerance, dedupe_nodes, shell-before-next ordering, per-conversation scratch)
  • Step 8.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/error_handling.md, Result[T] convention, scripts/audit_exception_handling.py)
  • Step 8.4: Design sub-section structure (6 sub-sections, one per commit)
  • Step 8.5: Write the thickened §7 — verify chunking metrics
  • Step 8.6: Commit §7 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §7 Robustness cluster"
git notes add -m "Phase 8 complete. §7 thickened from ~60 lines to <N> lines. 4 commits with per-commit sub-sections. Chunking strategy metrics met for §7." $(git log -1 --format='%H')

Phase 9: Thicken §8 Operating rules cluster

Focus: Expand §8 from ~60 lines to 300-400 lines.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§8)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source commits: a1f0680 (unchanged from v3)

  • Step 9.1: Read v3's §8 in full + identify what's thin
  • Step 9.2: Source-read the operating-rules commit + the full data-oriented-design.md file (not just the diff)
  • Step 9.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/data_oriented_design.md — the project's derived styleguide; document the delta between nagent's file and the project's)
  • Step 9.4: Design sub-section structure (5 sub-sections with a deep sub-section on the Q9 expansion)
  • Step 9.5: Write the thickened §8 — verify chunking metrics
  • Step 9.6: Commit §8 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §8 Operating rules cluster"
git notes add -m "Phase 9 complete. §8 thickened from ~60 lines to <N> lines. Q9 expansion deep-dive. Chunking strategy metrics met for §8." $(git log -1 --format='%H')

Phase 10: Thicken §9 Case-study methodology cluster

Focus: Expand §9 from ~65 lines to 400-500 lines (deep-dive cluster).

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§9)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source: both pep-copt and differentiable-collisions-optc repos (unchanged from v3)

  • Step 10.1: Read v3's §9 in full + identify what's thin
  • Step 10.2: Source-read both case-study repos (4 prompts in each + both harness scripts + both OPTIMIZATION-LOG.md files)
  • Step 10.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/knowledge_artifacts.md, conductor/prompts/ if it exists, the project's own discussion history pattern)
  • Step 10.4: Design sub-section structure (6 sub-sections including the 5-element pattern decomposition)
  • Step 10.5: Write the thickened §9 — verify chunking metrics
  • Step 10.6: Commit §9 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §9 Case-study methodology cluster"
git notes add -m "Phase 10 complete. §9 thickened from ~65 lines to <N> lines. 5-element pattern decomposition deep-dive. Chunking strategy metrics met for §9." $(git log -1 --format='%H')

Phase 11: Thicken §10 PEP case study cluster

Focus: Expand §10 from ~50 lines to 400-500 lines (deep-dive cluster).

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§10)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source: macton/pep-copt (unchanged from v3)

  • Step 11.1: Read v3's §10 in full + identify what's thin
  • Step 11.2: Source-read the full pep-copt repo (all 5 commits + README + OPTIMIZATION-LOG + 4 prompts + harness)
  • Step 11.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/data_oriented_design.md for the operating rules Acton applied)
  • Step 11.4: Design sub-section structure (6 sub-sections including the per-image results table + the kept/rejected optimizations table + the size/speed frontier table)
  • Step 11.5: Write the thickened §10 — verify chunking metrics
  • Step 11.6: Commit §10 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §10 PEP case study cluster"
git notes add -m "Phase 11 complete. §10 thickened from ~50 lines to <N> lines. Full per-image results + kept/rejected optimizations + size/speed frontier. Chunking strategy metrics met for §10." $(git log -1 --format='%H')

Phase 12: Thicken §11 Collisions case study cluster

Focus: Expand §11 from ~50 lines to 400-500 lines (deep-dive cluster).

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (§11)
  • Modify: conductor/tracks/nagent_review_20260608/state.toml

Source: macton/differentiable-collisions-optc (unchanged from v3)

  • Step 12.1: Read v3's §11 in full + identify what's thin
  • Step 12.2: Source-read the full differentiable-collisions-optc repo (all 5 commits + README + OPTIMIZATION-LOG + 4 prompts + harness + the cited arXiv paper)
  • Step 12.3: Read Manual Slop subsystems for implications (conductor/code_styleguides/data_oriented_design.md for the operating rules Acton applied)
  • Step 12.4: Design sub-section structure (6 sub-sections including the per-type specialization deep-dive + the match contract + the closed-form contact witnesses)
  • Step 12.5: Write the thickened §11 — verify chunking metrics
  • Step 12.6: Commit §11 thickening + git note
git commit -m "conductor(track): nagent_review_v3.1 thicken §11 Collisions case study cluster"
git notes add -m "Phase 12 complete. §11 thickened from ~50 lines to <N> lines. Per-type specialization + match contract + closed-form contact witnesses. Chunking strategy metrics met for §11." $(git log -1 --format='%H')

Phase 13: Write new sections §12-§14

Focus: Append the 3 new top-level sections to the main review.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (append §12, §13, §14)

  • Modify: conductor/tracks/nagent_review_20260608/state.toml

  • Step 13.1: Write §12 YAML avoidance (~200-300 lines)

Append the §12 section after §11. Follow the sub-section structure:

  • §12.1 Where nagent uses YAML (catalog with file:line citations)
  • §12.2 Why YAML is "do not adopt" for Manual Slop (4-5 reasons)
  • §12.3 The markdown + custom DSL alternative (concrete proposal)
  • §12.4 Cross-refs (intent_dsl_survey, superpowers_review, conductor/presets.py, conductor/personas.py)

≥30 source-read citations. ≥6 honest gaps. 2-3 paragraphs of Manual Slop implications.

  • Step 13.2: Write §13 Agent context-window observations (~200-300 lines)

Append §13. Sub-sections:

  • §13.1 The warm-up + window + safe-zone numbers
  • §13.2 nagent's enforcement (per-turn hooks + safety net + distill)
  • §13.3 Manual Slop's partial mitigation (docs/ + conductor/ markdown navigation)
  • §13.4 The shortcoming (agents forget/fail to read)
  • §13.5 Decision candidate (Candidate 28: per-turn ground-truth hook)

≥30 source-read citations. ≥6 honest gaps. 2-3 paragraphs of Manual Slop implications.

  • Step 13.3: Write §14 Fine-tuning observations (~150-250 lines)

Append §14. Sub-sections:

  • §14.1 The diagnosis (current models bottlenecked)
  • §14.2 Together.ai as one noticed vendor
  • §14.3 Prosumer fine-tuning vendor survey (the 6-vendor table)
  • §14.4 Vendor analysis is out of scope for v3.1

≥20 source-read citations (fewer, since this is observational). ≥6 honest gaps. 2-3 paragraphs of Manual Slop implications (mostly the dataset-curation angle).

  • Step 13.4: Commit §12-§14 + git note
cd C:/projects/manual_slop
git add conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md \
        conductor/tracks/nagent_review_20260608/state.toml
git commit -m "conductor(track): nagent_review_v3.1 §12-§14 new sections (YAML, agent context, fine-tuning)"
git notes add -m "Phase 13 complete. §12 YAML avoidance (~<N> lines), §13 Agent context-window observations (~<N> lines), §14 Fine-tuning observations (~<N> lines). Total new content: ~<N> lines. 3 new top-level sections appended to main review." $(git log -1 --format='%H')

Phase 14: Refresh side artifacts

Focus: Replace comparison_table.md + decisions.md; create nagent_takeaways_v3_1_20260620.md. Refresh the delta summary doc.

Files:

  • Replace: conductor/tracks/nagent_review_20260608/comparison_table.md

  • Replace: conductor/tracks/nagent_review_20260608/decisions.md

  • Create: conductor/tracks/nagent_review_20260608/nagent_takeaways_v3_1_20260620.md

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_1_20260620.md (fill in the summary with the actual thickened section LOC counts)

  • Step 14.1: Write comparison_table.md (target 100-130 lines)

Per spec_v3.1.md §4.4.1. Includes 11 cluster rows + 3 new section rows + v2.3 update rows + sibling-review cross-refs.

  • Step 14.2: Write decisions.md (target 180-220 lines)

Per spec_v3.1.md §4.4.2. Includes v2.3 → v3 → v3.1 status mapping at top + all 25-30 v3 candidates + 3-5 new v3.1 candidates (27-30).

  • Step 14.3: Write nagent_takeaways_v3_1_20260620.md (target ~150 LOC)

Per spec_v3.1.md §4.4.3. 5-part structure:

  1. TL;DR (1 paragraph)
  2. Cross-reference table (~15 rows)
  3. The new v3.1 candidates (3-5)
  4. The v3 candidates v3.1 supersedes (0-2)
  5. Sibling-review pointer (fable_review, intent_dsl_survey, superpowers_review, project files)
  • Step 14.4: Update nagent_review_v3_1_20260620.md delta summary

Fill in the actual LOC counts for each cluster + the 3 new sections + the side artifact sizes. Reference the commits.

  • Step 14.5: Commit Phase 14 + git note
git add conductor/tracks/nagent_review_20260608/comparison_table.md \
        conductor/tracks/nagent_review_20260608/decisions.md \
        conductor/tracks/nagent_review_20260608/nagent_takeaways_v3_1_20260620.md \
        conductor/tracks/nagent_review_20260608/nagent_review_v3_1_20260620.md \
        conductor/tracks/nagent_review_20260608/state.toml
git commit -m "conductor(track): nagent_review_v3.1 Phase 14 refresh side artifacts"
git notes add -m "Phase 14 complete. comparison_table.md (<N> rows), decisions.md (<N> candidates + status mapping), nagent_takeaways_v3_1_20260620.md (<N> LOC bridge), delta summary filled in." $(git log -1 --format='%H')

Phase 15: Chunking-strategy + format-commitment verification + final

Focus: Run the chunking-strategy + format-commitment verifications mechanically + final commit.

Files:

  • Modify: conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md (only if verification reveals gaps)

  • Modify: conductor/tracks/nagent_review_20260608/state.toml

  • Step 15.1: Run chunking verification #1 (main review LOC floor)

cd C:/projects/manual_slop
wc -l conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md

Expected: ≥3,800 lines.

  • Step 15.2: Run chunking verification #2 (per-cluster depth)

For each cluster §1-§11, count the lines in the section:

# Example for §1 (Campaigns): extract lines between §1 and §2 markers
sed -n '/^## §1 Campaigns/,/^## §2 Conversation safety net/p' conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md | wc -l

Expected per cluster:

  • §1: 350-450 lines
  • §2: 350-450 lines
  • §3: 350-450 lines
  • §4: 300-400 lines
  • §5: 300-400 lines
  • §6: 300-400 lines
  • §7: 350-450 lines
  • §8: 300-400 lines
  • §9: 400-500 lines (deep-dive)
  • §10: 400-500 lines (deep-dive)
  • §11: 400-500 lines (deep-dive)

If a cluster is under the minimum, return to the relevant cluster phase and add depth.

  • Step 15.3: Run chunking verification #3 (per-cluster sub-sections)

For each cluster, count #### §N.x headings:

grep -cE '^#### §1\.' conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md

Expected: 4-7 sub-sections per cluster.

  • Step 15.4: Run chunking verification #4 (per-cluster citations)

For each cluster, count file:line citations (file paths ending in :L[0-9]+ or commit SHAs 7+ chars):

# This is a heuristic; the per-cluster citation count is verified manually.

Expected: ≥30 per cluster.

  • Step 15.5: Run chunking verification #5 (per-cluster honest gaps)

For each cluster, count bullet points under the "Honest gaps" sub-section.

Expected: ≥6 per cluster.

  • Step 15.6: Run chunking verification #6 (Manual Slop implications)

Manual inspection per cluster. Expected: 2-3 paragraphs with Manual Slop file:line citations.

  • Step 15.7: Run format verification #7 (no JSON blocks)
grep -n '```json' conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md

Expected: no matches.

  • Step 15.8: Run format verification #8 (7-column tables)
grep -c '^| Symbol |' conductor/tracks/nagent_review_20260608/comparison_table.md

Expected: ≥1.

  • Step 15.9: Run format verification #9 (SSDL + survey grammar)
grep -nE '\{ssdl\}|name := value|for [a-z]+ \.\. [a-z]+|tape \{ |try \{ .* recover|sandbox \{ |audit msg|fuzzy \{ ' conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md

Expected: ≥1 of SSDL tags, ≥1 of survey grammar.

  • Step 15.10: Run new-sections verification #10 (§12-§14 present)
grep -nE '^## §1[2-4]' conductor/tracks/nagent_review_20260608/nagent_review_v3_20260619.md

Expected: 3 matches (§12, §13, §14).

  • Step 15.11: Update state.toml v3.1_verification fields

Set all [v3_1_verification] fields to true if verification passed. Set to false for any that did not pass; the next iteration must address them.

  • Step 15.12: Final commit + git note + state update
cd C:/projects/manual_slop
git add conductor/tracks/nagent_review_20260608/state.toml
git commit -m "conductor(track): nagent_review_v3.1 Phase 15 chunking-strategy + format-commitment verification + final"
git notes add -m "Phase 15 complete. All 12 verifications passed. Main review: <N> lines (>=3,800 floor). Per-cluster depth: <all met>. Format commitment: <met>. §12-§14: <present>. Side artifacts: <refreshed>. Track complete; ready for archive." $(git log -1 --format='%H')

Update state.toml: phase_15.status = "completed", phase_15.checkpointsha = "<first 7 chars>".

  • Step 15.13: Standalone-readability verification

The load-bearing principle (per spec_v3.1.md §5.5): v3.1 must be readable by a reader who has never read v2.3 or v3. Verification:

  1. Open ONLY the v3.1 artifacts (no prior versions, no git history of prior versions):

    • nagent_review_v3_20260619.md (the thickened main review)
    • comparison_table.md (the v3.1 comparison table)
    • decisions.md (the v3.1 candidate list)
    • nagent_takeaways_v3_1_20260620.md (the v3.1 bridge doc)
    • nagent_review_v3_1_20260620.md (the v3.1 delta summary)
  2. Read end-to-end. The reading must give a complete picture of:

    • (a) What nagent is at a1f0680 (the primary review subject)
    • (b) What the case-study repos show (pep-copt, differentiable-collisions-optc)
    • (c) What the 3 new observations (YAML avoidance, agent context-window, fine-tuning) imply for Manual Slop
  3. Specific checks:

    • Does the §0 TL;DR open with a self-contained statement of what nagent is + what v3.1 covers?
    • Does each cluster's "Pattern summary" field make sense without consulting v2.3?
    • Does decisions.md introduce each candidate without requiring prior context?
    • Do any cross-refs to v2.3 / v3 / v1 break the reading? (Cross-refs should be optional lineage context, not load-bearing.)
    • Does the §12-§14 content stand on its own?
  4. If any check fails, return to the relevant phase and fix the dependency. The fix is typically one of:

    • Add a self-contained explanation where the content assumed prior context
    • Replace "Pattern(s) vs v2.3" with the self-contained "Pattern summary"
    • Remove the v2.3 → v3 → v3.1 status mapping from decisions.md
    • Add a TL;DR sentence that opens with self-contained context
  • Step 15.14: Track status update

Per conductor/workflow.md §"State.toml Template", set:

[meta]
status = "completed"  # was "active"

Commit this final state update:

git add conductor/tracks/nagent_review_20260608/state.toml
git commit -m "conductor(track): nagent_review_v3.1 marked completed"

The track is now ready for archive.


Self-Review

This is the inline self-review per the writing-plans skill.

1. Spec coverage

Each spec_v3.1.md requirement maps to a plan task:

Spec section Plan coverage
§1.1 artifact table Phase 1 (skeleton) + Phases 2-12 (cluster thickening) + Phase 13 (new sections) + Phase 14 (side artifact refresh)
§2 Current State Audit Implicit baseline; not re-listed
§3 Goals Each goal maps to a phase (goal 1-3 = phases 2-12, goal 4 = phase 13)
§4.1 chunking strategy "The Chunking Strategy" section + Phase 15 verification
§4.2 sub-section template Each cluster phase uses the template
§4.3.1 §12 YAML avoidance Phase 13 (Step 13.1)
§4.3.2 §13 Agent context-window Phase 13 (Step 13.2)
§4.3.3 §14 Fine-tuning Phase 13 (Step 13.3)
§4.4 side artifacts Phase 14 (Steps 14.1-14.4)
§4.5 cross-references Per-cluster phases + Phase 13 + Phase 14 (in bridge doc)
§5.1 format commitment Phase 15 verifications #7-#9
§5.2 authoring tier Plan-wide (Tier 1 sole-authored, per plan header)
§5.3 filename convention Plan-wide (consistent 20260620 for new files, v3 filename preserved for thickening)
§5.4 track-state hygiene Phase 1 (state.toml init) + each phase's commit (state.toml update)
§6 architecture reference Implicit in the spec; not re-implemented in plan
§7 verification criteria (12) Phase 15 (Steps 15.1-15.11)
§8 out of scope Plan-wide (no candidate implementation, no sibling-review replication, no vendor analysis)

No gaps detected.

2. Placeholder scan

Searched the plan for: "TBD", "TODO", "implement later", "fill in details", "add appropriate", "similar to Task N".

Found <N> placeholders in the git note messages and verification step outputs — these are INTENDED. The Tier 1 author fills them with actual values when executing the phase. The git notes are templates; the actual numbers come from the source-read pass.

No "TBD", "TODO", "implement later", "fill in details", "add appropriate", or "similar to Task N" markers found in the plan structure.

3. Type consistency

Type/name consistency checks:

  • All comparison_table.md references match across phases (Phase 14 + Step 15.8).
  • All decisions.md references match across phases (Phase 14).
  • All nagent_takeaways_v3_1_20260620.md references match across phases (Phase 14).
  • All state.toml [v3_1_tasks] keys (t1_1, t1_2, ...) and [v3_1_phases] keys (phase_1, ..., phase_15) match across phases.
  • All metadata.json field names match (per spec_v3.1.md §1.1 and Step 1.1).
  • All commit SHAs are referenced consistently (the 24 nagent SHAs + the 10 case-study commits are referenced in spec_v3.1.md §2.2 and used in the cluster phases).
  • The chunking strategy metrics are consistent across §4.1, the per-phase tasks, and the Phase 15 verifications.

No type inconsistencies detected.


Execution Handoff

The plan is complete and saved to conductor/tracks/nagent_review_20260608/plan_v3.1.md.

Per the project's conductor convention (per conductor/workflow.md):

  • v3.1 is research-only (no src/*.py changes).
  • Tier 1 Orchestrator sole-authored (mirrors v3, v2.3, and fable_review_20260617).
  • 15 phases, 1 commit per phase (atomic rollback per phase).
  • Git notes attached per commit.
  • state.toml updated per phase.
  • Chunking strategy metrics enforced via Phase 15 verifications.

The Tier 1 author executes the plan in the current session (or in a follow-up session, per the user's preference). The "execution choice" prompt from the writing-plans skill (subagent-driven vs inline) does not apply for Tier 1 sole-authored research — the Tier 1 IS the inline executor.