agent-orchestrator/backend/internal/domain
harshitsinghbhandari 918c5b4b3a feat(decide): populate open-PR Evidence; document decision zero-value contract
Address Copilot review:
- ResolveOpenPRDecision now sets a stable, timestamp-free Evidence summary
  "<condition> #<num> <url>" for every ladder outcome, consuming the
  previously-unused OpenPRInput.Number/URL identity inputs and making PR
  decisions traceable in logs. Covered by TestResolveOpenPRDecisionEvidence.
- Document LifecycleDecision's zero-value contract: an empty PRState/PRReason
  means "this decider does not address PR — leave unchanged", not PRNone. The
  LCM must map empty PR fields to a nil LifecyclePatch.PR; writing PRNone on a
  probe tick would clobber a live PR. (Pointers were considered but the empty
  sentinel is distinguishable from every valid state and consistent with the
  codebase's value-enum style; LifecyclePatch already owns nil-means-unchanged.)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 00:38:34 +05:30
..
decide feat(decide): populate open-PR Evidence; document decision zero-value contract 2026-05-27 00:38:34 +05:30
lifecycle.go refactor(backend): address contract review on LCM+SM ports 2026-05-26 20:55:27 +05:30
session.go refactor(backend): address contract review on LCM+SM ports 2026-05-26 20:55:27 +05:30
status.go refactor(backend): address contract review on LCM+SM ports 2026-05-26 20:55:27 +05:30
status_test.go feat(backend): LCM + Session Manager contract package (domain + ports) 2026-05-26 20:00:31 +05:30