Skip to content

test(automation): bind scheduler fixtures to backend identities - #4821

Merged
ScriptedAlchemy merged 1 commit into
masterfrom
codex/ci-scheduler-backend-identity
Nov 9, 2026
Merged

ScriptedAlchemy merged 1 commit into
masterfrom
codex/ci-scheduler-backend-identity

Conversation

@ScriptedAlchemy

@ScriptedAlchemy ScriptedAlchemy commented Nov 8, 2026 •

Copy link
Copy Markdown
Owner

The Linux automation suite exercises scheduler initialization with independent backend authority identities. Bind the test fixtures to their production-equivalent identities so job admission reaches the behavior under test.

This puts the shared fixture correction on master’s review path. The release PR only permits generated release files.

Verified with bazel test //crates/tracedecay:automation_runner_test --test_arg=scheduler (45 passed).

The hosted Linux fleet passed the full workspace on this draft head.

Repair three hosted automation_runner_test failures by supplying the
configured executable identity required by the production prefilter.
Use the same identity for the prefilter and retained runner, preserving
manual-schedule, exact-ledger, live-lock and lock-race assertions.

Add a production-prefilter regression for unconfigured refusal,
deduplication and same-occurrence recovery after binding, with zero
backend calls and no effectful terminal. Do not relax backend admission,
change timeouts, or alter the graph publication changes.

Refs #4532
@changeset-bot

changeset-bot Bot commented Nov 8, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: adc55f8

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

ScriptedAlchemy added a commit that referenced this pull request Nov 9, 2026
Preserve the failed-mount fixture repair from 4984a54 byte-for-byte
in its own reviewable change above the shared scheduler repair #4821.
The rollback journey uses the existing session-retrieval opener,
checks the authoritative session path, and verifies both reopened
projects bind their own session stores. No deadline or assertion is
removed, and the malformed graph must still refuse admission.

This separates CI fixture work from the retention-specific #4798
review without reverting fixes, rewriting history, or editing #4813.
It is not evidence that the affected-host retention CPU incident is
resolved. Refs #4787.

@ScriptedAlchemy ScriptedAlchemy left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the isolated scheduler fixture repair at adc55f8 as the CI prerequisite for #4822 (Refs #4152).

The production prefilter intentionally rejects a missing executable identity before acquiring the job lock or deciding the schedule. The three existing tests supplied None while expecting downstream manual-schedule/lock/due behavior. This patch supplies an identity from the existing ContentBackend fixture, and shares that identity with the retained runner in the lock/race cases. It preserves the original assertions and production gate ordering. The added regression independently covers backend_unconfigured refusal, deduplication, same-occurrence recovery after binding, no backend calls, and no effectful terminal record.

Exact-head workflow_dispatch run 42527367514 completed successfully with head_sha adc55f8. The Linux automation suite reported 45 passed; use that executed workflow rather than treating draft-skipped PR jobs as behavioral evidence. No production source, CI policy, timeouts, release files, or Kev/decision-model code changes are included.

This existing one-file repair should land separately so #4822 can inherit it from master while retaining its two-file SQLite-only diff. This review does not resolve #4152's original memory-corruption causality or authorize merging held #4776 / Kev work.

@ScriptedAlchemy
ScriptedAlchemy marked this pull request as ready for review November 9, 2026 00:29
@ScriptedAlchemy
ScriptedAlchemy merged commit 83694e0 into master Nov 9, 2026
37 of 38 checks passed
ScriptedAlchemy added a commit that referenced this pull request Nov 9, 2026
Join the reviewed #4821 and #4827 prerequisite ancestry without
changing the existing #4798 tree. Both prerequisite file blobs
already match this head exactly. Preserve all retention source,
behavioral tests, and concurrent history while allowing a focused
six-file retention review above the prerequisites.

Do not merge into the prerequisite branch. Land prerequisites in
master, retarget, revalidate, and retain the issue acceptance hold.
No changes from #4813, held #4776, or decision-model work are moved.

Refs #4787

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

ScriptedAlchemy added a commit that referenced this pull request Nov 9, 2026
Refs #4152

Inherit the separately reviewed and merged #4821 repair from master.
Both sides changed disjoint paths: preserve all four SQLite commits and
both SQLite file blobs exactly, and take jobs.rs verbatim from master.
No held integration work, CI policy changes, or history rewrites.

Copy link
Copy Markdown
Owner Author

Dependency coordination: #4787's PR #4798 carried a byte-identical copy of this scheduler fixture (verified blob 7342786381bcaf3c08454d2dc2711a6c731e7151). Rather than reverting the fix or creating another scheduler PR, I reused your exact adc55f8 ancestry unchanged.

New #4827 is a single-file daemon failed-mount fixture repair stacked on this branch; #4798 now stacks above #4827 and shows only six retention files. #4798's full source tree is unchanged by the reconciliation. Your branch, draft state, CI, and review ownership were not modified.

Please preserve landing order: #4821 to master through its own review, retarget #4827 to master, then retarget #4798 after its prerequisites land. Do not merge either child into this branch. No request to bypass any hold, run delegated agents, or merge protected #4776/Kev work.

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