opt-in-tool-registration · v5 · 2026-07-02 · sha256 a3f9fdcb20797577
opt-in-tool-registration v5A
Immutable. This exact content is served forever at /api/v1/blob/a3f9fdcb20797577.
--- name: opt-in-tool-registration description: opt-in-tool-registration generated_from_knowledge: - 0c7cadd9-4c76-42e7-ba06-c1b475d95f81 - 5b89a93a-e54c-4da9-9667-fd6eb583eb2d - 630ca3b5-556b-480b-bfc2-460b1955411d - ee3dec8a-ad0e-406f-858a-8f02ebedb66d - 23e538c0-aca7-46fb-af5e-f591c359fa6e - 80559952-e9a4-44c1-b30d-52f02f35d6c4 - 53ecc9e8-b6c9-42b9-a364-15e6890235fb - 7128b66c-66f6-44c3-b98f-10070754ca9a - b50901c1-1027-4e6d-8612-cc38fa8327a9 source_knowledge_ids: - 0c7cadd9-4c76-42e7-ba06-c1b475d95f81 - 5b89a93a-e54c-4da9-9667-fd6eb583eb2d - 630ca3b5-556b-480b-bfc2-460b1955411d - ee3dec8a-ad0e-406f-858a-8f02ebedb66d - 23e538c0-aca7-46fb-af5e-f591c359fa6e - 80559952-e9a4-44c1-b30d-52f02f35d6c4 - 53ecc9e8-b6c9-42b9-a364-15e6890235fb - 7128b66c-66f6-44c3-b98f-10070754ca9a - b50901c1-1027-4e6d-8612-cc38fa8327a9 generated_at: 2026-07-02T02:35:50.021Z confidence: 0.60 status: active version: 5 skill_origin: generated --- <!-- generated by opencode-swarm skill-generator. Do not edit by hand; edits will be preserved on regeneration only with controlled update mode. --> # opt-in-tool-registration ## Trigger - (no explicit trigger metadata; cluster derived from category/tags) ## Required Procedure - Verify task description matches target file/scope before implementing - Test all six subprocess attack surfaces: command injection, spawn-arg injection, stdio pipe injection, timeout bypass, path traversal, cross-platform escape sequence neutralization - derive writer verdict schemas from the shared normalization module - add a regression test proving new shared verdicts propagate to all writers without per-writer edits - execute all tasks in the assigned scope before reporting completion - run verification checks on completed work - When failures are pre-existing per constraint, emit outcome=skip or separate pre_existing failure category instead of failure_test - Before reporting outcome=failure_test, verify the failures are attributable to the current PR/changes and not pre-existing in the test suite - run the test suite targeted by changed test files before declaring verification complete - include test execution as a mandatory checklist item when test files are modified - Confirm the file appears in `git diff` output before marking introduced_by_pr: YES ## Forbidden Shortcuts - maintain independent verdict allowlists in individual evidence-writer modules - using linter pass as proxy for test pass - rely solely on syntax checks, naming checks, or grep-based reuse scans to validate test-file changes ## Delegation Template When delegating a task affected by this skill, include: ``` SKILLS: file:.opencode/skills/generated/opt-in-tool-registration/SKILL.md ``` ## Reviewer Checks - Cross-reference task ID with the file being modified - verify the source file after any extraction/split still exports what consumers expect - verify all importers reference the correct new locations after any extraction/split - bun test <file> after any edit - grep for 'pre-existing' in test output before labeling outcome - compare failed tests against baseline test run to confirm new vs legacy ## Test Engineer Checks - Add or update tests covering the trigger condition and the forbidden shortcut. ## Source Knowledge IDs - 0c7cadd9-4c76-42e7-ba06-c1b475d95f81 — Before writing any code, confirm the task description and acceptance criteria match the file/scope you're working on. Misaligned task routing wastes effort and produces wrong artifacts. - 5b89a93a-e54c-4da9-9667-fd6eb583eb2d — When testing subprocess security, always cover all six attack surfaces: command injection, spawn-arg injection, stdio pipe injection, timeout bypass, path traversal, and cross-platform escape sequences — a gap in any one surface can compromise the entire sandbox. - 630ca3b5-556b-480b-bfc2-460b1955411d — Evidence writers must derive verdict allowlists from the shared normalization module rather than maintaining independent copies; adding a new verdict should never require per-writer edits - ee3dec8a-ad0e-406f-858a-8f02ebedb66d — When a phase has multiple tasks, coders must execute ALL assigned tasks and run verification before reporting done — completing one task and asking for direction is a partial, not a completion. - 23e538c0-aca7-46fb-af5e-f591c359fa6e — When code has been extracted or split, confirm the extraction is complete and all references are updated before proceeding with dependent changes - 80559952-e9a4-44c1-b30d-52f02f35d6c4 — biome check passes only syntax/style — it does not verify test logic or assertion correctness. A passing linter on a test file is not evidence the tests pass. - 53ecc9e8-b6c9-42b9-a364-15e6890235fb — Test_engineer outcome=failure_test must distinguish pre-existing failures from regressions: flag pre-existing failures as SKIP or document them as expected-legacy rather than reporting them as failures of the current work. - 7128b66c-66f6-44c3-b98f-10070754ca9a — A self-verification checklist that includes syntax/naming checks but omits running the actual test suite is a false positive trap. Coders must execute failing tests and assert green before reporting done. - b50901c1-1027-4e6d-8612-cc38fa8327a9 — Before marking a finding 'introduced_by_pr: YES', verify the file actually appears in the PR diff; a confirmed finding on an unchanged file causes spurious review failures.