Skip to content

Guard scheduler checks before AS datastore init#1813

Merged
chubes4 merged 1 commit intomainfrom
fix/as-datastore-readiness-guard
May 6, 2026
Merged

Guard scheduler checks before AS datastore init#1813
chubes4 merged 1 commit intomainfrom
fix/as-datastore-readiness-guard

Conversation

@chubes4
Copy link
Copy Markdown
Member

@chubes4 chubes4 commented May 6, 2026

Summary

  • Guard Data Machine scheduler reads against Action Scheduler's readiness signal before calling AS procedural query APIs.
  • Skip Action Scheduler's background migration scheduling during wp-phpunit install bootstrap while leaving datastore setup intact.
  • Add a pure-PHP smoke covering the uninitialized datastore path.

Testing

  • php tests/recurring-scheduler-as-readiness-smoke.php
  • php tests/recurring-scheduler-idempotency-smoke.php
  • composer run lint
  • homeboy test data-machine
  • DM_PATH=/Users/chubes/Developer/data-machine@fix-as-datastore-readiness-guard DMC_PATH=/Users/chubes/Developer/dmc-proof-no-requires/data-machine-code bash tests/playground-ci/scripts/run-stage-1.sh
  • DM_PATH=/Users/chubes/Developer/data-machine@fix-as-datastore-readiness-guard DMC_PATH=/Users/chubes/Developer/dmc-proof-no-requires/data-machine-code bash tests/playground-ci/scripts/run-stage-2.sh
  • DM_PATH=/Users/chubes/Developer/data-machine@fix-as-datastore-readiness-guard DMC_PATH=/Users/chubes/Developer/dmc-proof-no-requires/data-machine-code bash tests/playground-ci/scripts/run-stage-3.sh

Notes

  • Stage 1/2 no longer print the Action Scheduler datastore initialization notice.
  • Stage 3 passed on retry after one transient fetch failed from Playground before WordPress bootstrap completed.
  • External proof used a temporary DMC copy with its Requires Plugins: data-machine header removed to avoid the validation runner also mounting the primary Data Machine checkout while this PR branch lives in a worktree named data-machine@fix-as-datastore-readiness-guard.

AI assistance

  • AI assistance: Yes
  • Tool(s): OpenCode (gpt-5.5)
  • Used for: Drafted the code/test changes and ran verification; Chris reviews the final diff.

@homeboy-ci
Copy link
Copy Markdown
Contributor

homeboy-ci Bot commented May 6, 2026

Homeboy Results — data-machine

Lint

lint — passed

ℹ️ Full options: homeboy docs commands/lint
Deep dive: homeboy lint data-machine --changed-since edb444a

Test

test — passed

ℹ️ Auto-fix lint issues: homeboy refactor data-machine --from lint --write
ℹ️ Collect coverage: homeboy test data-machine --coverage
ℹ️ Pass args to test runner: homeboy test -- [args]
ℹ️ Full options: homeboy docs commands/test
Deep dive: homeboy test data-machine --changed-since edb444a

Audit

audit — passed

  • dead_guard — 9 finding(s)
  • Flows — 4 finding(s)
  • test_coverage — 3 finding(s)
  • intra-method-duplication — 2 finding(s)
  • Total: 18 finding(s)

Deep dive: homeboy audit data-machine --changed-since edb444a

Tooling versions
  • Homeboy CLI: homeboy 0.157.1+cc5eff27
  • Extension: wordpress from https://github.com/Extra-Chill/homeboy-extensions
  • Extension revision: ebde078
  • Action: Extra-Chill/homeboy-action@v2

@chubes4 chubes4 merged commit 7af3953 into main May 6, 2026
3 checks passed
@chubes4 chubes4 deleted the fix/as-datastore-readiness-guard branch May 6, 2026 21:33
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