Skip to content

Bind implement-epic delegation to an installed repository-owned implement-ticket #68

Description

@shaug

Goal

Make the implement-epic transitive trust boundary explicit and testable: it may delegate only to an already-installed, readable, repository-owned implement-ticket with the expected terminal contract, and must never fetch or substitute a workflow at runtime.

Current evidence

implement-epic already requires implement-ticket to be available and readable and checks for ready_pr, ready_prs, merged, blocked, and requires_epic. The skills.sh Socket report nevertheless identifies a low-severity anomaly because the orchestration depends on a powerful subskill whose provenance is not stated as an enforceable runtime boundary.

Required behavior

Before selecting or mutating a child:

  • verify that implement-ticket is already installed/readable through the host's normal skill mechanism;
  • verify that its declared source is this repository-owned suite or an equivalent installation record that binds it to the same trusted distribution;
  • verify the required terminal states and authority-preserving handoff contract;
  • refuse a generic agent, a third-party same-name skill, an unreadable copy, an incompatible contract, or a dependency whose provenance cannot be established;
  • never download, install, update, search for, or dynamically generate a substitute dependency during an epic run; and
  • return blocked before child mutation with the exact missing, mismatched, or unverifiable dependency evidence.

Keep the check provider-neutral. Use existing installed-skill/source metadata when available and readable source identity otherwise. Do not introduce a package manager, network lookup, central registry, or runtime-specific mandatory API.

Evaluation and tests

Add deterministic/eval cases for:

  1. a compatible repository-owned installed dependency;
  2. a missing dependency;
  3. a same-name third-party dependency;
  4. a repository-owned dependency with an incompatible terminal contract;
  5. a runtime that offers to download a replacement; and
  6. provenance that cannot be established.

Only the first case may reach child selection or mutation. Every other case must return a precise blocked handoff without network installation or repository mutation.

Expected change surface

  • skills/implement-epic/SKILL.md and directly related dependency/handoff references
  • skills/implement-epic/evals/ cases and expectations
  • focused validation tests where the skill has executable contract helpers
  • README/CHANGELOG only where user-facing compatibility changes

Acceptance criteria

  • implement-epic delegates only to an already-installed, readable, repository-owned compatible implement-ticket.
  • Same-name third-party, missing, unreadable, incompatible, and unverifiable dependencies block before child mutation.
  • The skill never downloads, installs, updates, searches for, or synthesizes a dependency at runtime.
  • Dependency verification preserves the caller's authority ceiling and validates the expected terminal result contract.
  • A valid existing installation retains the current epic workflow without an added mutation or review cycle.
  • Positive and negative dependency-provenance cases are deterministic and result-blind.
  • just format, just lint, and just test pass.

Non-goals

  • Add a general skill package manager or dependency resolver.
  • Pin every sibling skill to a single source commit when the installed distribution already establishes compatible provenance.
  • Redesign implement-ticket, babysit-pr, carve-changesets, or review behavior.
  • Change epic selection, graph semantics, completion policy, or authority ownership.
  • Make network access available solely to verify dependency provenance.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions