T-1NWG-retire-sdlc-harness-export-and-agent-plugin-s-exporters
State: closed/done · Impact: medium · Complexity: medium
Once sdlc builds through the canonical agent-pants vault path, its
bespoke sdlc harness export op and agent-plugin’s own exporters are
a second, now-redundant way to produce a built plugin — a maintenance
burden and a source of drift between two build paths. Separately, the
root vault’s pr-tools plugin carries its own check-pr skill, whose
responsibilities now overlap with sdlc’s own pr-respond skill; the
plan calls for reconciling them rather than shipping two divergent
implementations of the same review-response loop.
solutions/ontological/lib/services/harness/ops/export.ts implements
sdlc harness export. agent-plugin has its own export path.
published/marketplaces/sksizer/.claude-plugin/packs/pr-tools/skills/check-pr/
and sdlc’s own skills/pr-respond/ both drive a “respond to PR review
feedback” loop, independently.
Proposed
Section titled “Proposed”sdlc harness export and agent-plugin’s exporters are deleted once
the agent-pants vault path is the sole build path for sdlc (verified by
the drift gate passing). pr-tools/check-pr is reconciled with
sdlc:pr-respond — either check-pr delegates to (or is replaced by)
pr-respond’s logic, or the two are merged into one canonical
implementation with the other becoming a thin pointer, whichever the
code comparison shows is the smaller, safer change.
Approach
Section titled “Approach”- Confirm (via the drift gate passing in CI for several runs, or a direct comparison) that the agent-pants vault build path produces a plugin equivalent to what harness export produced, so removing the latter is safe.
- Delete
lib/services/harness/ops/export.ts(and its CLI registration) and agent-plugin’s exporter code; remove any remaining callers (docs, scripts, CI steps). - Compare pr-tools/check-pr’s skill body against sdlc’s pr-respond skill body line by line for behavioral differences (lease handling, review-comment parsing, push/response flow).
- Reconcile: point check-pr at pr-respond’s logic (or vice versa, whichever already has the more complete/tested implementation), leaving exactly one canonical description of the loop, with the other reduced to a thin reference/alias if it must remain.
- Run the full
checkverb suite and confirm no caller of the retired export path remains.
| Area | Note |
|---|---|
solutions/ontological/lib/services/harness/ops/export.ts | Deleted |
agent-plugin exporter code | Deleted — outside solutions/ontological |
published/.../pr-tools/skills/check-pr/ and solutions/ontological/skills/pr-respond/ | Reconciled into one canonical implementation |
solutions/ontological/scripts/build-binary.ts | Regression from this phase’s vault cutover — fix in the same branch |
Acceptance criteria
Section titled “Acceptance criteria”- AC-1:
lib/services/harness/ops/export.tsand its CLI registration no longer exist;sdlc harness exportis not a valid command. - AC-2: agent-plugin’s standalone exporter code is removed, with no remaining caller.
- AC-3: check-pr and pr-respond share one canonical implementation of the review-response loop (one delegates to, or is generated from, the other). Reinterpreted per real code comparison — see completion_note: the two are genuinely different tools (general lease-unaware tending vs. sdlc’s lease-coordinated write path), not divergent implementations of one loop. Reconciled via cross-reference instead of a forced merge: pr-respond’s comment triage now points at check-pr’s fix/decline/answer/ack rubric; check-pr now detects and defers on an sdlc-lease footer rather than risking the lease protocol.
- AC-4:
sdlc entities audit --strictand the fullcheckverb suite pass with both removals in place. - AC-5:
solutions/ontological/scripts/build-binary.tsis fixed — a regression this phase’s vault cutover introduced, not a deferred follow-up. Its asset-surface glob/STAMPED_MANIFESTSlogic currently expects the pre-cutoverskills/**and top-level.claude-plugin/plugin.jsonpaths, both gone (moved tosolutions/ontological/.claude-plugin/packs/sdlc/...by T-CIAA/ T-66RD’s real, committed agent-pants build output). Runningbun run solutions/ontological/scripts/build-binary.tstoday throws immediately (“expected manifest .claude-plugin/plugin.json in the asset surface but it is missing”) — confirmed by direct reproduction. Repoint it at the rendered pack’s plugin.json/skills tree so the compiled binary embeds the same skills the live Claude session loads. Verify by actually building the binary (bun run solutions/ontological/scripts/build-binary.ts) and running whatever the binary exposes to list/surface its embedded skills (e.g. ansdlcsubcommand,--help, or an internal op that reads the embedded tar) — confirm the listing is non-empty and matches the 40 real skills, not zero.
Out of scope
Section titled “Out of scope”- Any change to what pr-respond’s actual review-response logic does, beyond what reconciliation with check-pr requires.
- Retiring pr-tools as a plugin entirely.
Dependencies
Section titled “Dependencies”- Every other Phase 3 task (the agent-pants vault build path must be sdlc’s sole, proven build path before its bespoke exporter is safe to delete).