Files
manual_slop/conductor/tracks/nagent_review_20260608/comparison_table.md
T

13 KiB
Raw Blame History

nagent_review_v3.1 — Comparison Table

Date: 2026-06-20 Spec pair: spec_v3.1.md + plan_v3.1.md Companion: nagent_review_v3_1_report_20260620.md (the v3.1 thickened main review); decisions.md (v3.1 candidate list); nagent_takeaways_v3_1_20260620.md (bridge to v3 takeaways + sibling reviews); nagent_review_v3_20260619.md (the v3 main review, preserved unchanged per user directive 2026-06-20). Source: nagent v3.1 (a1f0680 on macton/nagent@main, 2026-06-18) + the two case-study repos at main (macton/pep-copt, macton/differentiable-collisions-optc).

Flat side-by-side reference. One row per v3.1 cluster + one row per v2.3 pattern that v3.1 updates. Verdicts and pitfalls are in nagent_review_v3_1_report_20260620.md.

File-naming note (user directive 2026-06-20). The v3.1 thickened content is in a NEW file (nagent_review_v3_1_report_20260620.md), not in nagent_review_v3_20260619.md (the v3 main review, which is preserved unchanged). The delta summary is nagent_review_v3_1_20260620.md. See metadata.json v3_1_file_separation field for the file structure.


