Skip to content

Worker Inventory

Last updated: 2026-05-25 (MIGRATION-CAPABILITY-RECOVERY-AUDIT-01). Previous update: 2026-04-20 (TERRAFORM-REBUILD-01, session 65).

All workers in this inventory run in the RTOpacks Cloudflare account (f95d45376ebeeeaf011a4f0ec0fb7b38). Database IDs below are the current, verified values from the deployed workers' wrangler.jsonc / wrangler.toml files.

Standing rule: wrangler d1 execute from the project root resolves to the wrong Cloudflare account (UCCO Foundation) due to an unrelated .wrangler state. Always cd apps/admin/ before running D1 commands. See docs/docs/ops/standing-rules.md.

Audit note 2026-05-25: Ground truth re-established via Cloudflare Workers API workers_list. 38 workers deployed in the RTOpacks account. The 2026-04-20 version of this inventory listed 18 workers — 20 deployed workers were undocumented. This update reconciles documentation with reality. Three name corrections, one phantom worker removed, four staging counterparts added, all auxiliary/proxy workers listed.

Customer-Facing Apps (always-on HTTP)

Worker Source path Database(s) / bindings Purpose
rtopacks-admin apps/admin ops-db + rtopacks-db + radar-db + landscape-db + others Admin console (org browser, Radar, finance, Sync Observatory)
rtopacks-site apps/site ops-db + rtopacks-db + calendar-db + engine-db-oc + licensing-db-oc + microcredentials-db Public site (rtopacks.com.au); producer for rtopacks-ingest-queue
rtopacks-workspace apps/workspace ops-db + engine-db-oc Client workspace (billing, entitlements, subscription)
rtopacks-internal-api workers/internal-api ops-db + rtopacks-db + engine-db-oc + microcredentials-db + licensing-db-oc Central API for billing, QB push, org lookups, entitlements

Staging Counterparts

Worker Source path Bindings Notes
rtopacks-admin-dev apps/admin (env=dev) rto-ops-db-staging + rto-workspace-db-staging + rto-intake-db-staging + rtopacks-db (shared with prod) + others Routes admin.rtopacks.dev. D1 names retain -staging suffix per ADR-027 D1-name lag; alignment via D1-NAME-ENVIRONMENT-RENAME-01
rtopacks-site-dev apps/site (env=dev) (dev variant) Routes rtopacks.dev
rtopacks-workspace-dev apps/workspace (env=dev) rto-workspace-db-staging + others Routes my.rtopacks.dev
rtopacks-internal-api-dev workers/internal-api (env=dev) dev DB bindings Internal API for dev surfaces

Automated Data Pipeline Workers (cron-driven)

