Skip to content

fix(jangar): preserve revenue repair topline fallback#6728

Open
gregkonush wants to merge 1 commit into
mainfrom
codex/swarm-jangar-control-plane
Open

fix(jangar): preserve revenue repair topline fallback#6728
gregkonush wants to merge 1 commit into
mainfrom
codex/swarm-jangar-control-plane

Conversation

@gregkonush
Copy link
Copy Markdown
Member

@gregkonush gregkonush commented May 15, 2026

Summary

  • Added a Torghut /trading/revenue-repair source-of-truth fallback when Jangar consumer evidence summary is unavailable or route-missing.
  • Kept consumer evidence transport marked degraded while preserving business_state, revenue_ready, repair queue head, max notional, and settlement conveyor evidence for /ready.
  • Updated material evidence settlement to classify fallback queue-head topline as queue_head_inferred instead of a missing topline.
  • Added resolver and /ready regressions for the consumer-evidence transport drop case.

Related Issues

None.

Requirement provenance: NATS general runtime objective for jangar-control-plane on 2026-05-15.

Design provenance:

  • docs/agents/designs/206-jangar-material-evidence-settlement-spine-and-repair-dispatch-budget-2026-05-14.md
  • docs/agents/designs/200-jangar-revenue-repair-settlement-conveyor-and-stage-health-custody-2026-05-14.md

Testing

  • bun install --frozen-lockfile --ignore-scripts: pass
  • bunx oxfmt --check services/jangar/src/server/control-plane-torghut-consumer-evidence.ts services/jangar/src/server/control-plane-torghut-revenue-repair-fallback.ts services/jangar/src/server/control-plane-material-evidence-settlement.ts services/jangar/src/server/__tests__/control-plane-torghut-consumer-evidence.test.ts services/jangar/src/routes/ready.test.ts: pass
  • cd services/jangar && bunx vitest run --config vitest.config.ts src/server/__tests__/control-plane-torghut-consumer-evidence.test.ts -t "source-of-truth topline": pass
  • cd services/jangar && bunx vitest run --config vitest.config.ts src/routes/ready.test.ts -t "revenue topline": pass
  • cd services/jangar && bunx vitest run --config vitest.config.ts src/server/__tests__/control-plane-torghut-consumer-evidence.test.ts src/routes/ready.test.ts: pass
  • cd services/jangar && bunx vitest run --config vitest.config.ts: pass, 1259 tests
  • bun run --filter @proompteng/otel build: pass
  • bun run --filter @proompteng/temporal-bun-sdk build: pass
  • bun run --filter @proompteng/jangar tsc: pass
  • bun run --filter @proompteng/jangar build: pass
  • bun run --filter @proompteng/jangar docs:inventory:check: pass
  • bun run --filter @proompteng/jangar check:module-sizes: pass
  • bun run --filter @proompteng/jangar lint:oxlint: pass with existing warnings and zero errors
  • bun run --filter @proompteng/jangar lint:oxlint:type: pass with existing warnings and zero errors
  • git diff --check: pass
  • git diff -- bun.lock --exit-code: pass
  • Hosted agents-ci / validate: pass, 50s
  • Hosted agents-ci / integration: pass, 11m57s
  • Hosted jangar-ci / lint-and-typecheck / run: pass, 2m23s
  • Hosted CI / check_changed_files: pass, 6s
  • Hosted Semantic Commits / Lint commit messages: pass, 21s
  • Hosted Semantic Pull Request / Validate PR title: pass, 3s

Screenshots (if applicable)

N/A. Runtime API behavior only.

Breaking Changes

None.

Checklist

  • Testing section documents the exact validation performed.
  • Screenshots and Breaking Changes sections are handled appropriately.
  • Documentation, release notes, and follow-ups are updated or tracked.

Runtime Evidence

Before live Jangar /ready sample on 2026-05-15:

  • business_state: null
  • revenue_ready: null
  • repair_queue_len: 0
  • top_repair_queue_item: null
  • revenue_custody: null
  • material_evidence_settlement: null

Torghut source-of-truth /trading/revenue-repair sample from the same run:

  • business_state: repair_only
  • revenue_ready: false
  • repair_queue_len: 5
  • top item: repair_alpha_readiness
  • top item value gate: routeable_candidate_count
  • max_notional: 0
  • alpha_readiness_settlement_conveyor.status: no_delta

After source-level validation:

  • /ready preserves business_state=repair_only, revenue_ready=false, top item repair_alpha_readiness, affected value gate routeable_candidate_count, and max_notional=0 when the consumer evidence summary transport is unavailable.
  • Material evidence settlement emits consumer_evidence_status=unavailable, revenue_repair_topline_status=queue_head_inferred, and topline_inferred_from_queue_head while avoiding false business_state_missing and revenue_repair_top_item_missing gaps.

Risk And Rollback

Risk: fallback topline could hide consumer evidence transport failure. Mitigation: the consumer evidence status and negative evidence remain unavailable or route_missing; this only carries the revenue-repair source-of-truth topline for readiness truth.

Risk: malformed fallback payload. Mitigation: existing revenue-repair readers normalize fields and contract mismatch helpers still report typed schema debt.

Rollback: revert this PR. That restores the previous behavior where unavailable consumer evidence removes the Jangar /ready revenue-repair topline.

Capital safety: unchanged. The fallback keeps repair_only, revenue_ready=false, and max_notional=0 visible and does not enable live submission.

Release Note

Jangar /ready now preserves Torghut revenue-repair topline evidence from the source-of-truth endpoint during consumer evidence transport drops. This improves ready_status_truth and reduces false failed AgentRun classification while keeping the real transport debt visible for rollout follow-up.

@gregkonush
Copy link
Copy Markdown
Member Author

gregkonush commented May 15, 2026

Status: PR #6728 is green and mergeable.

What changed:

  • Jangar now falls back to Torghut /trading/revenue-repair when the consumer evidence summary route is unavailable or route-missing.
  • The fallback carries business_state, revenue_ready, repair queue head, max notional, and settlement conveyor evidence into /ready while keeping consumer evidence transport degraded.
  • Material evidence settlement records the fallback as queue_head_inferred instead of false business_state_missing and revenue_repair_top_item_missing gaps.

Evidence:

  • Before live /ready: business_state=null, revenue_ready=null, top_repair_queue_item=null.
  • Torghut source of truth: business_state=repair_only, revenue_ready=false, top item repair_alpha_readiness, value gate routeable_candidate_count, max_notional=0.
  • Local validation is green for Jangar formatting, tests, typecheck, build, module-size guardrail, docs inventory, and oxlint modes.
  • Hosted checks are green: agents-ci validate, agents-ci integration, jangar-ci lint-and-typecheck, semantic checks, and changed-files check.

PR: #6728
Next: release/deployer handoff can promote and verify /ready after rollout.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant