h-verify

Verifies recorded decisions against measured evidence with drift detection and decay tracking.

1.4k|102|Updated Dec 10, 2025
One-click install
npx skills add https://github.com/m0n0x41d/haft --skill h-verify
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: h-verify
Source: https://github.com/m0n0x41d/haft/tree/main/internal/cli/skill/h-verify
Command: npx skills add https://github.com/m0n0x41d/haft --skill h-verify

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Engineering decisions are often made and then forgotten, leaving teams unsure whether a past choice still holds after code changes, time passes, or evidence expires. This Skill closes the loop by re-checking recorded DecisionRecords against real measurements so stale or invalidated decisions are surfaced before further work relies on them.

Core Features & Use Cases

  • Baseline-vs-measure verification: Runs each decision's declared predictions (observable, threshold, verify_after) against actual test results, metrics, or code checks, then records an accepted, partial, or failed verdict.
  • Drift and decay detection: Baselines affected_files content hashes to detect drift, and surfaces decisions whose evidence has passed its valid_until date per FPF Evidence Decay.
  • Maintenance backlog drain: Previews and applies kernel-classified machine-safe closures for stale decisions while keeping material or security-sensitive cases operator-facing.
  • Use Case: After shipping a caching change recorded as dec-20260525-abc, ask whether the decision still holds; the Skill runs the latency benchmark, attaches the measurement as evidence with a congruence level, and records the verdict.

Quick Start

Ask the agent to verify whether decision dec-20260525-abc still holds, or run it with no argument to check what is stale across the project.

Frequently Asked Questions about h-verify

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a recorded decision still holds?

Invoke the skill with a decision reference such as dec-20260525-abc, or with no argument to surface all stale decisions. It reads the decision's claims and predictions, runs each observable against its threshold, attaches the measurements as evidence, and records an accepted, partial, or failed verdict.

How do I check which project decisions are stale?

Run the skill without a decision reference. It calls haft_query status to surface refresh-due decisions and haft_refresh drain in dry-run mode to preview machine-safe closures, then applies safe closures and reports anything needing operator review.

What is drift detection for decision affected_files?

The baseline action snapshots content hashes of a decision's affected_files. Later verification compares current files against that baseline, classifying changes as cosmetic, incidental, or material so you can decide whether to re-baseline or reopen the decision.

When should I not use decision verification?

Skip it for one-off sanity checks where you can just run the test directly, and for re-framing the underlying problem, which belongs to the h-frame skill. It is meant for post-implementation reality checks of recorded DecisionRecords.

Why does the measure action reject my verdict?

The kernel rejects measure calls made without prior evidence, since the protocol requires evidence before verdict. Attach at least one evidence item per material prediction using the evidence action, then record the measure verdict.

What does congruence_level mean when attaching evidence?

Congruence level rates how closely the evidence context matches yours: 3 for same-context (own tests, own production), 2 for similar contexts, 1 for different contexts like vendor benchmarks, and 0 for opposed contexts. It feeds the FPF trust calculus, so misclassifying it inflates the reliability signal.