Skip to content

fix(ci): reconcile exact-target recovery and settled readback - #5567

Open
songoow wants to merge 6 commits into
loopx-project:mainfrom
songoow:codex/ci-recurring-failures-20261004
Open

songoow wants to merge 6 commits into
loopx-project:mainfrom
songoow:codex/ci-recurring-failures-20261004

Conversation

@songoow

@songoow songoow commented Oct 4, 2026 •

Copy link
Copy Markdown
Collaborator

Problem and outcome

The previous shard-2 run failed 14 cases: nine exact-Goal context return cases, three settled-monitor recovery cases, one source fingerprint oracle, and one failed-Turn session identity fixture. This PR now integrates their shared repairs into one candidate instead of requiring an unmerged dependency to make those cases pass.

Changes

  • Authorize an already validated exact Goal/Agent target through the existing TypeScript source-recipient policy. Keep sender, selected/blocked target, original instance and registration checks. Reuse one private grant observation helper for catalog and exact-target callers.
  • Preserve receipt-bound historical monitor identity in selected_todo and agent_lane_next_action after settlement, while retaining skip/no-run/no-spend authority. Update the protocol and existing replay assertions to explain this readback.
  • Align fixtures with current contracts: include release identity in the independent source fingerprint; challenge actual Agent identity drift; exercise four real grant modes and restoration; run local-Goal success fixtures inside their registered workspace.
  • Pin both CLI output comparison references to the triggering event's base SHA, including merge groups. Update the bilingual quality guide and regenerate only changed registry-I/O census locations.

The exact-target, settled-monitor and fixture repairs reuse work from #5533 by @Duang777. This candidate does not incorporate that PR's process-supervisor changes. Its remaining independent fixes still need their own acceptance.

Validation

Source: latest main 1af7dbd43 plus this PR, candidate fcfb24c65.

  • All 14 original failing cases passed together with two workers.
  • 404 related Python cases passed across the completed related-module run (314 unaffected-by-fixture cases) and the final 90-case Turn-driver run. The first expanded run had 12 out-of-root workspace fixture failures after the new main admission rule; the fixture repair and complete driver rerun are recorded, not hidden by a selected green retry.
  • 124 TypeScript source-grant, exact-Goal lifecycle and quota-readback cases passed.
  • Real legacy/File/SQLite CLI monitor recovery, no second spend, lost-response return, revoked-source no-send, restore-once and App snapshot identity paths are included. No frontend settings or interaction change is required: existing readback uses the original instance and unchanged execution-authority fields, exercised by the App snapshot tests.
  • Standard premerge passed all 19 selected checks plus direct checks, with one recorded inherited advisory: module_metric_budget:loopx/extensions/lark/goal_topic_runtime.py. The same failure was reproduced in an untouched 1af7dbd43 checkout; neither that module nor its ceiling is changed here.
  • CLI base/head budget against fixed 1af7dbd43, semantic inventory/census, configured mypy (19 source files), CI Ruff scope, diff and public-boundary checks passed. No budget allowance was raised.

Future-facing pass: share the source-grant adapter while leaving policy decisions in the existing typed owner; reuse the existing selected-Todo projector rather than another rule implementation. Runtime/API changes require maintainer review on the new head.

Historical scope

The audit covered all 100 merged PRs by the submitting author: 262 failed pull-request runs across 67 PRs, 494 failed job logs, and 418 pytest node IDs recurring across at least two PRs. This fixes the identified shared causes above; it does not claim every historical failure is a single bug or that all CI is green. Fifteen no-job runs expired awaiting maintainer approval, and 19 logged DCO failures lacked sign-offs; their checks remain enforced.

Signed-off-by: song <liusongstep@gmail.com>
Signed-off-by: song <liusongstep@gmail.com>
@songoow
songoow requested a review from huangruiteng as a code owner October 4, 2026 11:21
…failures-20261004

Signed-off-by: song <liusongstep@gmail.com>
Reuse the reviewed shared source-grant and settled-readback fixes from PR loopx-project#5533 by Duang777. Keep recipient policy in the TypeScript owner and expose only receipt-bound historical identity after settlement.

Signed-off-by: song <liusongstep@gmail.com>
Exercise Agent identity drift rather than legal cross-Todo session reuse, include release identity in the independent fingerprint oracle, and execute local Goal success fixtures inside their registered workspace. Retain settled no-run/no-spend assertions.

Signed-off-by: song <liusongstep@gmail.com>
Signed-off-by: song <liusongstep@gmail.com>
@songoow songoow changed the title fix(ci): pin comparison baselines and repair grant recovery qualification fix(ci): reconcile exact-target recovery and settled readback Oct 4, 2026
@songoow

songoow commented Oct 4, 2026

Copy link
Copy Markdown
Collaborator Author

Repair validation on exact head fcfb24c65472805d3a03d9d9fc200f1927edb3d7:

The 14 failures from the previous shard-2 run now pass together: 9 exact-target authorization cases, 3 settled-monitor recovery cases, the runtime fingerprint case and failed-Turn session identity case. Their fixes are integrated into this candidate, reusing the relevant shared work from #5533 by @Duang777.

Broader validation: 314 other related Python cases passed, then the complete 90-case Turn-driver module passed after preparing its success workspaces inside the registered Goal. The earlier 12 out-of-root fixture failures are preserved in the validation history. 124 typed policy/lifecycle/readback cases also passed. Revoked source no-send, restore-once, original instance readback, lost-response recovery, real File/SQLite monitor flows and no second spend are covered.

Standard premerge: 19 selected checks plus direct checks passed. The inherited advisory module_metric_budget:loopx/extensions/lark/goal_topic_runtime.py also reproduces in the untouched main 1af7dbd43; no ceiling was increased. CLI budget on the fixed base, semantic census, CI Ruff, configured mypy and public-boundary scans passed. Future-facing pass shares the existing grant observation and selected-Todo projector; typed policy authority remains with its existing owner.

The new head needs fresh CI and maintainer review. These local results neither certify the remaining #5533 supervisor changes nor constitute approval to merge this runtime change.

This branch has not been deployed

No deployments
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