Skip to content

feat: map RunContract quality hints to five advisory dimensions #116

@devkade

Description

@devkade

Summary

Map RunContract advisory quality hints into five explicit advisory dimensions: Alignment, Evidence, Completeness, Simplicity, and Risk.

Parent roadmap: #114
Track: A — RunContract Harness core
Tier: 1 — actionable now

Problem

RunContract currently exposes advisory quality hints, but the design notes call for a clearer five-dimensional quality vocabulary. Without explicit dimensions, future scoring/rendering work can drift into opaque aggregate scoring or overlap confusingly with existing workflow validation and quality-probe readiness checks.

Proposal

Represent RunContract quality as dimension-level advisory signals with reasons. Keep the result non-authoritative: workflow validation and evidence gates remain the completion authority.

Scope

  • Add a RunContract quality dimension vocabulary:
    • alignment
    • evidence
    • completeness
    • simplicity
    • risk
  • Represent each dimension as pass | warn | fail plus reason strings.
  • Derive dimension signals from existing workflow state, evidence, artifacts, risks, blockers, and completion criteria.
  • Preserve existing completion validation behavior.
  • Add tests for representative ready/warn/fail cases.

Non-goals

  • No numeric aggregate score.
  • No hard approval/completion authority from quality hints.
  • No tool-call blocking from score.
  • No replacement of existing workflow validation.
  • No replacement of src/domain/quality-probe.ts runtime readiness matrix.
  • No GitHub/PR/kapi-agent/Ragna semantics in RunContract core.

Acceptance criteria

  • RunContract quality exposes the five advisory dimensions with status and reasons.
  • Missing evidence degrades the Evidence dimension without completing/failing the workflow by itself.
  • Pending decisions and blockers are reflected in Completeness and/or Risk as advisory signals.
  • Existing validation remains the source of completion authority.
  • Tests cover at least one non-GitHub fixture.
  • npm run verify passes.

Verification

  • Run targeted RunContract tests.
  • Run npm run verify.
  • Search core RunContract code for adapter-specific terms.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions