atomic

flowstate-flowstate-platform-epicdm-flowstate-provisioning

Package-local agent skill for @epicdm/flowstate-provisioning.

Tags

Publisher

Versions

1 version published — latest: 0.1.0

  • 0.1.0
    publishedInvalid Date

Skill

flowstate-provisioning Package Skill

Package: @epicdm/flowstate-provisioning Repository: flowstate-platform Path: packages/worker-provisioning Version: 0.1.0

Use this published Dojo skill as the package-level entrypoint. For detailed workflows, use the package-local skills listed below.

Primary Package Workflow

Provisioning Queue Lifecycle

Status: Active Purpose: Keep queue-driven tenant infrastructure changes ordered and recoverable. Scope: packages/worker-provisioning Trigger: Work on provisioning queue messages, handlers, Cloudflare helpers, tenant worker template, or job statuses. Input: Lifecycle change and expected tenant infrastructure effect. Output: Handler changes with retry-safe job behavior and tests.


Workflow

  1. Start at src/index.ts to understand queue dispatch, job status changes, retry backoff, and dead-letter behavior.
  2. For provision behavior, follow src/handlers/provision.ts in order: D1, schema SQL, KV, Vectorize, dispatch worker, seed data, credit bucket, tenant row, optional OBS project, active status, job completion.
  3. For suspend/resume/delete, use matching files in src/handlers and Cloudflare helper modules.
  4. Update src/cloudflare/*.ts helpers when API shape changes. createCfClient throws on success: false; tests should assert thrown errors.
  5. Keep optional integrations non-blocking when source already treats them that way, especially OBS project creation in provision.
  6. Do not acknowledge failed messages after max attempts; the worker intentionally leaves them for Cloudflare Queues dead-letter handling.

Verification

  • yarn test __tests__/handlers/provision.test.ts
  • yarn test __tests__/handlers/suspend.test.ts __tests__/handlers/resume.test.ts __tests__/handlers/delete.test.ts
  • yarn test __tests__/cloudflare/*.test.ts
  • yarn typecheck

Composition

  • Use flowstate-provisioning-subscription-cron for jobs created by subscription expiry.
  • Use flowstate-rxdb-d1-rest-rbac when tenant schema or worker behavior is involved.

Package Skill Inventory

worker-provisioning Skill Inventory

Package: @epicdm/flowstate-provisioning Purpose: Queue-driven tenant infrastructure lifecycle on Cloudflare plus subscription lifecycle enforcement.

SkillTypeUse WhenSource Anchors
flowstate-provisioning-queue-lifecycleWorkflowChanging provision, suspend, resume, delete, Cloudflare API calls, tenant worker template, queue retry, or job status behavior.src/index.ts, src/handlers/*.ts, src/cloudflare/*.ts, src/lib/template.ts
flowstate-provisioning-subscription-cronWorkflowChanging renewal_due, past_due, expired, suspend enqueue, webhook, or orphaned job behavior.src/cron/subscription-check.ts, __tests__/cron/subscription-check.test.ts

Composition

  • Compose with flowstate-payment-x402-provisioning when jobs are enqueued from paid provisioning.
  • Compose with flowstate-rxdb-d1-rest-rbac when tenant worker template or D1 schema behavior changes.
  • Compose with flowstate-obs-ingestion-streaming when OBS project setup changes.

Review Gate

worker-provisioning Skill Review

Reviewed: 2026-06-30 Result: Pass for local agent use.

Checks

  • Skills capture handler sequence, retry semantics, and subscription cron behavior.
  • Source paths and tests are concrete.
  • No API/source or Dojo files were modified.

Usage

Start with this skill to understand the package purpose, then use the package-local focused skills for specific workflows. Keep this Dojo version aligned with packages/worker-provisioning/package.json. Do not treat generated feature lists as lessons; use workflow evidence from CODE-REVIEW.md, SKILL-INVENTORY.md, and REVIEW.md.

Install

Run this in your project to install via CLI:

fscloud dojo skill install flowstate-flowstate-platform-epicdm-flowstate-provisioning --target <target> --out ./skills

Replace <target> with your agent target identifier. See the CLI docs for details.