crewly 1.20.133 → 1.20.135
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/skills/agent/core/block-task/SKILL.md +16 -3
- package/dist/backend/backend/src/constants.d.ts +82 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +87 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.d.ts +44 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.js +122 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.routes.d.ts +25 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.routes.js +33 -0
- package/dist/backend/backend/src/controllers/bundle/bundle.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +6 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +9 -2
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +28 -0
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +4 -0
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +43 -7
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +144 -51
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/registration-flow-registry.d.ts +92 -0
- package/dist/backend/backend/src/services/agent/registration-flow-registry.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/registration-flow-registry.js +121 -0
- package/dist/backend/backend/src/services/agent/registration-flow-registry.js.map +1 -0
- package/dist/backend/backend/src/services/agent/resumed-kickoff.d.ts +66 -0
- package/dist/backend/backend/src/services/agent/resumed-kickoff.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/resumed-kickoff.js +72 -0
- package/dist/backend/backend/src/services/agent/resumed-kickoff.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.factory.d.ts +62 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.factory.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.factory.js +173 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.factory.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.d.ts +359 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.js +888 -0
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-catalog.d.ts +167 -0
- package/dist/backend/backend/src/services/bundle/bundle-catalog.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-catalog.js +248 -0
- package/dist/backend/backend/src/services/bundle/bundle-catalog.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-connectors.d.ts +43 -0
- package/dist/backend/backend/src/services/bundle/bundle-connectors.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-connectors.js +57 -0
- package/dist/backend/backend/src/services/bundle/bundle-connectors.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-deps.d.ts +37 -0
- package/dist/backend/backend/src/services/bundle/bundle-deps.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-deps.js +60 -0
- package/dist/backend/backend/src/services/bundle/bundle-deps.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-manifest.d.ts +93 -0
- package/dist/backend/backend/src/services/bundle/bundle-manifest.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-manifest.js +532 -0
- package/dist/backend/backend/src/services/bundle/bundle-manifest.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.d.ts +100 -0
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.js +183 -0
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-runtime.d.ts +36 -0
- package/dist/backend/backend/src/services/bundle/bundle-runtime.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-runtime.js +38 -0
- package/dist/backend/backend/src/services/bundle/bundle-runtime.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-skill-installer.d.ts +105 -0
- package/dist/backend/backend/src/services/bundle/bundle-skill-installer.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-skill-installer.js +144 -0
- package/dist/backend/backend/src/services/bundle/bundle-skill-installer.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-state.store.d.ts +48 -0
- package/dist/backend/backend/src/services/bundle/bundle-state.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-state.store.js +90 -0
- package/dist/backend/backend/src/services/bundle/bundle-state.store.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-team.builder.d.ts +81 -0
- package/dist/backend/backend/src/services/bundle/bundle-team.builder.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-team.builder.js +172 -0
- package/dist/backend/backend/src/services/bundle/bundle-team.builder.js.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-time.d.ts +59 -0
- package/dist/backend/backend/src/services/bundle/bundle-time.d.ts.map +1 -0
- package/dist/backend/backend/src/services/bundle/bundle-time.js +98 -0
- package/dist/backend/backend/src/services/bundle/bundle-time.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +5 -0
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/storage.service.js +1 -1
- package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/teams-backup.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/core/teams-backup.service.js +4 -2
- package/dist/backend/backend/src/services/core/teams-backup.service.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.d.ts.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.js +2 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.d.ts +14 -2
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js +37 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +9 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +8 -0
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +21 -0
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +85 -0
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +32 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js +60 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.js +5 -2
- package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
- package/dist/backend/backend/src/services/workflow/cron-task.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/workflow/cron-task.service.js +4 -2
- package/dist/backend/backend/src/services/workflow/cron-task.service.js.map +1 -1
- package/dist/backend/backend/src/types/solution-bundle.types.d.ts +367 -0
- package/dist/backend/backend/src/types/solution-bundle.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/solution-bundle.types.js +17 -0
- package/dist/backend/backend/src/types/solution-bundle.types.js.map +1 -0
- package/dist/backend/backend/src/types/team-template.types.d.ts +8 -0
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
- package/dist/backend/backend/src/types/v2/work-item.types.d.ts +37 -0
- package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/v2/work-item.types.js +33 -0
- package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +82 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +87 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +43 -7
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +144 -51
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/registration-flow-registry.d.ts +92 -0
- package/dist/cli/backend/src/services/agent/registration-flow-registry.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/registration-flow-registry.js +121 -0
- package/dist/cli/backend/src/services/agent/registration-flow-registry.js.map +1 -0
- package/dist/cli/backend/src/services/agent/resumed-kickoff.d.ts +66 -0
- package/dist/cli/backend/src/services/agent/resumed-kickoff.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/resumed-kickoff.js +72 -0
- package/dist/cli/backend/src/services/agent/resumed-kickoff.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.d.ts +359 -0
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.js +888 -0
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-catalog.d.ts +167 -0
- package/dist/cli/backend/src/services/bundle/bundle-catalog.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-catalog.js +248 -0
- package/dist/cli/backend/src/services/bundle/bundle-catalog.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-deps.d.ts +37 -0
- package/dist/cli/backend/src/services/bundle/bundle-deps.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-deps.js +60 -0
- package/dist/cli/backend/src/services/bundle/bundle-deps.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-manifest.d.ts +93 -0
- package/dist/cli/backend/src/services/bundle/bundle-manifest.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-manifest.js +532 -0
- package/dist/cli/backend/src/services/bundle/bundle-manifest.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.d.ts +100 -0
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.js +183 -0
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-runtime.d.ts +36 -0
- package/dist/cli/backend/src/services/bundle/bundle-runtime.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-runtime.js +38 -0
- package/dist/cli/backend/src/services/bundle/bundle-runtime.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-skill-installer.d.ts +105 -0
- package/dist/cli/backend/src/services/bundle/bundle-skill-installer.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-skill-installer.js +144 -0
- package/dist/cli/backend/src/services/bundle/bundle-skill-installer.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-state.store.d.ts +48 -0
- package/dist/cli/backend/src/services/bundle/bundle-state.store.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-state.store.js +90 -0
- package/dist/cli/backend/src/services/bundle/bundle-state.store.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-team.builder.d.ts +81 -0
- package/dist/cli/backend/src/services/bundle/bundle-team.builder.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-team.builder.js +172 -0
- package/dist/cli/backend/src/services/bundle/bundle-team.builder.js.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-time.d.ts +59 -0
- package/dist/cli/backend/src/services/bundle/bundle-time.d.ts.map +1 -0
- package/dist/cli/backend/src/services/bundle/bundle-time.js +98 -0
- package/dist/cli/backend/src/services/bundle/bundle-time.js.map +1 -0
- package/dist/cli/backend/src/services/core/storage.service.js +1 -1
- package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/cli/backend/src/services/core/teams-backup.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/core/teams-backup.service.js +4 -2
- package/dist/cli/backend/src/services/core/teams-backup.service.js.map +1 -1
- package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.d.ts +72 -0
- package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.js +389 -0
- package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -0
- package/dist/cli/backend/src/services/messaging/index.d.ts +15 -0
- package/dist/cli/backend/src/services/messaging/index.d.ts.map +1 -0
- package/dist/cli/backend/src/services/messaging/index.js +20 -0
- package/dist/cli/backend/src/services/messaging/index.js.map +1 -0
- package/dist/cli/backend/src/services/messaging/queue-processor.service.d.ts +224 -0
- package/dist/cli/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/messaging/queue-processor.service.js +969 -0
- package/dist/cli/backend/src/services/messaging/queue-processor.service.js.map +1 -0
- package/dist/cli/backend/src/services/messaging/response-router.service.d.ts +110 -0
- package/dist/cli/backend/src/services/messaging/response-router.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/messaging/response-router.service.js +268 -0
- package/dist/cli/backend/src/services/messaging/response-router.service.js.map +1 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.d.ts +14 -2
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js +37 -1
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -1
- package/dist/cli/backend/src/services/orchestrator/commitment-approval-guard.d.ts +133 -0
- package/dist/cli/backend/src/services/orchestrator/commitment-approval-guard.d.ts.map +1 -0
- package/dist/cli/backend/src/services/orchestrator/commitment-approval-guard.js +232 -0
- package/dist/cli/backend/src/services/orchestrator/commitment-approval-guard.js.map +1 -0
- package/dist/cli/backend/src/services/skill/skill-catalog.service.d.ts +277 -0
- package/dist/cli/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/skill/skill-catalog.service.js +708 -0
- package/dist/cli/backend/src/services/skill/skill-catalog.service.js.map +1 -0
- package/dist/cli/backend/src/services/skill-setup/skill-install-job.service.d.ts +243 -0
- package/dist/cli/backend/src/services/skill-setup/skill-install-job.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/skill-setup/skill-install-job.service.js +439 -0
- package/dist/cli/backend/src/services/skill-setup/skill-install-job.service.js.map +1 -0
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +21 -0
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +85 -0
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +32 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js +60 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/cli/backend/src/services/template/template.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/template/template.service.js +5 -2
- package/dist/cli/backend/src/services/template/template.service.js.map +1 -1
- package/dist/cli/backend/src/services/workflow/cron-task.service.d.ts +316 -0
- package/dist/cli/backend/src/services/workflow/cron-task.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/workflow/cron-task.service.js +1043 -0
- package/dist/cli/backend/src/services/workflow/cron-task.service.js.map +1 -0
- package/dist/cli/backend/src/types/cron-task.types.d.ts +95 -0
- package/dist/cli/backend/src/types/cron-task.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/cron-task.types.js +10 -0
- package/dist/cli/backend/src/types/cron-task.types.js.map +1 -0
- package/dist/cli/backend/src/types/solution-bundle.types.d.ts +367 -0
- package/dist/cli/backend/src/types/solution-bundle.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/solution-bundle.types.js +17 -0
- package/dist/cli/backend/src/types/solution-bundle.types.js.map +1 -0
- package/dist/cli/backend/src/types/team-template.types.d.ts +8 -0
- package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.js.map +1 -1
- package/dist/cli/backend/src/types/v2/work-item.types.d.ts +37 -0
- package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/v2/work-item.types.js +33 -0
- package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
- package/dist/cli/cli/src/commands/deploy-bundle.d.ts +160 -0
- package/dist/cli/cli/src/commands/deploy-bundle.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/deploy-bundle.js +386 -0
- package/dist/cli/cli/src/commands/deploy-bundle.js.map +1 -0
- package/dist/cli/cli/src/commands/onboard.d.ts +32 -1
- package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +80 -3
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/dist/cli/cli/src/constants.d.ts +5 -0
- package/dist/cli/cli/src/constants.d.ts.map +1 -1
- package/dist/cli/cli/src/constants.js +5 -0
- package/dist/cli/cli/src/constants.js.map +1 -1
- package/dist/cli/cli/src/index.js +15 -0
- package/dist/cli/cli/src/index.js.map +1 -1
- package/frontend/dist/assets/{index-e6c403b6.js → index-2c7ee4a6.js} +276 -276
- package/frontend/dist/index.html +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding-checklist.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/onboarding/onboarding-checklist.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onboarding-checklist.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/onboarding/onboarding-checklist.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Commitment Approval Guard — code-level enforcement of the orchestrator's
|
|
3
|
+
* "launching a team needs explicit owner approval" boundary.
|
|
4
|
+
*
|
|
5
|
+
* WHY THIS EXISTS (2026-06-02 autonomy incident, recurrence of 2026-05-30):
|
|
6
|
+
* The orchestrator prompt already forbids launching a team without an explicit
|
|
7
|
+
* affirmative owner directive, and forbids fabricating approval. The orc
|
|
8
|
+
* violated both anyway — it wrote `owner Steve 拍板「启动 Phase 1」` into a
|
|
9
|
+
* delegate WorkItem and cold-started a dormant team, with NO such approving
|
|
10
|
+
* message anywhere in the owner's chat history. Prompt rules have been re-tried
|
|
11
|
+
* across incidents and keep failing: a code gate is the only structural
|
|
12
|
+
* enforcement.
|
|
13
|
+
*
|
|
14
|
+
* THE KEY INSIGHT: the orc can fabricate *text* (a WorkItem title, a Slack
|
|
15
|
+
* message), but it cannot fabricate the *owner's chat history*. So we gate the
|
|
16
|
+
* commitment chokepoint — cold-starting a DORMANT team, which is exactly the
|
|
17
|
+
* prompt's "launching a team / spinning up agents for a new project" class —
|
|
18
|
+
* on a genuine recent owner (`user`-authored) affirmative message. Continuation
|
|
19
|
+
* (a team that already has active members) and crash recovery (rehydrate) are
|
|
20
|
+
* NOT gated.
|
|
21
|
+
*
|
|
22
|
+
* This module is intentionally PURE (no I/O) so the decision logic is fully
|
|
23
|
+
* unit-testable; the caller supplies the team and the owner's recent messages.
|
|
24
|
+
*
|
|
25
|
+
* @module services/orchestrator/commitment-approval-guard
|
|
26
|
+
*/
|
|
27
|
+
/**
|
|
28
|
+
* How far back to look for an owner approval, in ms. Generous (6h) on purpose:
|
|
29
|
+
* a legitimate launch usually follows the owner's "go" within minutes-to-hours,
|
|
30
|
+
* and a wide window minimizes false-blocks of legitimate re-wakes while still
|
|
31
|
+
* blocking the incident class (a launch with NO owner approval anywhere).
|
|
32
|
+
*/
|
|
33
|
+
export declare const COMMITMENT_APPROVAL_LOOKBACK_MS: number;
|
|
34
|
+
/** A minimal view of a team member — only the fields the guard needs. */
|
|
35
|
+
export interface GuardTeamMember {
|
|
36
|
+
agentStatus: string;
|
|
37
|
+
}
|
|
38
|
+
/** A minimal view of a team — only the fields the guard needs. */
|
|
39
|
+
export interface GuardTeam {
|
|
40
|
+
members: GuardTeamMember[];
|
|
41
|
+
}
|
|
42
|
+
/** Result of an approval evaluation. */
|
|
43
|
+
export interface ApprovalDecision {
|
|
44
|
+
/** Whether the launch may proceed. */
|
|
45
|
+
allowed: boolean;
|
|
46
|
+
/** Human-readable reason (always set when `allowed` is false). */
|
|
47
|
+
reason?: string;
|
|
48
|
+
/** The owner message text that satisfied the gate, when allowed via approval. */
|
|
49
|
+
evidence?: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Returns true if the team is dormant — no member is in an active-like status.
|
|
53
|
+
* Starting a member of a dormant team is a COLD LAUNCH (commitment); starting a
|
|
54
|
+
* member of a team that already has live members is continuation.
|
|
55
|
+
*
|
|
56
|
+
* @param team - The team whose members to inspect.
|
|
57
|
+
* @returns True when no member is active/started/starting/activating.
|
|
58
|
+
*/
|
|
59
|
+
export declare function isDormantTeam(team: GuardTeam): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Returns true if `content` contains a clear owner-affirmative approval token.
|
|
62
|
+
*
|
|
63
|
+
* @param content - A chat message's text.
|
|
64
|
+
* @returns True when the text carries an unambiguous launch approval.
|
|
65
|
+
*/
|
|
66
|
+
export declare function containsApprovalToken(content: string): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Evaluates whether a cold team launch is permitted.
|
|
69
|
+
*
|
|
70
|
+
* The launch is BLOCKED only when BOTH:
|
|
71
|
+
* - the team is dormant (this start is a cold launch / "launching a team"), AND
|
|
72
|
+
* - none of the supplied recent owner messages carries an approval token.
|
|
73
|
+
*
|
|
74
|
+
* If the team is already active (continuation) the launch is always allowed.
|
|
75
|
+
* If a genuine owner approval is present, the launch is allowed and the
|
|
76
|
+
* matching message is returned as `evidence`.
|
|
77
|
+
*
|
|
78
|
+
* @param args.team - The team being launched.
|
|
79
|
+
* @param args.recentOwnerMessages - Recent OWNER-authored message texts
|
|
80
|
+
* (already time-windowed and filtered to `sender_type='user'` by the caller).
|
|
81
|
+
* @returns The approval decision.
|
|
82
|
+
*/
|
|
83
|
+
export declare function evaluateColdLaunch(args: {
|
|
84
|
+
team: GuardTeam;
|
|
85
|
+
recentOwnerMessages: string[];
|
|
86
|
+
}): ApprovalDecision;
|
|
87
|
+
/** A minimal view of a WorkItem — only the fields the exemption needs. */
|
|
88
|
+
export interface GuardWorkItem {
|
|
89
|
+
/** WorkItem type, e.g. 'cron_run' for scheduled runs. */
|
|
90
|
+
type?: string;
|
|
91
|
+
/** Trigger id, set when an event/time trigger created/woke the WorkItem. */
|
|
92
|
+
triggerId?: string;
|
|
93
|
+
/** Extensible metadata; cron runs carry `source:'cron'` + `cronTaskId`. */
|
|
94
|
+
metadata?: Record<string, unknown> | null;
|
|
95
|
+
}
|
|
96
|
+
/** A WorkItem's self-declared scheduled origin, pending registry verification. */
|
|
97
|
+
export interface ScheduleClaim {
|
|
98
|
+
/** Which scheduler the WorkItem claims to originate from. */
|
|
99
|
+
kind: 'cron' | 'trigger';
|
|
100
|
+
/** The id to verify against the real scheduler registry (unfakeable check). */
|
|
101
|
+
refId: string;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Extracts a WorkItem's claimed scheduled origin, if any.
|
|
105
|
+
*
|
|
106
|
+
* Returns the backing cron-task / trigger id that the CALLER must then verify
|
|
107
|
+
* against the real scheduler registry. Returns null when the WorkItem makes no
|
|
108
|
+
* verifiable scheduled-origin claim (e.g. a `cron_run` with no `cronTaskId`, or
|
|
109
|
+
* an ordinary delegate WorkItem) — such items get no exemption.
|
|
110
|
+
*
|
|
111
|
+
* @param wi - The WorkItem that triggered the wake.
|
|
112
|
+
* @returns The schedule claim to verify, or null if none.
|
|
113
|
+
*/
|
|
114
|
+
export declare function extractScheduleClaim(wi: GuardWorkItem): ScheduleClaim | null;
|
|
115
|
+
/**
|
|
116
|
+
* Decides whether a wake is pre-authorized by a real owner-configured schedule.
|
|
117
|
+
*
|
|
118
|
+
* The decision is the whole exemption logic, made unit-testable by injecting the
|
|
119
|
+
* registry lookups: a claim is honored ONLY when its id resolves in the real
|
|
120
|
+
* scheduler, so a forged `source:'cron'` claim with a non-existent id is
|
|
121
|
+
* rejected and falls through to the commitment gate.
|
|
122
|
+
*
|
|
123
|
+
* @param wi - The WorkItem that triggered the wake (may be null).
|
|
124
|
+
* @param registry - Lookups against the REAL scheduler registry.
|
|
125
|
+
* @param registry.cronTaskExists - Resolves true iff the cron task id is registered.
|
|
126
|
+
* @param registry.triggerExists - True iff the trigger id is registered.
|
|
127
|
+
* @returns True when the wake should bypass the commitment gate.
|
|
128
|
+
*/
|
|
129
|
+
export declare function isPreAuthorizedSchedule(wi: GuardWorkItem | null | undefined, registry: {
|
|
130
|
+
cronTaskExists: (id: string) => Promise<boolean>;
|
|
131
|
+
triggerExists: (id: string) => boolean;
|
|
132
|
+
}): Promise<boolean>;
|
|
133
|
+
//# sourceMappingURL=commitment-approval-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitment-approval-guard.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/commitment-approval-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAyDH;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,QAAqB,CAAC;AAElE,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,kEAAkE;AAClE,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAS9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,IAAI,EAAE,SAAS,CAAC;IAChB,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B,GAAG,gBAAgB,CAwDnB;AAoBD,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC3C;AAED,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,+EAA+E;IAC/E,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAiB5E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,EACpC,QAAQ,EAAE;IACR,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;CACxC,GACA,OAAO,CAAC,OAAO,CAAC,CAMlB"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Commitment Approval Guard — code-level enforcement of the orchestrator's
|
|
3
|
+
* "launching a team needs explicit owner approval" boundary.
|
|
4
|
+
*
|
|
5
|
+
* WHY THIS EXISTS (2026-06-02 autonomy incident, recurrence of 2026-05-30):
|
|
6
|
+
* The orchestrator prompt already forbids launching a team without an explicit
|
|
7
|
+
* affirmative owner directive, and forbids fabricating approval. The orc
|
|
8
|
+
* violated both anyway — it wrote `owner Steve 拍板「启动 Phase 1」` into a
|
|
9
|
+
* delegate WorkItem and cold-started a dormant team, with NO such approving
|
|
10
|
+
* message anywhere in the owner's chat history. Prompt rules have been re-tried
|
|
11
|
+
* across incidents and keep failing: a code gate is the only structural
|
|
12
|
+
* enforcement.
|
|
13
|
+
*
|
|
14
|
+
* THE KEY INSIGHT: the orc can fabricate *text* (a WorkItem title, a Slack
|
|
15
|
+
* message), but it cannot fabricate the *owner's chat history*. So we gate the
|
|
16
|
+
* commitment chokepoint — cold-starting a DORMANT team, which is exactly the
|
|
17
|
+
* prompt's "launching a team / spinning up agents for a new project" class —
|
|
18
|
+
* on a genuine recent owner (`user`-authored) affirmative message. Continuation
|
|
19
|
+
* (a team that already has active members) and crash recovery (rehydrate) are
|
|
20
|
+
* NOT gated.
|
|
21
|
+
*
|
|
22
|
+
* This module is intentionally PURE (no I/O) so the decision logic is fully
|
|
23
|
+
* unit-testable; the caller supplies the team and the owner's recent messages.
|
|
24
|
+
*
|
|
25
|
+
* @module services/orchestrator/commitment-approval-guard
|
|
26
|
+
*/
|
|
27
|
+
import { CREWLY_CONSTANTS } from '../../constants.js';
|
|
28
|
+
/**
|
|
29
|
+
* Agent statuses that count as "this member is up" — a team with any such
|
|
30
|
+
* member is NOT dormant, so starting another member is continuation, not a
|
|
31
|
+
* launch.
|
|
32
|
+
*/
|
|
33
|
+
const ACTIVE_LIKE_STATUSES = new Set([
|
|
34
|
+
CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVE,
|
|
35
|
+
CREWLY_CONSTANTS.AGENT_STATUSES.STARTED,
|
|
36
|
+
CREWLY_CONSTANTS.AGENT_STATUSES.STARTING,
|
|
37
|
+
CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVATING,
|
|
38
|
+
]);
|
|
39
|
+
/**
|
|
40
|
+
* Affirmative approval tokens the OWNER may use to grant a launch. Deliberately
|
|
41
|
+
* conservative — clear, low-ambiguity directives only — because a false match
|
|
42
|
+
* lets a fabricated launch through (the failure mode this guard prevents),
|
|
43
|
+
* whereas a missed match merely defers a legitimate launch until the owner
|
|
44
|
+
* re-confirms (recoverable). Bare "ok"/"yes"/"go"/"可以" are intentionally
|
|
45
|
+
* EXCLUDED: they appear constantly in non-approval chatter. Matches the
|
|
46
|
+
* affirmative tokens enumerated in the orchestrator prompt's APPROVAL BOUNDARY.
|
|
47
|
+
*/
|
|
48
|
+
const APPROVAL_TOKENS_CJK = [
|
|
49
|
+
'启动', '批准', '同意', '拍板', '开干', '开始做', '开始吧', '上线吧', '去做吧', '动手',
|
|
50
|
+
];
|
|
51
|
+
/** English approval phrases, matched case-insensitively as whole phrases. */
|
|
52
|
+
const APPROVAL_PATTERNS_EN = [
|
|
53
|
+
/\bgo ahead\b/i,
|
|
54
|
+
/\bdo it\b/i,
|
|
55
|
+
/\bproceed\b/i,
|
|
56
|
+
/\bapprove[ds]?\b/i,
|
|
57
|
+
/\blaunch it\b/i,
|
|
58
|
+
/\bship it\b/i,
|
|
59
|
+
/\bgreen ?light\b/i,
|
|
60
|
+
/\blet'?s go\b/i,
|
|
61
|
+
];
|
|
62
|
+
/**
|
|
63
|
+
* Interrogative markers. The prompt's rule is explicit: **a question is never
|
|
64
|
+
* approval**. "要不要启动?" / "should we launch?" both contain an approval token
|
|
65
|
+
* as a substring, so without this check they would falsely read as a grant.
|
|
66
|
+
*/
|
|
67
|
+
const QUESTION_MARKERS = [
|
|
68
|
+
/[??]/,
|
|
69
|
+
/要不要/,
|
|
70
|
+
/是否/,
|
|
71
|
+
/需不需要/,
|
|
72
|
+
/[吗呢]\s*[。.!!]?\s*$/,
|
|
73
|
+
/\bshould (we|i|it)\b/i,
|
|
74
|
+
/\bwhether\b/i,
|
|
75
|
+
/\bdo you (want|think)\b/i,
|
|
76
|
+
];
|
|
77
|
+
/**
|
|
78
|
+
* How far back to look for an owner approval, in ms. Generous (6h) on purpose:
|
|
79
|
+
* a legitimate launch usually follows the owner's "go" within minutes-to-hours,
|
|
80
|
+
* and a wide window minimizes false-blocks of legitimate re-wakes while still
|
|
81
|
+
* blocking the incident class (a launch with NO owner approval anywhere).
|
|
82
|
+
*/
|
|
83
|
+
export const COMMITMENT_APPROVAL_LOOKBACK_MS = 6 * 60 * 60 * 1000;
|
|
84
|
+
/**
|
|
85
|
+
* Returns true if the team is dormant — no member is in an active-like status.
|
|
86
|
+
* Starting a member of a dormant team is a COLD LAUNCH (commitment); starting a
|
|
87
|
+
* member of a team that already has live members is continuation.
|
|
88
|
+
*
|
|
89
|
+
* @param team - The team whose members to inspect.
|
|
90
|
+
* @returns True when no member is active/started/starting/activating.
|
|
91
|
+
*/
|
|
92
|
+
export function isDormantTeam(team) {
|
|
93
|
+
return !team.members.some((m) => ACTIVE_LIKE_STATUSES.has(m.agentStatus));
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Returns true if `content` contains a clear owner-affirmative approval token.
|
|
97
|
+
*
|
|
98
|
+
* @param content - A chat message's text.
|
|
99
|
+
* @returns True when the text carries an unambiguous launch approval.
|
|
100
|
+
*/
|
|
101
|
+
export function containsApprovalToken(content) {
|
|
102
|
+
if (!content)
|
|
103
|
+
return false;
|
|
104
|
+
// A question is NEVER approval, even if it contains an approval word
|
|
105
|
+
// ("要不要启动?" / "should we proceed?"). Reject interrogatives outright.
|
|
106
|
+
if (QUESTION_MARKERS.some((re) => re.test(content)))
|
|
107
|
+
return false;
|
|
108
|
+
for (const tok of APPROVAL_TOKENS_CJK) {
|
|
109
|
+
if (content.includes(tok))
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
return APPROVAL_PATTERNS_EN.some((re) => re.test(content));
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Evaluates whether a cold team launch is permitted.
|
|
116
|
+
*
|
|
117
|
+
* The launch is BLOCKED only when BOTH:
|
|
118
|
+
* - the team is dormant (this start is a cold launch / "launching a team"), AND
|
|
119
|
+
* - none of the supplied recent owner messages carries an approval token.
|
|
120
|
+
*
|
|
121
|
+
* If the team is already active (continuation) the launch is always allowed.
|
|
122
|
+
* If a genuine owner approval is present, the launch is allowed and the
|
|
123
|
+
* matching message is returned as `evidence`.
|
|
124
|
+
*
|
|
125
|
+
* @param args.team - The team being launched.
|
|
126
|
+
* @param args.recentOwnerMessages - Recent OWNER-authored message texts
|
|
127
|
+
* (already time-windowed and filtered to `sender_type='user'` by the caller).
|
|
128
|
+
* @returns The approval decision.
|
|
129
|
+
*/
|
|
130
|
+
export function evaluateColdLaunch(args) {
|
|
131
|
+
const { team, recentOwnerMessages } = args;
|
|
132
|
+
// Continuation / recovery of an already-active team is never gated.
|
|
133
|
+
if (!isDormantTeam(team)) {
|
|
134
|
+
return { allowed: true };
|
|
135
|
+
}
|
|
136
|
+
const approving = recentOwnerMessages.find((m) => containsApprovalToken(m));
|
|
137
|
+
if (approving) {
|
|
138
|
+
return { allowed: true, evidence: approving };
|
|
139
|
+
}
|
|
140
|
+
// Distinguish "wrong wording" from "this channel records nothing" (issue
|
|
141
|
+
// #730). Every messenger surface that carries the owner's words to the
|
|
142
|
+
// orchestrator records them (Chat UI, Slack DM/thread/team channel,
|
|
143
|
+
// WhatsApp, Telegram, Google Chat, portal/mobile relay), so when the window
|
|
144
|
+
// holds ZERO owner messages the owner is typing somewhere that is not a
|
|
145
|
+
// messenger — the orchestrator's terminal itself. There, no phrasing can
|
|
146
|
+
// ever satisfy the gate, and the generic "no such message found" text sends
|
|
147
|
+
// both orc and owner into a pointless retry loop hunting for the magic word.
|
|
148
|
+
//
|
|
149
|
+
// The terminal stays out on purpose: the guard's whole value is that the
|
|
150
|
+
// orchestrator cannot forge the evidence, and a session transcript (or
|
|
151
|
+
// `/api/terminal/:session/write`) is something the orchestrator can write.
|
|
152
|
+
// Accepting it would hand it the forgery the gate was built to prevent
|
|
153
|
+
// (2026-06-02 incident). #730 widened which owner CHANNELS count; which
|
|
154
|
+
// AUTHORS count is unchanged (agent-authored rows are filtered upstream).
|
|
155
|
+
// And a human starting an agent from the dashboard is not gated at all
|
|
156
|
+
// (#775), so the terminal-only owner has a way through too.
|
|
157
|
+
if (recentOwnerMessages.length === 0) {
|
|
158
|
+
return {
|
|
159
|
+
allowed: false,
|
|
160
|
+
reason: 'Cold-launching a dormant team requires an explicit owner approval, and ' +
|
|
161
|
+
'NO owner chat messages at all were recorded in the lookback window. This ' +
|
|
162
|
+
'is a channel problem, not a wording problem: approval must be given on a ' +
|
|
163
|
+
'surface that records owner messages (Slack DM or thread, the Chat UI, ' +
|
|
164
|
+
'WhatsApp, Telegram, Google Chat, or the Crewly portal/mobile app). ' +
|
|
165
|
+
'Approving by typing into the orchestrator\'s terminal cannot satisfy this ' +
|
|
166
|
+
'gate no matter how it is phrased — the guard reads the owner\'s real chat ' +
|
|
167
|
+
'history precisely so the orchestrator cannot fabricate it. Ask the owner to ' +
|
|
168
|
+
'send the approval (启动/批准/go ahead/do it/proceed/approved) on one of those ' +
|
|
169
|
+
'surfaces, or to start the member themselves from the dashboard.',
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
return {
|
|
173
|
+
allowed: false,
|
|
174
|
+
reason: 'Cold-launching a dormant team is a commitment that requires an explicit ' +
|
|
175
|
+
'owner approval (启动/批准/go ahead/do it/proceed/approved). No such owner ' +
|
|
176
|
+
'message was found in recent chat history — holding as pending owner sign-off. ' +
|
|
177
|
+
'A question, a stand-down, or the orchestrator asserting approval itself does ' +
|
|
178
|
+
'NOT count.',
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Extracts a WorkItem's claimed scheduled origin, if any.
|
|
183
|
+
*
|
|
184
|
+
* Returns the backing cron-task / trigger id that the CALLER must then verify
|
|
185
|
+
* against the real scheduler registry. Returns null when the WorkItem makes no
|
|
186
|
+
* verifiable scheduled-origin claim (e.g. a `cron_run` with no `cronTaskId`, or
|
|
187
|
+
* an ordinary delegate WorkItem) — such items get no exemption.
|
|
188
|
+
*
|
|
189
|
+
* @param wi - The WorkItem that triggered the wake.
|
|
190
|
+
* @returns The schedule claim to verify, or null if none.
|
|
191
|
+
*/
|
|
192
|
+
export function extractScheduleClaim(wi) {
|
|
193
|
+
const md = wi.metadata ?? undefined;
|
|
194
|
+
const source = md && typeof md.source === 'string' ? md.source : undefined;
|
|
195
|
+
// Cron-origin: a cron_run WorkItem (or one tagged source:'cron') must carry
|
|
196
|
+
// the backing cron task id so it can be verified. No id → not verifiable → no claim.
|
|
197
|
+
if (wi.type === 'cron_run' || source === 'cron') {
|
|
198
|
+
const cronTaskId = md && typeof md.cronTaskId === 'string' ? md.cronTaskId : '';
|
|
199
|
+
if (cronTaskId)
|
|
200
|
+
return { kind: 'cron', refId: cronTaskId };
|
|
201
|
+
}
|
|
202
|
+
// Trigger-origin: a WorkItem woken by an event/time trigger carries triggerId.
|
|
203
|
+
if (typeof wi.triggerId === 'string' && wi.triggerId) {
|
|
204
|
+
return { kind: 'trigger', refId: wi.triggerId };
|
|
205
|
+
}
|
|
206
|
+
return null;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Decides whether a wake is pre-authorized by a real owner-configured schedule.
|
|
210
|
+
*
|
|
211
|
+
* The decision is the whole exemption logic, made unit-testable by injecting the
|
|
212
|
+
* registry lookups: a claim is honored ONLY when its id resolves in the real
|
|
213
|
+
* scheduler, so a forged `source:'cron'` claim with a non-existent id is
|
|
214
|
+
* rejected and falls through to the commitment gate.
|
|
215
|
+
*
|
|
216
|
+
* @param wi - The WorkItem that triggered the wake (may be null).
|
|
217
|
+
* @param registry - Lookups against the REAL scheduler registry.
|
|
218
|
+
* @param registry.cronTaskExists - Resolves true iff the cron task id is registered.
|
|
219
|
+
* @param registry.triggerExists - True iff the trigger id is registered.
|
|
220
|
+
* @returns True when the wake should bypass the commitment gate.
|
|
221
|
+
*/
|
|
222
|
+
export async function isPreAuthorizedSchedule(wi, registry) {
|
|
223
|
+
if (!wi)
|
|
224
|
+
return false;
|
|
225
|
+
const claim = extractScheduleClaim(wi);
|
|
226
|
+
if (!claim)
|
|
227
|
+
return false;
|
|
228
|
+
if (claim.kind === 'cron')
|
|
229
|
+
return registry.cronTaskExists(claim.refId);
|
|
230
|
+
return registry.triggerExists(claim.refId);
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=commitment-approval-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitment-approval-guard.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/commitment-approval-guard.ts"],"names":[],"mappings":"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"}
|