Skip to content

[question] Decouple Prawduct from TangleClaw — direct-integration drift risk as Prawduct moves to a Claude-embedded V2 skill #330

@Jason-Vaughan

Description

@Jason-Vaughan

Context

TangleClaw embeds Prawduct (brookstalley's methodology framework) as a first-class methodology: bundled templates (data/templates/prawduct/), the V2 wrap pipeline (lib/wrap-pipeline.js + lib/wrap-steps/), session playbook, Independent Critic, .prawduct/ governance tooling (tools/product-hook, .test-evidence.json, build-governance), and the CLAUDE.md operating rules. This integration is deep and direct — TangleClaw consumes Prawduct's shapes (template schema, hook contracts, governance file formats) rather than treating it as a versioned, swappable dependency.

The concern

Two compounding problems:

  1. Direct-integration drift. Relying on an externally-evolving framework and wiring it straight into TangleClaw's internals means every upstream change is a potential break. This is the same failure class we keep hitting with runtime-template staleness (cf. [bug] First user message of every bypass-mode session is a stray '2' #119, [bug] v3.13.7 wrap.steps fix doesn't reach existing installs — runtime templates at ~/.tangleclaw/templates/ stay stale #136) and stale governance files — the integration assumes a shape that upstream can move out from under us.

  2. Prawduct is moving to "V2" — an embedded Claude skill. The author is reshaping Prawduct into a skill that lives inside Claude Code rather than as the file/template/hook framework TangleClaw currently integrates. If/when that lands, TangleClaw's assumptions about how Prawduct is structured and invoked could break wholesale — and it pulls Prawduct further into Claude-only territory, which conflicts with TangleClaw's engine-agnostic ambitions (TC also runs Gemini/Codex; see the existing position: plumbing → engine-agnostic, agent invocation → Claude-only).

What's at stake

  • Breakage surface: template reconciliation, wrap pipeline step contracts, tools/product-hook, .prawduct/ governance formats, CLAUDE.md rules — all coupled to Prawduct's current shape.
  • Engine-agnosticism: a Claude-embedded-skill Prawduct deepens Claude lock-in for the methodology layer.
  • Ownership/control: TC's wrap/governance behavior is partly defined by an external project's roadmap.

Options to discuss (not yet decided)

  1. Keep integrated, vendor-snapshot. Pin a frozen copy of Prawduct's shapes inside TC; absorb upstream changes deliberately, never automatically. Lowest churn, but TC keeps carrying Prawduct's concepts.
  2. Decouple to TC-native methodology. Lift the useful pieces (wrap pipeline, Critic, governance) into TangleClaw-owned abstractions that don't depend on Prawduct's identity — Prawduct becomes one optional methodology among others, behind a stable TC-defined interface. Most work, best long-term insulation; aligns with the existing "plumbing engine-agnostic" stance.
  3. Treat V2 skill as just another engine capability. Let the Claude-embedded Prawduct V2 run as a skill when the engine is Claude, and have TC provide a degraded-but-functional native path for other engines. Accepts Claude-only agent features (consistent with current design) but needs a clean boundary so the skill's absence doesn't break TC.
  4. Drop Prawduct coupling entirely. TC ships its own methodology system; Prawduct becomes external/unsupported. Cleanest separation, biggest near-term loss of capability.

Asks before deciding

  • Map the exact coupling points (which TC files assume which Prawduct shapes) so we know the real blast radius.
  • Get clarity on Prawduct V2's actual shape/timeline (is the file-framework going away, or coexisting?).
  • Decide the boundary: what does TangleClaw own vs consume.

Filing to capture the decision; let's discuss before committing to a direction. Related design note in session memory: project_prawduct_engine_design.

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions