Skip to content

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.

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.

  1. 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.
  2. 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).
  3. 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).
  4. 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.
  5. Run the full check verb suite and confirm no caller of the retired export path remains.
AreaNote
solutions/ontological/lib/services/harness/ops/export.tsDeleted
agent-plugin exporter codeDeleted — 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.tsRegression from this phase’s vault cutover — fix in the same branch
  • AC-1: lib/services/harness/ops/export.ts and its CLI registration no longer exist; sdlc harness export is 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 --strict and the full check verb suite pass with both removals in place.
  • AC-5: solutions/ontological/scripts/build-binary.ts is fixed — a regression this phase’s vault cutover introduced, not a deferred follow-up. Its asset-surface glob/STAMPED_MANIFESTS logic currently expects the pre-cutover skills/** and top-level .claude-plugin/plugin.json paths, both gone (moved to solutions/ontological/.claude-plugin/packs/sdlc/... by T-CIAA/ T-66RD’s real, committed agent-pants build output). Running bun run solutions/ontological/scripts/build-binary.ts today 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. an sdlc subcommand, --help, or an internal op that reads the embedded tar) — confirm the listing is non-empty and matches the 40 real skills, not zero.
  • 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.
  • 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).

← Back to Tasks