Skip to content

Commit 5f7ff0e

Browse files
committed
Create authoritative first-class tool lifecycle contract section consolidating template, registration, workspace, and lifecycle integration rules - PR_26146_019-first-class-tool-authoritative-contract-section
1 parent f3a0074 commit 5f7ff0e

1 file changed

Lines changed: 22 additions & 21 deletions

File tree

docs/dev/PROJECT_INSTRUCTIONS.md

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1088,35 +1088,40 @@ ChatGPT must not claim code review was completed unless it inspected uploaded so
10881088

10891089
Pattern-based or process-based review must be labeled as such.
10901090

1091-
## FIRST-CLASS TOOL LIFECYCLE CONTRACTS
1091+
## First-Class Tool Lifecycle Contract
10921092

1093-
First-class tools are part of the Workspace V2 ecosystem by default.
1093+
This is the single authoritative contract for first-class tool creation, template preservation, registration, and Workspace Manager V2 wiring.
10941094

1095-
New first-class tools must live under `tools/<tool-name>/`.
1095+
First-class tools are Workspace V2 ecosystem members by default.
10961096

1097-
New first-class tools must be created by copying `tools/_templates-v2/`.
1097+
Required tool location:
1098+
- `tools/<tool-name>/`
1099+
1100+
Required template source:
1101+
- `tools/_templates-v2`
10981102

10991103
The copied template structure is the authoritative starting point.
11001104

1101-
Tool-specific logic extends the copied template rather than replacing it.
1105+
Tool-specific implementation extends the copied template rather than replacing it.
11021106

1103-
Preserve:
1104-
- header shell
1105-
- NAV shell
1106-
- panel layout
1107-
- accordion structure
1108-
- status/logging regions
1107+
Required preserved template structure:
1108+
- headers
1109+
- NAV
1110+
- panels
1111+
- accordions
1112+
- status/logging
11091113
- CSS wiring
11101114
- JS bootstrapping
11111115
- accessibility structure
11121116

1113-
New first-class tools must integrate with `tools/workspace-manager-v2`.
1117+
Required Workspace Manager V2 integration:
1118+
- `tools/workspace-manager-v2`
11141119

1115-
New first-class tools must register in:
1120+
Required registration:
11161121
- `tools/index.html`
11171122
- `tools/workspace-manager-v2/index.html`
11181123

1119-
New first-class tools must participate in:
1124+
Required workspace lifecycle participation:
11201125
- dirty-state handling
11211126
- save/cancel lifecycle handling
11221127
- workspace launch/navigation patterns
@@ -1129,20 +1134,16 @@ New first-class tools must include Playwright launch coverage when runtime/UI be
11291134
Tool registration must not rely on hidden defaults or silent fallback.
11301135

11311136
Enforcement clarifications:
1137+
- isolated/disconnected tool systems require explicit authorization
11321138
- isolated launch/navigation systems are prohibited unless explicitly approved
11331139
- custom persistence/save systems are prohibited unless explicitly approved
1134-
- shell rebuilds and alternate layout systems are prohibited unless explicitly approved
1140+
- shell rebuilds are prohibited unless explicitly authorized
1141+
- alternate layout systems are prohibited unless explicitly approved
11351142
- do not inline CSS or JavaScript
11361143
- do not remove template sections unless the PR explicitly authorizes it
11371144
- keep HTML free of inline script/style/event handlers
11381145
- register the new tool only after the copied template is adapted
11391146

1140-
## TOOL TEMPLATE V2 LOCATION
1141-
1142-
The official First-Class Tool V2 starter is:
1143-
1144-
`tools/_templates-v2/`
1145-
11461147
Use the V2 naming consistently:
11471148
- Tool Template V2
11481149
- First-Class Tool Starter V2

0 commit comments

Comments
 (0)