Skip to content

fix: purge dm_ prefix remnants in favor of datamachine_#2848

Merged
chubes4 merged 4 commits into
mainfrom
fix-dm-prefix-purge
Jul 3, 2026
Merged

fix: purge dm_ prefix remnants in favor of datamachine_#2848
chubes4 merged 4 commits into
mainfrom
fix-dm-prefix-purge

Conversation

@chubes4

@chubes4 chubes4 commented Jul 3, 2026

Copy link
Copy Markdown
Member

Summary

  • Purges live dm_ prefix remnants in favor of datamachine_.
  • Adds WebhookTrigger::rate_limit_transient_key() so webhook rate-limit read/delete paths share one key builder.
  • Updates tests and test fixtures/helpers so the active code/test audit paths are clean.

Rename inventory and persistence assessment

  • dm_backpressure_ -> datamachine_backpressure_ in RunFlowAbility crc32 jitter seed. Persistence: none; this only shifts deterministic defer jitter.
  • dm_email_sent_folder_from -> datamachine_email_sent_folder_from in EmailAbilities. Persistence: none, but this is a public filter hook rename and is a breaking change for consumers of the old filter.
  • dm_img_ -> datamachine_img_ in GDRenderer tempnam prefix. Persistence: none; temporary filename prefix only.
  • dm_webhook_rate_ -> datamachine_webhook_rate_ in webhook rate-limit transients. Persistence: short-lived transient state; old transient keys are intentionally not migrated and will expire. Read/delete paths now share WebhookTrigger::rate_limit_transient_key() to keep them in sync.
  • dm_batch_ -> datamachine_batch_ for TaskScheduler batch IDs. Persistence: batch IDs are stored in job engine data/log context as opaque identifiers. Repo audit found no prefix parsing/matching/read branches for dm_batch_, so new writes hard-cut to datamachine_batch_ without dual-prefix read compatibility. Existing in-flight old IDs remain opaque values on already-created batch parent jobs.
  • dm_stagger_ -> datamachine_stagger_ in RecurringScheduler crc32 stagger seed. Persistence: none; this only shifts deterministic stagger offsets.
  • $dm_version -> $datamachine_version in migration scaffolding. Persistence: none; local variable only.
  • Test-only helper/function/global/fixture remnants (dm_assert, dm_test_*, dm_rs_*, dm_hook, dm_cron, dm_once, dm_dup, dm_name, dm_wp_error_terms, etc.) were renamed to datamachine_ equivalents so the active test paths are clean too.

Breaking changes

  • Public filter hook dm_email_sent_folder_from is now datamachine_email_sent_folder_from. No backwards-compat shim is included by design.

Audit evidence

  • git grep -n "dm_" -- inc tests data-machine.php uninstall.php returned no matches.
  • git grep -n "'dm_\|"dm_" -- inc tests data-machine.php uninstall.php returned no matches.
  • git diff --check passed.

Test evidence

  • php -l passed for every changed PHP file.
  • composer test did not reach the test suite: Homeboy offloaded to homeboy-lab and failed preflight because runner extension parity for wordpress is stale and cannot auto-sync from controller-local source /Users/chubes/.config/homeboy/extension-sources/wordpress/wordpress.
  • Attempted the intended repair path, homeboy extension dev-run --source /Users/chubes/.config/homeboy/extension-sources/wordpress/wordpress --runner homeboy-lab wordpress homeboy test data-machine; it also failed before tests because the runner-side command could not resolve server homeboy-lab (server.not_found).

AI assistance

  • AI assistance: Yes
  • Tool(s): opencode — Claude Fable 5 (Anthropic) orchestrator, GPT 5.5 (OpenAI) implementation subagent
  • Used for: Audited prefix usage, implemented the hard-cut renames, updated tests, and prepared verification/PR notes.

@homeboy-ci

homeboy-ci Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Homeboy Results — data-machine

Lint

lint — passed

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

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-lint-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-lint-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine/actions/runs/28680895064

Test

test — failed

ℹ️ No tests ran — the runner failed before producing results. See raw_output.stderr_tail / raw_output.stdout_tail for the underlying error (bootstrap failure, missing deps, DB connection, etc.).
ℹ️ To run specific tests: homeboy test data-machine -- --filter=TestName
ℹ️ Auto-fix lint issues: homeboy refactor data-machine --from lint --write
ℹ️ Collect coverage: homeboy test data-machine --coverage
ℹ️ Analyze failures: homeboy test data-machine --analyze
ℹ️ Pass args to test runner: homeboy test -- [args]
ℹ️ Full options: homeboy docs commands/test
Deep dive: homeboy test data-machine --changed-since 28dd1a0

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-test-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-test-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine/actions/runs/28680895064

Audit

audit — passed

  • audit — 533 finding(s)
  • Total: 533 finding(s)

Deep dive: homeboy audit data-machine --changed-since 28dd1a0

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-audit-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-audit-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine/actions/runs/28680895064
Tooling versions
  • Homeboy CLI: homeboy 0.280.13+89fee93c89fb+9205bd15
  • Extension: wordpress from https://github.com/Extra-Chill/homeboy-extensions
  • Extension revision: ec4685ca
  • Action: unknown@unknown

@chubes4 chubes4 merged commit 6885cba into main Jul 3, 2026
4 of 5 checks passed
@chubes4 chubes4 deleted the fix-dm-prefix-purge branch July 3, 2026 20:07
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