Skip to content

Remove legacy task input aliases#805

Merged
chubes4 merged 2 commits into
mainfrom
fix/issue-766-legacy-compat-boundaries
Jun 8, 2026
Merged

Remove legacy task input aliases#805
chubes4 merged 2 commits into
mainfrom
fix/issue-766-legacy-compat-boundaries

Conversation

@chubes4

@chubes4 chubes4 commented Jun 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Delete unsupported legacy compatibility modules for task input, recipe alias, sandbox tool metadata, and PHP result/input normalization.
  • Require canonical task and recipe contracts: goal, agent_bundles, sandbox_tool_policy, inputs.extra_plugins, steps-json, and canonical sandbox runtime metadata.
  • Update docs, recipes, fixtures, and smokes to use canonical inputs and reject legacy aliases instead of normalizing them.

Fixes #766.

Deleted legacy paths

  • Removed packages/runtime-core/src/legacy-task-input.ts, recipe-compat.ts, and sandbox-tool-metadata-compat.ts.
  • Removed packages/wordpress-plugin/src/class-wp-codebox-legacy-input-normalizer.php and class-wp-codebox-legacy-result-normalizer.php.
  • Removed support for task, agentBundles, sandboxToolPolicy, inputs.extraPlugins, browser actions-json, legacy sandbox execution_location / transport_visibility metadata, and the homeboy/wp-codebox-task-request/v1 parent request schema.
  • Removed Agents API legacy schema advertisements including legacy_abilities and x-wp-codebox-accepted-schemas.

Checks

  • npm run build
  • npm run task-input-contract-smoke
  • npm run sandbox-tool-policy-smoke
  • npm run command-registry-smoke
  • npm run recipe-dry-run-smoke
  • npm run runtime-action-adapter-smoke
  • npm run wordpress-plugin-smoke
  • npm run wordpress-recipe-builders-smoke
  • npm run recipe-build-cli-smoke
  • npm run agent-task-run-runtime-components-smoke
  • npm run recipe-run-php-plugin-load-smoke
  • git diff --check

AI assistance

  • AI assistance: Yes
  • Tool(s): OpenCode (openai/gpt-5.5)
  • Used for: Drafted the canonical-only compatibility removal, updated tests/docs, and ran local verification; Chris remains responsible for review and merge.

@chubes4

chubes4 commented Jun 7, 2026

Copy link
Copy Markdown
Collaborator Author

Holding this PR before merge. The current shape mostly preserves and centralizes legacy compatibility paths, which leaves explicit technical debt unless each accepted legacy surface is tied to a concrete shipped-input or persisted-data requirement. Please revise toward removing unsupported legacy inputs by default, or document the exact required compatibility surface and keep only that bounded normalization.

@chubes4 chubes4 marked this pull request as draft June 7, 2026 23:59
@chubes4 chubes4 marked this pull request as ready for review June 8, 2026 00:02
@chubes4 chubes4 changed the title Isolate legacy compatibility boundaries Remove legacy task input aliases Jun 8, 2026
@chubes4 chubes4 force-pushed the fix/issue-766-legacy-compat-boundaries branch from 7473649 to 4064e48 Compare June 8, 2026 00:56
@chubes4 chubes4 merged commit e7437cf into main Jun 8, 2026
@chubes4 chubes4 deleted the fix/issue-766-legacy-compat-boundaries branch June 8, 2026 00:56
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.

Isolate legacy compatibility paths at input and output boundaries

1 participant