Skip to content

drafthorse-saddler misses set-level checks it holds #39

Description

@dilberryhoundog

A saddler audit of extensions/skills/versioning/SKILL.md returned seven findings, all notation-level — prose condition blocks, missing link syntax, a bundled condition, a missing OR separator — plus one genuine routing gap. It missed a clear breach of a check it carries verbatim.

The missed check

extensions/agents/drafthorse-saddler.md:136:

Half-applied state bails to the user — a step that fails partway leaves work neither undone nor complete, and the error step is its single disposition ... Three findings sit here: an error step that surfaces failure without accounting for partial application, a step whose engagement resumes over its own partial work, and a start condition carrying a half-applied exclusion clause — the disposition in the wrong home.

+Execute in the audited document tripped two of those three: a resume clause in its start condition, and an engagement section (#### Completing a release that stopped partway) that takes an inventory and continues over its own partial work. A third violation sat in a step invariant licensing partial re-application.

The check is also listed in saddler's own set-level sweep at :283.

Worse than a miss

The audit's scenario-walk actively endorsed the behaviour, reporting that a mid-release failure "falling to +Handle a Problem, with careful inventory-before-resume in +Execute" routed correctly.

Hypothesis

Set-level judgment degrades into notation pattern-matching under load. The per-step checks that can be answered by looking at the shape of a block all fired; the ones requiring a document-wide semantic judgment did not. Volume of easy findings may be crowding out the hard ones.

Worth considering

  • Make the set-level checks a distinct, separately-reported pass rather than a trailing clause of the per-step walk.
  • Require an explicit verdict per set-level check, so silence on one is visible rather than indistinguishable from a pass.
  • Test with this document as a fixture — its pre-fix state is a known positive for the half-applied check.

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