Worker Source path Database(s) Schedule Dispatch Purpose
tga-sync scripts/workers/tga-sync rtopacks-db + ops-db 0 16 * * SAT (Sun 2am AEST) Queue (tga-sync-queue) TGA weekly delta sync — sweep, training, orgs, utility phases chained via queue
cricos-sync workers/cricos-sync rtopacks-db + ops-db 0 18 1 * * (1st/mo 4am AEST) Queue (cricos-sync-queue) CRICOS monthly refresh — institutions, courses, locations, course-locations
rtopacks-tga-ingest workers/tga-ingest rtopacks-db None (queue-only) Queue consumer (rtopacks-ingest-queue, DLQ: rtopacks-ingest-dlq) On-demand RTO enrichment from public site traffic
enrich-sync workers/enrich-sync rtopacks-db + ops-db 0 12 * * SAT (Sun 10pm AEST) Direct cron RTO enrichment from TGA — rotating sweep of all current RTOs
rtopacks-teqsa-sync workers/teqsa-sync licensing-db-oc + ops-db 0 5 1 * * (1st/mo 3pm AEST) Direct cron TEQSA monthly provider register refresh
rtopacks-cal-sync workers/cal-sync calendar-db + ops-db 0 20 1 * * (1st/mo 6am AEST) Direct cron VET industry calendar events
qb-reconcile workers/qb-reconcile ops-db + SESSION_KV 0 20 * * * (daily 6am AEST) Direct cron QB OAuth token heartbeat (100-day rotation) + retry failed QB pushes
rto-tender-sync workers/rto-tender-sync ops-db 0 8 * * * + 0 10 * * SAT Direct cron AusTender ATM daily + OCDS weekly. Previously documented as ops-tender-sync — corrected 2026-05-25 to match deployed name.
rto-traffic-snapshot workers/rto-traffic-snapshot ops-db 0 2 * * * (daily 12pm AEST) Direct cron Zone traffic stats to D1. Previously documented as traffic-snapshot — corrected 2026-05-25. Note: duplicates CF Zone Analytics; vestigial pending OPS-DB-CONTENT-AUDIT-01 verdict.
rtopacks-traffic-logger workers/traffic-logger ops-db 0 2 * * * Direct cron Daily per-request traffic log aggregation. Reader: apps/admin Visitors surface.
stats-cache (no on-disk source — deployed via dashboard, source not in repo) KV + rtopacks-db 0 */6 * * * (every 6hr) Direct cron ABS + TGA homepage stats
qual-enrichment (no on-disk source — deployed via dashboard, source not in repo) rtopacks-db 0 17 * * * (daily 3am AEST) Direct cron Qualification pre-aggregation. 2026-05-25 audit: target table qual_enrichment has zero consumers; producer broken since 2026-03-29 (downstream of broken GLMD/IVI/OSL/VNDA cohort). Retirement-with-rebuild-path scheduled.
radar-crawl workers/radar-crawl radar-db + rtopacks-db + R2 (radar-screenshots) + KV (radar) + Browser binding 0 16 1 * * (monthly 1st 16 UTC) Direct cron RTO digital footprint crawler. Writes raw observations + crawl results + screenshots. Does NOT write radar_dossiers or radar_signals (operator-curated layer).
rtopacks-magda-monitor workers/magda-monitor radar-db (magda_datasets) 0 20 1 * * (monthly 1st 6am AEST) Direct cron MAGDA government dataset catalogue monitoring
rtopacks-jsa-ingest workers/jsa-ingest rtopacks-db (jsa_*) + JSA API via proxy 0 2 1 * * (1st/mo 2am UTC) Direct cron Jobs and Skills Australia — VET training + outcomes ingest. November-only branch writes recon_vnda. Has explicit jsa_ingest_runs status table.
rtopacks-ivi-ingest workers/ivi-ingest rtopacks-db (ivi_vacancies) 0 6 * * 3 (Weds 6 UTC) Direct cron Internet Vacancy Index from JSA. Broken since 2026-03-19 — pending Item 1 of MCRA Phase 5 recovery (jsa-proxy routing).
rtopacks-osl-ingest workers/osl-ingest rtopacks-db (osl_ratings) 0 3 * * 1 (Mon 3 UTC) Direct cron Occupational Skills Lists (skill-shortage ratings). Broken since 2026-03-19 — pending Item 1 of MCRA Phase 5 recovery.
rtopacks-glmd-ingest workers/glmd-ingest rtopacks-db (glmd_regional) 0 5 * * 1 (Mon 5 UTC) Direct cron Regional labour market data. 2026-05-25 audit: zero consumers + broken since 2026-03-19. Retirement scheduled per Item 4 of MCRA Phase 5.
rtopacks-vnda-atlas-ingest workers/vnda-atlas-ingest rtopacks-db (vnda_atlas) 0 4 * * 1 (Mon 4 UTC) Direct cron VNDA atlas (Power BI export source). Table deprecated 2026-03-26 in favour of recon_vnda. Worker retirement scheduled after consumer migration completes per Item 3 of MCRA Phase 5.
rtopacks-d1-warmer workers/d1-warmer rtopacks-db + ops-db + abs-db-oc + KV */10 * * * * Direct cron Keeps D1 read replicas hot
rtopacks-session-archiver workers/session-archiver engine-db-oc + R2 (rtopacks-session-archive) 0 16 * * * (daily 2am AEST) Direct cron Session log archival to R2. Sends failure-only notification email.

Infrastructure / External / Auxiliary Workers (HTTP / queue / proxy)

