Harden Cloudflare queue dispatch semantics #631
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Agent Task Contracts | |
| on: | |
| pull_request: | |
| paths: | |
| - ".github/scripts/run-agent-task/**" | |
| - ".github/workflows/agent-task-contracts.yml" | |
| - ".github/workflows/run-agent-task.yml" | |
| - "contracts/agent-task-workflow-request.fixture.json" | |
| - "contracts/run-agent-task-reusable-workflow-interface.v1.json" | |
| - "docs/agent-task-reusable-workflow.md" | |
| - "fixtures/agent-task-reusable-workflow-consumer*.yml" | |
| - "fixtures/agent-task-runtime-sources-run-29299109269.json" | |
| - "fixtures/agent-task-runtime-paths-run-29305012941.json" | |
| - "package-lock.json" | |
| - "package.json" | |
| - "packages/runtime-playground/src/**" | |
| - "tests/browser-*.test.ts" | |
| - "tests/editor-*.test.ts" | |
| - "tests/agent-task-*.test.ts" | |
| - "tests/runtime-sources-materialization.test.ts" | |
| - "tests/runtime-sources-playground-integration.test.ts" | |
| - "tests/execute-native-agent-task-playground-e2e.test.ts" | |
| - "tests/execute-native-agent-task-interruption.test.mjs" | |
| - "tests/trusted-apply-artifact-channel.integration.test.ts" | |
| - "tests/redaction.test.ts" | |
| - "tests/production-boundary-enforcement.test.ts" | |
| - "tests/runtime-tool-policy.test.ts" | |
| - "tests/browser-canonical-preview-origin.test.ts" | |
| - "tests/browser-adaptive-exploration.test.ts" | |
| - "packages/runtime-core/src/browser-adaptive-exploration.ts" | |
| - "packages/runtime-playground/src/browser-actions-runner.ts" | |
| - "packages/runtime-playground/src/browser-adaptive-explorer.ts" | |
| - "packages/runtime-playground/src/browser-artifacts.ts" | |
| - "packages/runtime-playground/src/browser-multi-actor-scenario-runner.ts" | |
| - "packages/runtime-playground/src/browser-preview-routing.ts" | |
| - "packages/runtime-playground/src/browser-probe-runner.ts" | |
| - "packages/runtime-playground/src/editor-command-runners.ts" | |
| - "packages/runtime-playground/src/preview-server.ts" | |
| - "packages/runtime-playground/src/phpunit-command-handlers.ts" | |
| - "packages/runtime-playground/src/playground-cli-runner.ts" | |
| - "packages/runtime-playground/src/playground-wordpress-archive-cache.ts" | |
| - "tests/playground-custom-archive-cache*.test.ts" | |
| - "tests/fixtures/playground-cache-lease-child.ts" | |
| - "tests/playground-phpunit-readonly-cache.integration.test.ts" | |
| - "tests/fixtures/phpunit-playground-harness/**" | |
| - "packages/cli/src/bounded-recipe-plan.ts" | |
| - "packages/runtime-core/src/bounded-runtime-plan.ts" | |
| - "tests/bounded-*.test.ts" | |
| - "tests/disposable-mysql-mysqli.integration.test.ts" | |
| push: | |
| paths: | |
| - ".github/scripts/run-agent-task/**" | |
| - ".github/workflows/agent-task-contracts.yml" | |
| - ".github/workflows/run-agent-task.yml" | |
| - "contracts/agent-task-workflow-request.fixture.json" | |
| - "contracts/run-agent-task-reusable-workflow-interface.v1.json" | |
| - "docs/agent-task-reusable-workflow.md" | |
| - "fixtures/agent-task-reusable-workflow-consumer*.yml" | |
| - "fixtures/agent-task-runtime-sources-run-29299109269.json" | |
| - "fixtures/agent-task-runtime-paths-run-29305012941.json" | |
| - "package-lock.json" | |
| - "package.json" | |
| - "packages/runtime-playground/src/**" | |
| - "tests/browser-*.test.ts" | |
| - "tests/editor-*.test.ts" | |
| - "tests/agent-task-*.test.ts" | |
| - "tests/runtime-sources-materialization.test.ts" | |
| - "tests/runtime-sources-playground-integration.test.ts" | |
| - "tests/execute-native-agent-task-playground-e2e.test.ts" | |
| - "tests/execute-native-agent-task-interruption.test.mjs" | |
| - "tests/trusted-apply-artifact-channel.integration.test.ts" | |
| - "tests/redaction.test.ts" | |
| - "tests/production-boundary-enforcement.test.ts" | |
| - "tests/runtime-tool-policy.test.ts" | |
| - "tests/browser-canonical-preview-origin.test.ts" | |
| - "tests/browser-adaptive-exploration.test.ts" | |
| - "packages/runtime-core/src/browser-adaptive-exploration.ts" | |
| - "packages/runtime-playground/src/browser-actions-runner.ts" | |
| - "packages/runtime-playground/src/browser-adaptive-explorer.ts" | |
| - "packages/runtime-playground/src/browser-artifacts.ts" | |
| - "packages/runtime-playground/src/browser-multi-actor-scenario-runner.ts" | |
| - "packages/runtime-playground/src/browser-preview-routing.ts" | |
| - "packages/runtime-playground/src/browser-probe-runner.ts" | |
| - "packages/runtime-playground/src/editor-command-runners.ts" | |
| - "packages/runtime-playground/src/preview-server.ts" | |
| - "packages/runtime-playground/src/phpunit-command-handlers.ts" | |
| - "packages/runtime-playground/src/playground-cli-runner.ts" | |
| - "packages/runtime-playground/src/playground-wordpress-archive-cache.ts" | |
| - "tests/playground-custom-archive-cache*.test.ts" | |
| - "tests/fixtures/playground-cache-lease-child.ts" | |
| - "tests/playground-phpunit-readonly-cache.integration.test.ts" | |
| - "tests/fixtures/phpunit-playground-harness/**" | |
| - "packages/cli/src/bounded-recipe-plan.ts" | |
| - "packages/runtime-core/src/bounded-runtime-plan.ts" | |
| - "tests/bounded-*.test.ts" | |
| - "tests/disposable-mysql-mysqli.integration.test.ts" | |
| jobs: | |
| contracts: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: '8.2' | |
| tools: composer:v2 | |
| - run: npm ci | |
| - name: Cache Playwright Chromium | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.cache/ms-playwright | |
| key: ${{ runner.os }}-playwright-chromium-${{ hashFiles('package-lock.json') }} | |
| - name: Install Playwright Chromium | |
| run: npx playwright install --with-deps chromium | |
| - run: npm run build | |
| - run: npm run test:browser-accessibility-oracles | |
| - run: npm run test:agent-task-contracts | |
| - run: npm run test:browser-canonical-preview-origin | |
| - run: npm run test:bounded-runtime-plan | |
| - run: npm run test:bounded-recipe-plan | |
| - run: npm run test:bounded-recipe-plan-integration | |
| - run: npm run test:disposable-mysql-mysqli-e2e | |
| - run: npm run test:runtime-sources-playground-integration | |
| - run: npm run test:playground-phpunit-readonly-cache-integration | |
| - run: npm run test:playground-custom-archive-cache | |
| - run: npm run test:native-agent-task-playground-e2e | |
| - run: npm run test:native-agent-task-interruption | |
| - run: npm run test:trusted-apply-artifact-channel | |
| - run: npm run test:runtime-command-artifact-bounds | |
| - run: npm run test:redaction | |
| - run: npm run test:browser-preview-routing | |
| - run: npm run test:browser-routed-command-security | |
| - run: npm run test:production-boundary-enforcement | |
| - run: npm run test:runtime-tool-policy | |
| workflow-lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: docker://rhysd/actionlint:1.7.7 | |
| with: | |
| args: .github/workflows/agent-task-contracts.yml .github/workflows/run-agent-task.yml |