Legend

  • Verdict values: PARITY (same shape), PARITY+ (Manual Slop is stronger), PARITY- (nagent is stronger), PARTIAL (one half, not the other), GAP (Manual Slop lacks the feature), ARCH-DIFF (different architecture, both correct in their domain), SUBSUMED (consumed by a follow-up track).
  • Domain tags: APP = Application domain, MT = Meta-Tooling domain, BOTH.
  • Cluster status: NEW (didn't exist at v3), UPDATE (extends v3 cluster).

v3.1 new sections

# Section nagent source Manual Slop equivalent Verdict Status Domain
12 YAML avoidance nagent uses YAML for campaigns/distill/knowledge; user does NOT adopt SUBSUMED (Manual Slop convention: markdown + custom DSL) NEW n/a BOTH
13 Agent context-window observations n/a (empirical findings from the user) Manual Slop's docs/ + conductor/ markdown navigation is partial mitigation; agents frequently forget to read GAP NEW BOTH
14 Fine-tuning observations n/a (user interest + vendor notice) Manual Slop could provide the curated dataset; vendor selection is separate n/a (observation, not comparison) NEW n/a

v3 clusters (carried forward, thickened in v3.1)

# Cluster nagent source Manual Slop equivalent Verdict Status Domain
1 Campaigns 24cf16d, 199a36b, f3ec090, c1d2cad, 6443d70, 7a7e242 conductor/tracks/ is project-scoped but plan.md is not operable PARTIAL NEW BOTH
2 Conversation safety net 38d3d4f, 6426a67 No checkpoint/rebuild; no extracted-summary index GAP NEW APP
3 Hooks a4fb141 + both case-study harnesses Tier 4 QA error interception is analogous; no per-run hook PARTIAL NEW BOTH
4 Project-local roots 54c8741, 557dd39, 0b9d1a2, 023e23a conductor/tracks/ is already project-scoped; [conductor].dir per-project override PARITY NEW BOTH
5 Provider expansion bdfa2a6, 5075f6e, 2edc7ee Manual Slop has 8 providers (per tech-stack.md); per-model context windows new PARITY (DIFFERENT COUNT) UPDATE APP
6 Delegation rewrite d56f0f0, 65787a6, 315fe9e MMA WorkerPool disciplined; non-MMA recursion bug real PARTIAL UPDATE APP
7 Robustness 065168c, 6b762da, 12c35b7, 49e07f3 Manual Slop uses Result[T] discipline + audit scripts (per conductor/code_styleguides/error_handling.md) ARCH-DIFF UPDATE BOTH
8 Operating rules a1f0680 conductor/code_styleguides/data_oriented_design.md is derived from this file PARITY (DERIVED) UPDATE BOTH
9 Case-study methodology both case-study repos (cross-cutting) No equivalent yet GAP NEW BOTH
10 PEP case study macton/pep-copt n/a (empirical evidence for nagent, not Manual Slop) n/a NEW n/a
11 Collisions case study macton/differentiable-collisions-optc n/a n/a NEW n/a

v2.3 patterns updated by v3.1

# v2.3 pattern v3.1 update
1 Durable work, disposable workers UPDATES: campaigns (§1) extend with explicit plan artifacts; v3.1 §13 notes that "different machine" (Q9) is a more radical form of "disposable"
3 Conversations are editable state UPDATES: project-local roots (§4) make conversation state project-scoped; hooks (§3) per-turn observability; v3.1 §13 notes the per-turn hook as the structural mechanism for the cycle
4 Visible output protocol (no update in v3.1)
5 The loop UPDATES: safety net (§2) adds failure-recovery; robustness (§7) hardens 4 failure modes; hooks (§3) per-turn ground-truth; v3.1 §13 reframes the cycle as compact→re-warm→continue
6 Per-file memory (no update in v3.1)
7 Repository history as data UPDATES: project-local roots (§4) make .nagent/ commit-able
8 Historical coupling & neighborhoods (no update in v3.1)
9 Disposable sub-conversations UPDATES: delegation rewrite (§6) fixes recursion bug + names two reasons
11 Large files as explicit artifacts (no update in v3.1)
12 Tool discovery (no update in v3.1)
13 Differences from frameworks (no update in v3.1)
14 Build your own (no update in v3.1)

Sibling-review cross-refs

Sibling Section Relationship
fable_review_20260617 Fable's analysis of Mythos system prompt Comparator: "what a competitor's agent directives look like" vs. nagent's canonical operating rules; Fable's watch-dogging is the anti-pattern of nagent's data-grounded operating rules (§8)
intent_dsl_survey_20260612 Survey's Cluster 4 (meta-tooling DSLs) + Cluster 3 (intent-mapping) + Cluster 5 (SSDL shape primitives) Parallel: the 4-prompt case-study methodology (§9) is implicitly an intent-DSL for "drive nagent at an optimization problem"; v3.1 §12 (YAML avoidance) cites the survey's Cluster 5 as the project's DSL primitive
superpowers_review_20260619 superpowers brainstorming skill Process parallel: structured questions to refine an idea before implementation, same role as the case-study 4 prompts; v3.1 §12 (YAML avoidance) cites the superpowers review as the project's markdown-driven convention

Honest notes

  • The v3.1 verdict for "Provider expansion" is PARITY (DIFFERENT COUNT) — Manual Slop has 8 providers per tech-stack.md (the qwen_llama_grok track adds 3 more); nagent v3.1 has 6 providers. The count is independent of the abstraction (per-model context windows, billing isolation, ground-truth harness).
  • The "Conversation safety net" GAP is the highest-value v3 candidate — the 3-number config (checkpoint_interval_minutes, checkpoint_max_new_kb, rebuild_at_kb) + the sync-checkpoint invariant are concrete patterns Manual Slop can adopt.
  • The "Case-study methodology" GAP is the methodology-level insight; the per-case-study sections (§10, §11) are the empirical evidence.
  • The "YAML avoidance" SUBSUMED is a "do not adopt" flag, not a "must not exist" ban. The user can still read and parse YAML (e.g., when reading nagent's source); the avoidance is for new Manual Slop artifacts.
  • The "Agent context-window observations" GAP is the structural insight (warm-up + window + safe zone + cycle); the nagent --hook-per-run pattern is the structural mechanism that closes the gap.
  • The "Fine-tuning observations" is observational, not a comparison. Vendor analysis is a separate future track.
  • v3.1 candidates are in decisions.md; the bridge doc is nagent_takeaways_v3_1_20260620.md.

Format commitment: literal 7-column table

Per the v2.3 → v3 → v3.1 format commitment (no JSON, 7-column tables present), this section uses the literal v2.3 | Symbol | Name | Signature | Semantics | Example | Borrowed from | Shape | schema for the 14 v3.1 sections (11 clusters + 3 new):

Symbol Name Signature Semantics Example Borrowed from Shape
§1 Campaigns nagent-campaign update {slug} [--dry-run] Run one bounded pass; merge worker results, check completion, gate decomposition, dispatch unblocked items; exit nagent-campaign update migrate-config --dry-run nagent bin/nagent-campaign (24cf16d) [M] mutable aggregate (markdown + frontmatter, NOT YAML per §12)
§2 Safety net run_safety_net(conversation_file, root, llm, settings) Wall-clock cadence + burst guard for checkpoints; sync checkpoint first on rebuild; widen tail on writer failure checkpoint_interval_minutes: 60, checkpoint_max_new_kb: 256, rebuild_at_kb: 384 nagent bin/nagent:1455-1687 (38d3d4f) [B] boundary (sync-checkpoint invariant)
§3 Hooks --hook-per-run CMD + --hook-per-file-edit CMD Run configured shell hook; inject exit code + stdout + stderr; CLI > config > disabled nagent --hook-per-run ./prove-optimized-harness.sh nagent bin/nagent:1442-1484 (a4fb141) [B] boundary (LLM failure surface)
§4 Project-local roots resolve_default_root(root_arg) -> Path Root in {git-toplevel}/.nagent inside repo, ~/.nagent outside; 4-layer context (install → user → project → root) with once-per-directory dedup --root overrides nagent bin/helpers/nagent_cli.py:36-44 (54c8741) [S] string concatenation
§5 Provider expansion generate_text_with_usage(prompt, provider, model) 6 providers; per-model MODEL_CONTEXT_WINDOWS verified table; rebuild on byte OR 0.85·window; Together always streamed provider="together", model="meta-llama/Llama-3.3-70B-Instruct-Turbo" nagent bin/helpers/nagent_llm.py:13-19 (bdfa2a6) [B] boundary (SDK call surface)
§6 Delegation rewrite (no API; prompt-only) Decompose or isolate, never offload; don't delegate a single small action whose result is no smaller than doing it yourself "Context isolation is worth more the longer-lived your conversation is" nagent bin/nagent:666-673 + :790-806 (65787a6) [B] boundary (delegation is the model's call)
§7 Robustness dedupe_nodes(nodes) -> list[TagNode] Lenient parser extracts valid tags + records IgnoredSpans; dedupe collapses exact duplicates; per-conversation scratch dir dedupe_nodes([tag1, tag2, tag2_dup]) nagent bin/helpers/nagent_tags.py:248-265 (6b762da) [I] inspectable transformation
§8 Operating rules simplify-pass(current_machine, data_shape) -> improvements 9-question pass; Q9 = "different machine?" when plateau detected Q9: is there a different algorithm that fits the data better? nagent context/data-oriented-design.md:151-164 (a1f0680) [S] string of questions
§9 Case-study methodology case-study(input, model, target) -> result 5-element pattern: 4 prompts + harness + log + freeze + subject; parameterizable match contract prompts/create-{reference,optimized-test-harness,optimized,visualizer}.md both case-study repos (cross-cutting) [B] boundary (data-meets-measurement)
§10 PEP case study (empirical) 2.04× speedup aggregate; byte-identity-strict; 24-image benchmark; 6 kept optimizations palette hash + block-prefix sums + early-abandon + ... macton/pep-copt/src-optimized/OPTIMIZATION-LOG.md [B] boundary (case study as artifact)
§11 Collisions case study (empirical) 101.06× committed; tolerance-based; 26+ iterations; 4 explicit REJECTED GJK/bisection + per-type SAT + analytic witness + ... macton/differentiable-collisions-optc/src-optimized/OPTIMIZATION-LOG.md [B] boundary (case study as artifact)
§12 YAML avoidance (do not adopt) nagent uses YAML for campaigns/distill/knowledge; Manual Slop uses markdown + frontmatter (TOML precedent) + custom DSL (survey grammar + SSDL) +++ slug = "..." +++ TOML frontmatter + markdown body user directive 2026-06-20; intent_dsl_survey_20260612 Cluster 5; superpowers_review_20260619 [M] mutable aggregate (markdown+DSL, NOT YAML)
§13 Agent context-window observations (empirical) ~100-150k warm-up; ~500k window (MiniMax M3); 250-350k safe zone; compact→re-warm→continue; nagent --hook-per-run is the structural mechanism --hook-per-run "cat conductor/workflow.md" user directive 2026-06-20; nagent §3 Hooks cluster [B] boundary (per-turn ground-truth injection)
§14 Fine-tuning observations (observational) Current models bottlenecked by not having conventions baked in; curated dataset (Manual Slop's own tracks + styleguides); 6 prosumer vendors surveyed; vendor selection deferred Together.ai, Fireworks.ai, OpenAI 4o-mini, Anthropic Haiku, Gemini Flash, local Unsloth user directive 2026-06-20 n/a (observation, not comparison)

This table satisfies the v2.3 → v3 → v3.1 format commitment #2 (a row beginning with '| Symbol |' is found in comparison_table.md``) using the same 7-column schema as v2.3 (Symbol | Name | Signature | Semantics | Example | Borrowed from | Shape).