Worker Source path Database(s) / bindings Purpose
rtopacks-api workers/api rtopacks-db + RTOPACKS_OPERATIONAL_KEYS Workspace API surface
rtopacks-mcp workers/mcp rtopacks-db + engine-db-oc + licensing-db-oc + MCP_API_KEYS Model Context Protocol surface (mcp.rtopacks.com.au). Reads vnda_atlas (line 339) and recon_vnda — Item 3 of MCRA Phase 5 migrates the former to the latter.
rtopacks-prelaunch workers/prelaunch rto-intake-db + rtopacks-db + EMAIL Prelaunch operations (waitlist, intake, verify)
rtopacks-geocoder workers/geocoder rtopacks-db RTO address geocoding
kn-preview workers/kn-preview rtopacks-db Knowledge node preview surface
rtopacks-studio-collab workers/studio-collab-do engine-db-oc + (Durable Object) Studio collaborative editing (Durable Object — see Terraform note below)
rtopacks-jsa-proxy workers/jsa-proxy (no D1 binding) HTTP proxy for jobsandskills.gov.au APIs that block CF Workers IP range. Used by rtopacks-jsa-ingest. Likely also needed for ivi-ingest + osl-ingest recovery (MCRA Phase 5 Item 1).
rto-docs-proxy workers/rto-docs-proxy (no D1; CF Access service token) CF-Access-gated docs proxy (docs.rtopacks.com.au). Used by Claude via path-secret URL.
rto-trust-proxy workers/rto-trust-proxy (no D1) Public trust proxy (trust.rtopacks.com.au)

Databases

All IDs below are verified against the current deployed workers' wrangler.jsonc / wrangler.toml as of 2026-04-13.

Database ID Region Purpose
rtopacks-db 1249760d-070a-43f8-81d7-de462b626cdf OC TGA corpus + CRICOS + enriched RTO data + JSA family tables (the NRT moat). Read-only from most workers; written by tga-sync, cricos-sync, tga-ingest, enrich-sync, qual-enrichment, the ingest cohort (ivi/osl/glmd/vnda/jsa).
ops-db 0692049c-1bf1-49e7-9229-3773eeba1a45 OC Operational state — billing, admin sessions, observatory logs, sync cursors, regulatory events. 60 tables — see [[project-ops-db-content-audit-01]] for content audit pending.
engine-db-oc 81e2919a-6587-40a1-b749-0a65103d95f0 OC Workspace engine state (tier resolution, user sessions, org memberships)
calendar-db 5302f06c-f135-45dd-9e43-6d68d2049e2c OC VET industry calendar events
licensing-db-oc 400fd979-b5f9-460e-b4e2-3af074ecec31 OC NSW occupational licensing
microcredentials-db 6657018a-bff1-4377-b7ee-5223b0780b5b OC Micro-credentials
landscape-db da6ac712-2e13-448a-964f-0eba4ea15006 OC Vendor landscape / market intelligence
radar-db 2ee90250-4a97-4698-a2b7-7a844a70833b OC RTO radar — raw observations (worker-driven) + dossiers/signals (operator-curated). 315 MB.
abs-db-oc 0a78dd86-b129-4175-93fc-396435118954 OC ABS statistical data
rto-ops-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to ops-db. Currently env-scoped, holds zero rows in non-operational tables. See [[project-shared-ops-db-and-live-mirror-01]].
rto-workspace-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to engine-db-oc
rto-intake-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to rto-intake-db
rto-nrt-db (alias name binding) OC Reads rtopacks-db (shared single instance — Pith data is env-agnostic per MV01b/MV02)
rto-licensing-db (alias) OC Reads licensing-db-oc
rto-micro-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to microcredentials-db
rto-radar-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to radar-db
rto-landscape-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to landscape-db
rto-calendar-db-staging (dev variant; D1 name retains -staging suffix per ADR-027 D1-name lag) OC Dev counterpart to calendar-db

KV Namespaces

Binding ID Purpose
SESSION_KV 21f59a0848764fb08c08c4c7eac17535 Admin/workspace sessions, QB OAuth tokens (qb-access-token, qb-refresh-token), cron heartbeats
RTOPACKS_SESSIONS 21f59a0848764fb08c08c4c7eac17535 (same) Alias binding name used by some workers
SEARCH_CACHE afcfa4f69bc64313a0b57474f818e211 Search result cache (admin + site)
RADAR_KV c20a07510b80491faeb79fcb7a74ce89 radar-crawl cursor state
MCP_API_KEYS (mcp-specific) MCP authentication
RTOPACKS_OPERATIONAL_KEYS (api-specific) API operational keys

R2 Buckets

Bucket Used by Purpose
tga-content tga-sync, tga-ingest TGA payload archive
radar-screenshots radar-crawl RTO site screenshots
rtopacks-client-media apps/admin, apps/workspace Client-uploaded media
rtopacks-session-archive session-archiver Archived session logs

Queues

