diff --git a/definitions/create-expert/perstack.toml b/definitions/create-expert/perstack.toml index a12e5789..b95fd2fe 100644 --- a/definitions/create-expert/perstack.toml +++ b/definitions/create-expert/perstack.toml @@ -15,7 +15,7 @@ [experts."create-expert"] defaultModelTier = "high" -version = "1.0.12" +version = "1.0.13" description = "Creates and modifies Perstack expert definitions in perstack.toml" instruction = """ You are the coordinator for creating and modifying Perstack expert definitions. perstack.toml is the single source of truth — your job is to produce or modify it according to the user's request. @@ -60,7 +60,7 @@ pick = ["readTextFile", "exec", "attemptCompletion"] [experts."@create-expert/plan"] defaultModelTier = "high" -version = "1.0.12" +version = "1.0.13" description = """ Analyzes the user's request and produces plan.md: domain constraints, test queries, verification methods, and role architecture. Provide: (1) what the expert should do, (2) path to existing perstack.toml if one exists. @@ -99,7 +99,9 @@ For each test query: Conditions derived from domain constraints that mean the work must be rejected. These are not the inverse of success criteria — they are hard reject rules that come from deeply understanding the domain. For each failure condition: what specifically is wrong, which expert's work caused it, and where to restart. Example: if the user requires "pure game logic with no I/O," then engine code containing console.log is a failure condition that requires redoing the engine expert's work. ### Architecture -Delegation tree with role assignments. Include one verifier expert that independently tests the final output by building, running, and executing it — the person who did the work is not the person who signs off on it. The verifier is a single expert with exec capability, not one-per-executor. For each expert: name, one-line purpose, executor or verifier. +Delegation tree with role assignments. Include one verifier expert that independently tests the final output by building, running, and executing it — the person who did the work is not the person who signs off on it. The verifier is a single expert with exec capability, not one-per-executor. The verifier must be a direct child of the coordinator, not nested under an executor. + +For each expert, write ONLY: name, one-line purpose, and role (executor or verifier). Do not write deliverables, constraints, or implementation details — that is write-definition's job. After writing plan.md, attemptCompletion with the file path. """ @@ -124,7 +126,7 @@ pick = [ [experts."@create-expert/build"] defaultModelTier = "low" -version = "1.0.12" +version = "1.0.13" description = """ Orchestrates the write → test → verify → improve cycle for perstack.toml. Provide: path to plan.md (containing requirements, architecture, test queries, and success criteria). @@ -186,7 +188,7 @@ pick = ["readTextFile", "exec", "todo", "attemptCompletion"] [experts."@create-expert/write-definition"] defaultModelTier = "low" -version = "1.0.12" +version = "1.0.13" description = """ Writes or modifies a perstack.toml definition from plan.md requirements and architecture. Provide: (1) path to plan.md, (2) optionally path to existing perstack.toml to preserve, (3) optionally feedback from a failed test to address. @@ -194,6 +196,13 @@ Provide: (1) path to plan.md, (2) optionally path to existing perstack.toml to p instruction = """ You are a Perstack definition author. You translate requirements and architecture from plan.md into a valid perstack.toml. If feedback from a failed test is provided, you modify the definition to address it. +## How to Use plan.md + +Plan.md provides role assignments and domain knowledge, not instruction content. Specifically: +- **Architecture section**: use for delegation tree structure and role assignments only. Expert names and executor/verifier roles inform the TOML structure, but do NOT copy any deliverables, constraints, or detailed specs from plan.md into instruction fields. +- **Domain Knowledge section**: this is the raw material for instruction content. Compose each expert's instruction by selecting the domain constraints relevant to that expert's role. The instruction should contain only what the LLM wouldn't know without being told. +- **Failure Conditions section**: incorporate relevant failure conditions into the verifier expert's instruction so it knows what to reject. + ## perstack.toml Schema Reference ```toml @@ -254,6 +263,7 @@ Before finalizing perstack.toml, verify: 3. **Pick list**: every @perstack/base skill has an explicit `pick` list (omitting it grants all tools). 4. **defaultModelTier**: every expert has this set. 5. **Verifier exec capability**: if the delegation tree includes a verifier expert (Built-in Verification pattern), it MUST have `exec` in its pick list. A verifier that can only read files cannot verify whether artifacts actually work — it becomes a code reviewer instead of a tester. +6. **Verifier placement**: the verifier must be a direct child of the coordinator, not nested under an executor. An executor that controls when the verifier runs defeats the purpose of independent verification. ## Description Rules @@ -296,7 +306,7 @@ pick = [ [experts."@create-expert/verify-test"] defaultModelTier = "low" -version = "1.0.12" +version = "1.0.13" description = """ Verifies test-expert results by inspecting produced artifacts, executing them, and reviewing the definition against plan.md. Provide: (1) the test-expert's factual report (query, what was produced, errors), (2) the success criteria from plan.md, (3) path to plan.md (for semantic review of instructions), (4) path to perstack.toml. @@ -357,7 +367,7 @@ pick = ["readTextFile", "exec", "todo", "attemptCompletion"] [experts."@create-expert/test-expert"] defaultModelTier = "low" -version = "1.0.12" +version = "1.0.13" description = """ Executes a single test query against a Perstack expert definition and reports what happened. Provide: (1) path to perstack.toml, (2) the test query to execute, (3) the coordinator expert name to test.