Objective
Implement the normalized outcome model with outcome_status and evidence_strength classifications, and establish explicit weak-evidence fallback semantics that do not count as accepted.
Context
This is foundational work for issue #35033. All subsequent evaluator slices depend on this shared model.
Approach
- Define an
OutcomeStatus type with values: accepted, rejected, pending, ignored, skipped, unknown
- Define an
EvidenceStrength type with values: strong, medium, weak
- Create a shared
OutcomeEvaluation struct/type containing:
outcome_status
evidence_strength
signal (e.g., target_exists_only, merged, closed, acted_on, etc.)
- Implement a
target_exists_only fallback evaluator that returns unknown status with weak evidence — not accepted
- Update the outcome reporting pipeline (JSONL output and telemetry fields) to emit normalized fields:
outcome_status, evidence_strength, signal
- Update dashboard field definitions to include the new counts:
accepted_strong, accepted_medium, accepted_weak, fallback_exists_only_count, etc.
Files to Modify
- Locate the existing outcome evaluation code (likely in
actions/setup/js/ or pkg/) and update/create the shared model
- Update JSONL reporting to emit normalized fields
- Add unit tests for the shared model and fallback evaluator
Acceptance Criteria
Generated by 📋 Plan Command · sonnet46 949.9K · ◷
Objective
Implement the normalized outcome model with
outcome_statusandevidence_strengthclassifications, and establish explicit weak-evidence fallback semantics that do not count as accepted.Context
This is foundational work for issue #35033. All subsequent evaluator slices depend on this shared model.
Approach
OutcomeStatustype with values:accepted,rejected,pending,ignored,skipped,unknownEvidenceStrengthtype with values:strong,medium,weakOutcomeEvaluationstruct/type containing:outcome_statusevidence_strengthsignal(e.g.,target_exists_only,merged,closed,acted_on, etc.)target_exists_onlyfallback evaluator that returnsunknownstatus withweakevidence — notacceptedoutcome_status,evidence_strength,signalaccepted_strong,accepted_medium,accepted_weak,fallback_exists_only_count, etc.Files to Modify
actions/setup/js/orpkg/) and update/create the shared modelAcceptance Criteria
OutcomeStatusandEvidenceStrengthtypes are definedtarget_exists_onlyfallback returnsunknown(notaccepted)outcome_statusandevidence_strengthfieldsmake agent-finishpasses