Queue Producers Consumer DLQ Purpose
tga-sync-queue tga-sync (self) tga-sync Phase-per-invocation chain dispatch for TGA sync
cricos-sync-queue cricos-sync (self) cricos-sync Phase-per-invocation chain dispatch for CRICOS sync
rtopacks-ingest-queue apps/site tga-ingest rtopacks-ingest-dlq On-demand RTO enrichment messages
rtopacks-ingest-dlq (system) (none — manual inspection) Dead-lettered ingest messages

Terraform Disaster Recovery Snapshot

Location: infra/terraform/ at the repo root. State: Local file only (terraform.tfstate), backed up via Rclone. Not in R2. Provider: cloudflare/cloudflare ~> 4.52 (pinned). Posture: Disaster recovery snapshot, refreshed on demand. Not operational tooling. Dashboard + wrangler remain the primary interface.

Captures: zone, 43 DNS records, 33 workers (2026-04-20 snapshot), 9 D1 databases, 8 KV namespaces, 7 R2 buckets, 11 CF Access apps, 2 Pages projects. See infra/terraform/README.md for full details, re-import procedures, and documented gaps.

Not captured in Terraform (import not supported): rtopacks-studio-collab (Durable Object — provider crash), zone settings override, 5 queues. All documented with recreation steps in README.

2026-05-25 audit note: Terraform snapshot captured 33 workers; the current account has 38 deployed (5 added since April: 4 *-staging counterparts created 2026-05-06, plus other deltas). Next Terraform refresh will reconcile.


Worker Deletions

Worker Deleted Reason
rtopacks 2026-04-20 (TERRAFORM-REBUILD-01) Hello World placeholder from account setup (2026-04-08). Returned the string "Hello world" and nothing else. Never built out. Had one inbound service binding from rtopacks-traffic-logger (dead path — traffic-logger has no routes).
ucca-ops 2026-04-20 (TERRAFORM-REBUILD-01) Empty stub — export default { fetch() {} }. Zero implementation, never modified since creation. Name was misleading (not UCCA-related in any functional sense).

Scheduled retirements (MCRA Phase 5)

Worker Retirement reason Tracking
rtopacks-glmd-ingest Zero consumers + broken since 2026-03-19. Retirement-now per [[feedback-rediscovery-beats-archaeology]]. MCRA Phase 5 Item 4
qual-enrichment Zero current consumers; pre-built scaffolding for unbuilt paywalled qual surface. Retire now, rebuild when that surface ships. MCRA Phase 5 Item 4
rtopacks-vnda-atlas-ingest Target table vnda_atlas deprecated 2026-03-26 in favour of recon_vnda. Worker retired after consumer migration. MCRA Phase 5 Item 3

Documentation corrections logged 2026-05-25

  1. reg-intel removed — previous version of this file listed reg-intel as deployed (daily 3 UTC, regulatory revision alerts, rtopacks-db). CF Workers API ground-truth check shows no deployed worker by that name. The 2026-04-20 listing was incorrect.
  2. ops-tender-syncrto-tender-sync — deployed name corrected.
  3. traffic-snapshotrto-traffic-snapshot — deployed name corrected.
  4. abs-monthly-sync etc. — previous listing struck through these correctly (already removed 2026-04-20). No change.

Database ID Correction (carry-forward from 2026-04-20)

The landscape-db and radar-db IDs were transposed in a pre-2026-04-20 version. Corrected 2026-04-20:

Database Correct ID Size
radar-db 2ee90250-4a97-4698-a2b7-7a844a70833b 315 MB
landscape-db da6ac712-2e13-448a-964f-0eba4ea15006 200 KB

Wrangler configs always had the correct IDs. Only this doc was wrong.


  • docs/docs/infrastructure/worker-patterns.md — how the queue-driven sync pipeline works end to end
  • docs/docs/infrastructure/tga-ingest.md — on-demand enrichment details
  • docs/docs/infrastructure/billing.md — billing engine, Stripe, QuickBooks, heartbeat cron, operational runbooks
  • docs/docs/ops/standing-rules.md — operational rules that recur on schedules or conditions
  • infra/terraform/README.md — Terraform disaster recovery snapshot: what's captured, what's gapped, how to re-sync
  • outputs/MIGRATION-CAPABILITY-RECOVERY-AUDIT-01-close.md — the 2026-05-25 audit that prompted this inventory rewrite