Skip to content

Align coder follow-up human-requirement validation and repair schema for blocked requirements #571

Description

@wwind123

Problem

A PR-feedback coder follow-up can correctly report that a surfaced signed human requirement is blocked, with a requirement-specific disposition and evidence, but validation still requires that requirement in the legacy human_requirements.addressed_ids ledger.

Observed on PR #569 while implementing issue #568. The original Codex response included Requirement 1 with disposition blocked and detailed evidence. It was rejected with: Coder response did not address all surfaced signed human requirement IDs: Requirement 1.

That makes a legitimate blocking follow-up impossible: a coder must either falsely claim a blocked requirement was addressed or fail validation.

The format-repair prompt has a related schema drift. Its primary coder_followup example omits human_requirement_dispositions entirely, although the current validator requires that field whenever surfaced signed requirements exist. The Codex repair response therefore omitted the field and failed with: coder_followup is missing required field(s): human_requirement_dispositions.

Expected behavior

  • For surfaced signed requirements, accept exactly one human_requirement_dispositions entry per requirement, including a non-blank evidence field.
  • When coder_followup.state is blocking, an evidenced blocked disposition must be valid without requiring the same ID in human_requirements.addressed_ids.
  • Require addressed_ids only for requirements whose disposition is addressed, or otherwise clearly define and enforce a non-contradictory ledger contract.
  • Update the primary coder_followup repair schema and worked examples to include human_requirement_dispositions and to show an evidenced blocked requirement.

Regression coverage

  • A blocking coder follow-up with Requirement 1 disposition blocked and evidence validates without Requirement 1 in addressed_ids.
  • An approved follow-up still requires appropriate addressed handling.
  • A repair prompt generated for surfaced requirements includes the complete current coder_followup schema, and a repaired blocking response validates.

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