Skip to content

splus v2: agent-led, engine on tap (v0.9.0)#7

Merged
ojowwalker77 merged 1 commit into
mainfrom
feat/v2-agent-led
Jun 5, 2026
Merged

splus v2: agent-led, engine on tap (v0.9.0)#7
ojowwalker77 merged 1 commit into
mainfrom
feat/v2-agent-led

Conversation

@ojowwalker77

@ojowwalker77 ojowwalker77 commented Jun 5, 2026

Copy link
Copy Markdown
Owner

The pivot

splus flips from engine-led (push a finding list through a gate) to agent-led (a curious reviewer pulls deterministic signal on demand). The engine becomes a toolbelt, a per-repo contract is read first, and a reviewer's diligence compounds across sessions.

What's in this PR (all wired, no dead code)

P0 — Engine on tap

  • inspect engine subcommand + MCP tool: ask one deterministic question — definition · callers · blast_radius · complexity · exports · imports. Reuses the existing analysis tier (graph/symbols/scip/complexity); no new analysis, just addressable.
  • floor tool — re-ground on the deterministic finding set for any scope, no directive.
  • review recast to orient — injects the contract, returns the floor, drives investigate → verify → report → teach. Backward compatible.
  • Import resolver now understands TS ESM .js specifiers (import … from "./x.js" for x.ts) — callers/blast radius now resolve on modern TS, fixing the existing blast-radius collector too. (Dogfood: inspect callers hashEmbedder correctly finds its 2 real callers.)

P1 — splus.md, read first

  • Parser + repo/~/.splus layering; injected at kickoff; binding mute:/skip: rules enforced and reported (never silent). preferences tool + prefs skill. A real splus.md ships for this repo.

P2 — Compounding memory

  • recall / note, and accept now stores a recallable memory. Embedding match over .splus-cache/memory.json on the existing Embedder seam.

Skills (prime)

  • review orchestrator that fans out fresh, unbiased sub-agents per unit (finder ≠ verifier) and degrades to a sequential pass where sub-agents aren't available; investigate / lenses / verify / dispatch references; prefs.

Verification

Deliberately deferred (to keep this PR prime, not half-built)

Honest scoping per the "no dead code" bar — the fan-out works today via the skill + the P0/P2 tools, so none of these are dangling:

  • Server-side orchestration telemetry (rigor-receipt / coverage-gap gating, P4) — needs runtime fan-out to exercise; the skill drives fan-out without it.
  • A transformer embedding model — recall ships on the proven offline Embedder seam; swapping in a model needs to be verified against the single-file offline bundle, which I didn't want to ship unverified.
  • Report v2 multi-unit provenance (P5) — the existing report template still works.

View with Codesmith Autofix with Codesmith
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.

Flip splus from engine-led (push a finding list through a gate) to agent-led
(a curious reviewer pulls deterministic signal on demand). The engine becomes a
toolbelt, a per-repo contract is read first, and a reviewer's diligence compounds.

Engine on tap (P0):
- new `inspect` subcommand (definition/callers/blast_radius/complexity/exports/
  imports) reusing the existing analysis tier; exposed as MCP `inspect` + `floor`.
- `review` recast to orient (inject contract + return floor + drive), back-compat.
- import resolver now understands TS ESM `.js` specifiers, so callers/blast radius
  resolve on modern TS (fixes the existing blast-radius collector too).

splus.md — the contract, read first (P1):
- parser + repo/~/.splus layering; injected at kickoff; binding mute:/skip: rules
  enforced and reported; `preferences` tool; `prefs` skill.

Compounding memory (P2):
- `recall`/`note` + accept-stores-memory, embedding match over memory.json on the
  existing Embedder seam (a transformer model drops in unchanged).

Skills (prime):
- review orchestrator that fans out fresh, unbiased sub-agents (finder != verifier)
  and degrades to a sequential pass; investigate/lenses/verify/dispatch + prefs.

All green: 60 engine tests, 24 TS tests, --locked build, single-file bundle parses,
no warnings. Docs (README, TOOLS.md, CHANGELOG) updated; dead splus-review badge
removed.
@ojowwalker77 ojowwalker77 merged commit 96fcd99 into main Jun 5, 2026
2 checks passed
@ojowwalker77 ojowwalker77 deleted the feat/v2-agent-led branch June 5, 2026 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant