Complete sprints 163-165 strict MCP grammar pipeline and enforcement
This commit is contained in:
@@ -0,0 +1 @@
|
||||
{"sprint":"sprint163_plan.md","input_file":"sprint163_plan.md","timestamp":"2026-02-26T00:19:27Z","mcp_binary":"/home/bill/Documents/CLionProjects/whetstone_DSL/editor/build-native/whetstone_mcp_stable","workspace":"/home/bill/Documents/CLionProjects/whetstone_DSL","output_dir":"/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/sprint163_plan_20260225_171926","intake":{"success":true,"normalized_requirement_count":14,"conflict_count":0,"ambiguous_requirement_count":0},"taskitems":{"success":true,"task_count":2,"escalate_count":0},"queue_ready":{"success":true,"ready":true,"ready_count":2,"blocker_count":0},"validation":{"success":true,"total_taskitems":2,"average_score":87.5,"self_contained_count":2,"failing_count":0}}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"error": "no_requirements_found",
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [],
|
||||
"constraints": [],
|
||||
"dependencies": [],
|
||||
"goals": [],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "context",
|
||||
"headingLine": 3,
|
||||
"title": "Context"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 20,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "steps",
|
||||
"headingLine": 29,
|
||||
"title": "Steps"
|
||||
},
|
||||
{
|
||||
"anchor": "architecture-gate",
|
||||
"headingLine": 98,
|
||||
"title": "Architecture Gate"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": false
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"error\": \"no_requirements_found\",\n \"parsedSpec\": {\n \"acceptanceCriteria\": [],\n \"constraints\": [],\n \"dependencies\": [],\n \"goals\": [],\n \"sections\": [\n {\n \"anchor\": \"context\",\n \"headingLine\": 3,\n \"title\": \"Context\"\n },\n {\n \"anchor\": \"goals\",\n \"headingLine\": 20,\n \"title\": \"Goals\"\n },\n {\n \"anchor\": \"steps\",\n \"headingLine\": 29,\n \"title\": \"Steps\"\n },\n {\n \"anchor\": \"architecture-gate\",\n \"headingLine\": 98,\n \"title\": \"Architecture Gate\"\n }\n ]\n },\n \"success\": false\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,21 @@
|
||||
## Goals
|
||||
- Step 1859: Strictness audit utility and baseline report (10 tests)
|
||||
- Step 1860: Canonical schema normalizer (12 tests)
|
||||
- Step 1861: Refactor grammar generator to use normalized schema IR (10 tests)
|
||||
- Step 1862: Top-level strictness gate (8 tests)
|
||||
- Step 1863: Sprint 163 Integration Summary (8 tests)
|
||||
|
||||
## Constraints
|
||||
- No MCP runtime behavior changes; this sprint is tooling + generation pipeline only
|
||||
- Generated grammar artifacts remain in `tools/mcp/grammars/`
|
||||
- Deterministic generation is mandatory (stable ordering)
|
||||
- All strictness checks must be machine-readable JSON
|
||||
|
||||
## Dependencies
|
||||
- Existing editor/src modules and MCP toolchain
|
||||
- whetstone_mcp stable binary and workspace config
|
||||
|
||||
## Acceptance Criteria
|
||||
- All sprint step tests pass
|
||||
- No regression in existing MCP tool behavior
|
||||
- Generated task queue is ready or blockers are explicit
|
||||
@@ -0,0 +1,239 @@
|
||||
{
|
||||
"conflictSignals": {
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"hasConflicts": false
|
||||
},
|
||||
"conflicts": [],
|
||||
"normalizedRequirements": [
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1859 strictness audit utility and baseline report 10 tests",
|
||||
"requirementId": "goal-1",
|
||||
"sourceLine": 2
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1860 canonical schema normalizer 12 tests",
|
||||
"requirementId": "goal-2",
|
||||
"sourceLine": 3
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1861 refactor grammar generator to use normalized schema ir 10 tests",
|
||||
"requirementId": "goal-3",
|
||||
"sourceLine": 4
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1862 top level strictness gate 8 tests",
|
||||
"requirementId": "goal-4",
|
||||
"sourceLine": 5
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1863 sprint 163 integration summary 8 tests",
|
||||
"requirementId": "goal-5",
|
||||
"sourceLine": 6
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "no mcp runtime behavior changes this sprint is tooling generation pipeline only",
|
||||
"requirementId": "constraint-1",
|
||||
"sourceLine": 9
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "generated grammar artifacts remain in tools mcp grammars",
|
||||
"requirementId": "constraint-2",
|
||||
"sourceLine": 10
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "deterministic generation is mandatory stable ordering",
|
||||
"requirementId": "constraint-3",
|
||||
"sourceLine": 11
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "all strictness checks must be machine readable json",
|
||||
"requirementId": "constraint-4",
|
||||
"sourceLine": 12
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "existing editor src modules and mcp toolchain",
|
||||
"requirementId": "dependency-1",
|
||||
"sourceLine": 15
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "whetstone mcp stable binary and workspace config",
|
||||
"requirementId": "dependency-2",
|
||||
"sourceLine": 16
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "all sprint step tests pass",
|
||||
"requirementId": "acceptance-1",
|
||||
"sourceLine": 19
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "no regression in existing mcp tool behavior",
|
||||
"requirementId": "acceptance-2",
|
||||
"sourceLine": 20
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "generated task queue is ready or blockers are explicit",
|
||||
"requirementId": "acceptance-3",
|
||||
"sourceLine": 21
|
||||
}
|
||||
],
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 19,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "All sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 20,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "No regression in existing MCP tool behavior"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 21,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "Generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"constraints": [
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 9,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "No MCP runtime behavior changes; this sprint is tooling + generation pipeline only"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 10,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Generated grammar artifacts remain in `tools/mcp/grammars/`"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 11,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Deterministic generation is mandatory (stable ordering)"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 12,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "All strictness checks must be machine-readable JSON"
|
||||
}
|
||||
],
|
||||
"dependencies": [
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 15,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "Existing editor/src modules and MCP toolchain"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 16,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "whetstone_mcp stable binary and workspace config"
|
||||
}
|
||||
],
|
||||
"goals": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 2,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1859: Strictness audit utility and baseline report (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 3,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1860: Canonical schema normalizer (12 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 4,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1861: Refactor grammar generator to use normalized schema IR (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 5,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1862: Top-level strictness gate (8 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 6,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1863: Sprint 163 Integration Summary (8 tests)"
|
||||
}
|
||||
],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 1,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"headingLine": 8,
|
||||
"title": "Constraints"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"headingLine": 14,
|
||||
"title": "Dependencies"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"headingLine": 18,
|
||||
"title": "Acceptance Criteria"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"escalateCount": 0,
|
||||
"planSummary": {
|
||||
"milestoneCount": 2,
|
||||
"overallUncertainty": 27
|
||||
},
|
||||
"success": true,
|
||||
"tasks": [
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 85,
|
||||
"dependencyTaskIds": [],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"architect-review"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"high_confidence_clear_path"
|
||||
],
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
},
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 81,
|
||||
"dependencyTaskIds": [
|
||||
"task-1"
|
||||
],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"resolve-dependencies"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"depends_on_prior_tasks"
|
||||
],
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"ambiguousRequirementCount\": 0,\n \"conflictCount\": 0,\n \"escalateCount\": 0,\n \"planSummary\": {\n \"milestoneCount\": 2,\n \"overallUncertainty\": 27\n },\n \"success\": true,\n \"tasks\": [\n {\n \"ambiguityCount\": 0,\n \"confidence\": 85,\n \"dependencyTaskIds\": [],\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"architect-review\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"high_confidence_clear_path\"\n ],\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n },\n {\n \"ambiguityCount\": 0,\n \"confidence\": 81,\n \"dependencyTaskIds\": [\n \"task-1\"\n ],\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"resolve-dependencies\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"depends_on_prior_tasks\"\n ],\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n ]\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,63 @@
|
||||
{
|
||||
"blockers": [],
|
||||
"escalateCount": 0,
|
||||
"queueJson": [
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-1::acceptance-1",
|
||||
"testSkeleton": "test_task_1_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-2",
|
||||
"testSkeleton": "test_task_1_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-3",
|
||||
"testSkeleton": "test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"queueReady": true,
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
}
|
||||
},
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-2::acceptance-1",
|
||||
"testSkeleton": "test_task_2_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-2",
|
||||
"testSkeleton": "test_task_2_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-3",
|
||||
"testSkeleton": "test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"queueReady": true,
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
}
|
||||
],
|
||||
"ready": true,
|
||||
"readyCount": 2,
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"blockers\": [],\n \"escalateCount\": 0,\n \"queueJson\": [\n {\n \"checks\": [\n {\n \"checkId\": \"task-1::acceptance-1\",\n \"testSkeleton\": \"test_task_1_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-1::acceptance-2\",\n \"testSkeleton\": \"test_task_1_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-1::acceptance-3\",\n \"testSkeleton\": \"test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"queueReady\": true,\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n }\n },\n {\n \"checks\": [\n {\n \"checkId\": \"task-2::acceptance-1\",\n \"testSkeleton\": \"test_task_2_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-2::acceptance-2\",\n \"testSkeleton\": \"test_task_2_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-2::acceptance-3\",\n \"testSkeleton\": \"test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"queueReady\": true,\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n }\n ],\n \"ready\": true,\n \"readyCount\": 2,\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"report": {
|
||||
"average_score": 87.5,
|
||||
"failing_count": 0,
|
||||
"results": [
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries"
|
||||
],
|
||||
"score": 90,
|
||||
"self_contained": true,
|
||||
"task_id": "task-1"
|
||||
},
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"score": 85,
|
||||
"self_contained": true,
|
||||
"task_id": "task-2"
|
||||
}
|
||||
],
|
||||
"self_contained_count": 2,
|
||||
"top_issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"total_taskitems": 2,
|
||||
"warning_count": 0
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"report\": {\n \"average_score\": 87.5,\n \"failing_count\": 0,\n \"results\": [\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\"\n ],\n \"score\": 90,\n \"self_contained\": true,\n \"task_id\": \"task-1\"\n },\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"score\": 85,\n \"self_contained\": true,\n \"task_id\": \"task-2\"\n }\n ],\n \"self_contained_count\": 2,\n \"top_issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"total_taskitems\": 2,\n \"warning_count\": 0\n },\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1 @@
|
||||
{"sprint":"sprint164_plan.md","input_file":"sprint164_plan.md","timestamp":"2026-02-26T00:19:27Z","mcp_binary":"/home/bill/Documents/CLionProjects/whetstone_DSL/editor/build-native/whetstone_mcp_stable","workspace":"/home/bill/Documents/CLionProjects/whetstone_DSL","output_dir":"/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/sprint164_plan_20260225_171927","intake":{"success":true,"normalized_requirement_count":14,"conflict_count":0,"ambiguous_requirement_count":0},"taskitems":{"success":true,"task_count":2,"escalate_count":0},"queue_ready":{"success":true,"ready":true,"ready_count":2,"blocker_count":0},"validation":{"success":true,"total_taskitems":2,"average_score":87.5,"self_contained_count":2,"failing_count":0}}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"error": "no_requirements_found",
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [],
|
||||
"constraints": [],
|
||||
"dependencies": [],
|
||||
"goals": [],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "context",
|
||||
"headingLine": 3,
|
||||
"title": "Context"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 15,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "steps",
|
||||
"headingLine": 24,
|
||||
"title": "Steps"
|
||||
},
|
||||
{
|
||||
"anchor": "architecture-gate",
|
||||
"headingLine": 93,
|
||||
"title": "Architecture Gate"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": false
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"error\": \"no_requirements_found\",\n \"parsedSpec\": {\n \"acceptanceCriteria\": [],\n \"constraints\": [],\n \"dependencies\": [],\n \"goals\": [],\n \"sections\": [\n {\n \"anchor\": \"context\",\n \"headingLine\": 3,\n \"title\": \"Context\"\n },\n {\n \"anchor\": \"goals\",\n \"headingLine\": 15,\n \"title\": \"Goals\"\n },\n {\n \"anchor\": \"steps\",\n \"headingLine\": 24,\n \"title\": \"Steps\"\n },\n {\n \"anchor\": \"architecture-gate\",\n \"headingLine\": 93,\n \"title\": \"Architecture Gate\"\n }\n ]\n },\n \"success\": false\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,21 @@
|
||||
## Goals
|
||||
- Step 1864: Recursive object/array rule generator (12 tests)
|
||||
- Step 1865: Union support (`oneOf`/`anyOf`/`allOf`) (10 tests)
|
||||
- Step 1866: Constraint encoding and strict scalar handling (10 tests)
|
||||
- Step 1867: Strictness regression suite (8 tests)
|
||||
- Step 1868: Sprint 164 Integration Summary (8 tests)
|
||||
|
||||
## Constraints
|
||||
- Keep generator output deterministic
|
||||
- No removal of existing tools or contract fields
|
||||
- Unsupported JSON Schema constructs must be explicitly reported, never silently
|
||||
- Grammar generation runtime remains practical for 347 tools
|
||||
|
||||
## Dependencies
|
||||
- Existing editor/src modules and MCP toolchain
|
||||
- whetstone_mcp stable binary and workspace config
|
||||
|
||||
## Acceptance Criteria
|
||||
- All sprint step tests pass
|
||||
- No regression in existing MCP tool behavior
|
||||
- Generated task queue is ready or blockers are explicit
|
||||
@@ -0,0 +1,239 @@
|
||||
{
|
||||
"conflictSignals": {
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"hasConflicts": false
|
||||
},
|
||||
"conflicts": [],
|
||||
"normalizedRequirements": [
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1864 recursive object array rule generator 12 tests",
|
||||
"requirementId": "goal-1",
|
||||
"sourceLine": 2
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1865 union support oneof anyof allof 10 tests",
|
||||
"requirementId": "goal-2",
|
||||
"sourceLine": 3
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1866 constraint encoding and strict scalar handling 10 tests",
|
||||
"requirementId": "goal-3",
|
||||
"sourceLine": 4
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1867 strictness regression suite 8 tests",
|
||||
"requirementId": "goal-4",
|
||||
"sourceLine": 5
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1868 sprint 164 integration summary 8 tests",
|
||||
"requirementId": "goal-5",
|
||||
"sourceLine": 6
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "keep generator output deterministic",
|
||||
"requirementId": "constraint-1",
|
||||
"sourceLine": 9
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "no removal of existing tools or contract fields",
|
||||
"requirementId": "constraint-2",
|
||||
"sourceLine": 10
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "unsupported json schema constructs must be explicitly reported never silently",
|
||||
"requirementId": "constraint-3",
|
||||
"sourceLine": 11
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "grammar generation runtime remains practical for 347 tools",
|
||||
"requirementId": "constraint-4",
|
||||
"sourceLine": 12
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "existing editor src modules and mcp toolchain",
|
||||
"requirementId": "dependency-1",
|
||||
"sourceLine": 15
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "whetstone mcp stable binary and workspace config",
|
||||
"requirementId": "dependency-2",
|
||||
"sourceLine": 16
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "all sprint step tests pass",
|
||||
"requirementId": "acceptance-1",
|
||||
"sourceLine": 19
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "no regression in existing mcp tool behavior",
|
||||
"requirementId": "acceptance-2",
|
||||
"sourceLine": 20
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "generated task queue is ready or blockers are explicit",
|
||||
"requirementId": "acceptance-3",
|
||||
"sourceLine": 21
|
||||
}
|
||||
],
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 19,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "All sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 20,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "No regression in existing MCP tool behavior"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 21,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "Generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"constraints": [
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 9,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Keep generator output deterministic"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 10,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "No removal of existing tools or contract fields"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 11,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Unsupported JSON Schema constructs must be explicitly reported, never silently"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 12,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Grammar generation runtime remains practical for 347 tools"
|
||||
}
|
||||
],
|
||||
"dependencies": [
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 15,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "Existing editor/src modules and MCP toolchain"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 16,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "whetstone_mcp stable binary and workspace config"
|
||||
}
|
||||
],
|
||||
"goals": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 2,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1864: Recursive object/array rule generator (12 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 3,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1865: Union support (`oneOf`/`anyOf`/`allOf`) (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 4,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1866: Constraint encoding and strict scalar handling (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 5,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1867: Strictness regression suite (8 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 6,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1868: Sprint 164 Integration Summary (8 tests)"
|
||||
}
|
||||
],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 1,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"headingLine": 8,
|
||||
"title": "Constraints"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"headingLine": 14,
|
||||
"title": "Dependencies"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"headingLine": 18,
|
||||
"title": "Acceptance Criteria"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"escalateCount": 0,
|
||||
"planSummary": {
|
||||
"milestoneCount": 2,
|
||||
"overallUncertainty": 27
|
||||
},
|
||||
"success": true,
|
||||
"tasks": [
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 85,
|
||||
"dependencyTaskIds": [],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"architect-review"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"high_confidence_clear_path"
|
||||
],
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
},
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 81,
|
||||
"dependencyTaskIds": [
|
||||
"task-1"
|
||||
],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"resolve-dependencies"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"depends_on_prior_tasks"
|
||||
],
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"ambiguousRequirementCount\": 0,\n \"conflictCount\": 0,\n \"escalateCount\": 0,\n \"planSummary\": {\n \"milestoneCount\": 2,\n \"overallUncertainty\": 27\n },\n \"success\": true,\n \"tasks\": [\n {\n \"ambiguityCount\": 0,\n \"confidence\": 85,\n \"dependencyTaskIds\": [],\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"architect-review\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"high_confidence_clear_path\"\n ],\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n },\n {\n \"ambiguityCount\": 0,\n \"confidence\": 81,\n \"dependencyTaskIds\": [\n \"task-1\"\n ],\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"resolve-dependencies\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"depends_on_prior_tasks\"\n ],\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n ]\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,63 @@
|
||||
{
|
||||
"blockers": [],
|
||||
"escalateCount": 0,
|
||||
"queueJson": [
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-1::acceptance-1",
|
||||
"testSkeleton": "test_task_1_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-2",
|
||||
"testSkeleton": "test_task_1_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-3",
|
||||
"testSkeleton": "test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"queueReady": true,
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
}
|
||||
},
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-2::acceptance-1",
|
||||
"testSkeleton": "test_task_2_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-2",
|
||||
"testSkeleton": "test_task_2_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-3",
|
||||
"testSkeleton": "test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"queueReady": true,
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
}
|
||||
],
|
||||
"ready": true,
|
||||
"readyCount": 2,
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"blockers\": [],\n \"escalateCount\": 0,\n \"queueJson\": [\n {\n \"checks\": [\n {\n \"checkId\": \"task-1::acceptance-1\",\n \"testSkeleton\": \"test_task_1_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-1::acceptance-2\",\n \"testSkeleton\": \"test_task_1_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-1::acceptance-3\",\n \"testSkeleton\": \"test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"queueReady\": true,\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n }\n },\n {\n \"checks\": [\n {\n \"checkId\": \"task-2::acceptance-1\",\n \"testSkeleton\": \"test_task_2_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-2::acceptance-2\",\n \"testSkeleton\": \"test_task_2_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-2::acceptance-3\",\n \"testSkeleton\": \"test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"queueReady\": true,\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n }\n ],\n \"ready\": true,\n \"readyCount\": 2,\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"report": {
|
||||
"average_score": 87.5,
|
||||
"failing_count": 0,
|
||||
"results": [
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries"
|
||||
],
|
||||
"score": 90,
|
||||
"self_contained": true,
|
||||
"task_id": "task-1"
|
||||
},
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"score": 85,
|
||||
"self_contained": true,
|
||||
"task_id": "task-2"
|
||||
}
|
||||
],
|
||||
"self_contained_count": 2,
|
||||
"top_issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"total_taskitems": 2,
|
||||
"warning_count": 0
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"report\": {\n \"average_score\": 87.5,\n \"failing_count\": 0,\n \"results\": [\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\"\n ],\n \"score\": 90,\n \"self_contained\": true,\n \"task_id\": \"task-1\"\n },\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"score\": 85,\n \"self_contained\": true,\n \"task_id\": \"task-2\"\n }\n ],\n \"self_contained_count\": 2,\n \"top_issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"total_taskitems\": 2,\n \"warning_count\": 0\n },\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1 @@
|
||||
{"sprint":"sprint165_plan.md","input_file":"sprint165_plan.md","timestamp":"2026-02-26T00:19:27Z","mcp_binary":"/home/bill/Documents/CLionProjects/whetstone_DSL/editor/build-native/whetstone_mcp_stable","workspace":"/home/bill/Documents/CLionProjects/whetstone_DSL","output_dir":"/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/sprint165_plan_20260225_171927","intake":{"success":true,"normalized_requirement_count":14,"conflict_count":0,"ambiguous_requirement_count":0},"taskitems":{"success":true,"task_count":2,"escalate_count":0},"queue_ready":{"success":true,"ready":true,"ready_count":2,"blocker_count":0},"validation":{"success":true,"total_taskitems":2,"average_score":87.5,"self_contained_count":2,"failing_count":0}}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"error": "no_requirements_found",
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [],
|
||||
"constraints": [],
|
||||
"dependencies": [],
|
||||
"goals": [],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "context",
|
||||
"headingLine": 3,
|
||||
"title": "Context"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 11,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "steps",
|
||||
"headingLine": 20,
|
||||
"title": "Steps"
|
||||
},
|
||||
{
|
||||
"anchor": "architecture-gate",
|
||||
"headingLine": 90,
|
||||
"title": "Architecture Gate"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": false
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"error\": \"no_requirements_found\",\n \"parsedSpec\": {\n \"acceptanceCriteria\": [],\n \"constraints\": [],\n \"dependencies\": [],\n \"goals\": [],\n \"sections\": [\n {\n \"anchor\": \"context\",\n \"headingLine\": 3,\n \"title\": \"Context\"\n },\n {\n \"anchor\": \"goals\",\n \"headingLine\": 11,\n \"title\": \"Goals\"\n },\n {\n \"anchor\": \"steps\",\n \"headingLine\": 20,\n \"title\": \"Steps\"\n },\n {\n \"anchor\": \"architecture-gate\",\n \"headingLine\": 90,\n \"title\": \"Architecture Gate\"\n }\n ]\n },\n \"success\": false\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,21 @@
|
||||
## Goals
|
||||
- Step 1869: Strictness policy file and threshold gate (10 tests)
|
||||
- Step 1870: Artifact fingerprinting and drift detection (8 tests)
|
||||
- Step 1871: CI integration in build/test flow (8 tests)
|
||||
- Step 1872: Runtime preflight strict compatibility check (10 tests)
|
||||
- Step 1873: Sprint 165 Integration Summary (8 tests)
|
||||
|
||||
## Constraints
|
||||
- CI checks must be runnable locally and in automation without network dependency
|
||||
- Generated artifacts remain committed and reproducible
|
||||
- Strictness policy changes require explicit commit-level acknowledgment
|
||||
- No runtime tool contract changes introduced in this sprint
|
||||
|
||||
## Dependencies
|
||||
- Existing editor/src modules and MCP toolchain
|
||||
- whetstone_mcp stable binary and workspace config
|
||||
|
||||
## Acceptance Criteria
|
||||
- All sprint step tests pass
|
||||
- No regression in existing MCP tool behavior
|
||||
- Generated task queue is ready or blockers are explicit
|
||||
@@ -0,0 +1,239 @@
|
||||
{
|
||||
"conflictSignals": {
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"hasConflicts": false
|
||||
},
|
||||
"conflicts": [],
|
||||
"normalizedRequirements": [
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1869 strictness policy file and threshold gate 10 tests",
|
||||
"requirementId": "goal-1",
|
||||
"sourceLine": 2
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1870 artifact fingerprinting and drift detection 8 tests",
|
||||
"requirementId": "goal-2",
|
||||
"sourceLine": 3
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1871 ci integration in build test flow 8 tests",
|
||||
"requirementId": "goal-3",
|
||||
"sourceLine": 4
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1872 runtime preflight strict compatibility check 10 tests",
|
||||
"requirementId": "goal-4",
|
||||
"sourceLine": 5
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "goals",
|
||||
"kind": "goal",
|
||||
"normalizedText": "step 1873 sprint 165 integration summary 8 tests",
|
||||
"requirementId": "goal-5",
|
||||
"sourceLine": 6
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "ci checks must be runnable locally and in automation without network dependency",
|
||||
"requirementId": "constraint-1",
|
||||
"sourceLine": 9
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "generated artifacts remain committed and reproducible",
|
||||
"requirementId": "constraint-2",
|
||||
"sourceLine": 10
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "strictness policy changes require explicit commit level acknowledgment",
|
||||
"requirementId": "constraint-3",
|
||||
"sourceLine": 11
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "constraints",
|
||||
"kind": "constraint",
|
||||
"normalizedText": "no runtime tool contract changes introduced in this sprint",
|
||||
"requirementId": "constraint-4",
|
||||
"sourceLine": 12
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "existing editor src modules and mcp toolchain",
|
||||
"requirementId": "dependency-1",
|
||||
"sourceLine": 15
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "dependencies",
|
||||
"kind": "dependency",
|
||||
"normalizedText": "whetstone mcp stable binary and workspace config",
|
||||
"requirementId": "dependency-2",
|
||||
"sourceLine": 16
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "all sprint step tests pass",
|
||||
"requirementId": "acceptance-1",
|
||||
"sourceLine": 19
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "no regression in existing mcp tool behavior",
|
||||
"requirementId": "acceptance-2",
|
||||
"sourceLine": 20
|
||||
},
|
||||
{
|
||||
"ambiguous": false,
|
||||
"anchor": "acceptance-criteria",
|
||||
"kind": "acceptance",
|
||||
"normalizedText": "generated task queue is ready or blockers are explicit",
|
||||
"requirementId": "acceptance-3",
|
||||
"sourceLine": 21
|
||||
}
|
||||
],
|
||||
"parsedSpec": {
|
||||
"acceptanceCriteria": [
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 19,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "All sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 20,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "No regression in existing MCP tool behavior"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"line": 21,
|
||||
"sectionTitle": "Acceptance Criteria",
|
||||
"text": "Generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"constraints": [
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 9,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "CI checks must be runnable locally and in automation without network dependency"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 10,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Generated artifacts remain committed and reproducible"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 11,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "Strictness policy changes require explicit commit-level acknowledgment"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"line": 12,
|
||||
"sectionTitle": "Constraints",
|
||||
"text": "No runtime tool contract changes introduced in this sprint"
|
||||
}
|
||||
],
|
||||
"dependencies": [
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 15,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "Existing editor/src modules and MCP toolchain"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"line": 16,
|
||||
"sectionTitle": "Dependencies",
|
||||
"text": "whetstone_mcp stable binary and workspace config"
|
||||
}
|
||||
],
|
||||
"goals": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 2,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1869: Strictness policy file and threshold gate (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 3,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1870: Artifact fingerprinting and drift detection (8 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 4,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1871: CI integration in build/test flow (8 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 5,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1872: Runtime preflight strict compatibility check (10 tests)"
|
||||
},
|
||||
{
|
||||
"anchor": "goals",
|
||||
"line": 6,
|
||||
"sectionTitle": "Goals",
|
||||
"text": "Step 1873: Sprint 165 Integration Summary (8 tests)"
|
||||
}
|
||||
],
|
||||
"sections": [
|
||||
{
|
||||
"anchor": "goals",
|
||||
"headingLine": 1,
|
||||
"title": "Goals"
|
||||
},
|
||||
{
|
||||
"anchor": "constraints",
|
||||
"headingLine": 8,
|
||||
"title": "Constraints"
|
||||
},
|
||||
{
|
||||
"anchor": "dependencies",
|
||||
"headingLine": 14,
|
||||
"title": "Dependencies"
|
||||
},
|
||||
{
|
||||
"anchor": "acceptance-criteria",
|
||||
"headingLine": 18,
|
||||
"title": "Acceptance Criteria"
|
||||
}
|
||||
]
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"ambiguousRequirementCount": 0,
|
||||
"conflictCount": 0,
|
||||
"escalateCount": 0,
|
||||
"planSummary": {
|
||||
"milestoneCount": 2,
|
||||
"overallUncertainty": 27
|
||||
},
|
||||
"success": true,
|
||||
"tasks": [
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 85,
|
||||
"dependencyTaskIds": [],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"architect-review"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"high_confidence_clear_path"
|
||||
],
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
},
|
||||
{
|
||||
"ambiguityCount": 0,
|
||||
"confidence": 81,
|
||||
"dependencyTaskIds": [
|
||||
"task-1"
|
||||
],
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"prerequisiteOps": [
|
||||
"validate-intake",
|
||||
"resolve-dependencies"
|
||||
],
|
||||
"queueReady": true,
|
||||
"reasons": [
|
||||
"depends_on_prior_tasks"
|
||||
],
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"ambiguousRequirementCount\": 0,\n \"conflictCount\": 0,\n \"escalateCount\": 0,\n \"planSummary\": {\n \"milestoneCount\": 2,\n \"overallUncertainty\": 27\n },\n \"success\": true,\n \"tasks\": [\n {\n \"ambiguityCount\": 0,\n \"confidence\": 85,\n \"dependencyTaskIds\": [],\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"architect-review\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"high_confidence_clear_path\"\n ],\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n },\n {\n \"ambiguityCount\": 0,\n \"confidence\": 81,\n \"dependencyTaskIds\": [\n \"task-1\"\n ],\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"prerequisiteOps\": [\n \"validate-intake\",\n \"resolve-dependencies\"\n ],\n \"queueReady\": true,\n \"reasons\": [\n \"depends_on_prior_tasks\"\n ],\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n ]\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,63 @@
|
||||
{
|
||||
"blockers": [],
|
||||
"escalateCount": 0,
|
||||
"queueJson": [
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-1::acceptance-1",
|
||||
"testSkeleton": "test_task_1_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-2",
|
||||
"testSkeleton": "test_task_1_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-1::acceptance-3",
|
||||
"testSkeleton": "test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-1",
|
||||
"queueReady": true,
|
||||
"taskId": "task-1",
|
||||
"title": "Intake Foundation Primary"
|
||||
}
|
||||
},
|
||||
{
|
||||
"checks": [
|
||||
{
|
||||
"checkId": "task-2::acceptance-1",
|
||||
"testSkeleton": "test_task_2_all_sprint_step_tests_pass",
|
||||
"text": "all sprint step tests pass"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-2",
|
||||
"testSkeleton": "test_task_2_no_regression_in_existing_mcp_tool_behavior",
|
||||
"text": "no regression in existing mcp tool behavior"
|
||||
},
|
||||
{
|
||||
"checkId": "task-2::acceptance-3",
|
||||
"testSkeleton": "test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit",
|
||||
"text": "generated task queue is ready or blockers are explicit"
|
||||
}
|
||||
],
|
||||
"hasCoverage": true,
|
||||
"task": {
|
||||
"escalate": false,
|
||||
"milestoneId": "milestone-2",
|
||||
"queueReady": true,
|
||||
"taskId": "task-2",
|
||||
"title": "Execution Readiness Primary"
|
||||
}
|
||||
}
|
||||
],
|
||||
"ready": true,
|
||||
"readyCount": 2,
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"blockers\": [],\n \"escalateCount\": 0,\n \"queueJson\": [\n {\n \"checks\": [\n {\n \"checkId\": \"task-1::acceptance-1\",\n \"testSkeleton\": \"test_task_1_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-1::acceptance-2\",\n \"testSkeleton\": \"test_task_1_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-1::acceptance-3\",\n \"testSkeleton\": \"test_task_1_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-1\",\n \"queueReady\": true,\n \"taskId\": \"task-1\",\n \"title\": \"Intake Foundation Primary\"\n }\n },\n {\n \"checks\": [\n {\n \"checkId\": \"task-2::acceptance-1\",\n \"testSkeleton\": \"test_task_2_all_sprint_step_tests_pass\",\n \"text\": \"all sprint step tests pass\"\n },\n {\n \"checkId\": \"task-2::acceptance-2\",\n \"testSkeleton\": \"test_task_2_no_regression_in_existing_mcp_tool_behavior\",\n \"text\": \"no regression in existing mcp tool behavior\"\n },\n {\n \"checkId\": \"task-2::acceptance-3\",\n \"testSkeleton\": \"test_task_2_generated_task_queue_is_ready_or_blockers_are_explicit\",\n \"text\": \"generated task queue is ready or blockers are explicit\"\n }\n ],\n \"hasCoverage\": true,\n \"task\": {\n \"escalate\": false,\n \"milestoneId\": \"milestone-2\",\n \"queueReady\": true,\n \"taskId\": \"task-2\",\n \"title\": \"Execution Readiness Primary\"\n }\n }\n ],\n \"ready\": true,\n \"readyCount\": 2,\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"report": {
|
||||
"average_score": 87.5,
|
||||
"failing_count": 0,
|
||||
"results": [
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries"
|
||||
],
|
||||
"score": 90,
|
||||
"self_contained": true,
|
||||
"task_id": "task-1"
|
||||
},
|
||||
{
|
||||
"issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"score": 85,
|
||||
"self_contained": true,
|
||||
"task_id": "task-2"
|
||||
}
|
||||
],
|
||||
"self_contained_count": 2,
|
||||
"top_issues": [
|
||||
"reasons has fewer than 3 entries",
|
||||
"dependencyTaskIds not empty"
|
||||
],
|
||||
"total_taskitems": 2,
|
||||
"warning_count": 0
|
||||
},
|
||||
"success": true
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"jsonrpc":"2.0","result":{"content":[{"text":"{\n \"report\": {\n \"average_score\": 87.5,\n \"failing_count\": 0,\n \"results\": [\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\"\n ],\n \"score\": 90,\n \"self_contained\": true,\n \"task_id\": \"task-1\"\n },\n {\n \"issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"score\": 85,\n \"self_contained\": true,\n \"task_id\": \"task-2\"\n }\n ],\n \"self_contained_count\": 2,\n \"top_issues\": [\n \"reasons has fewer than 3 entries\",\n \"dependencyTaskIds not empty\"\n ],\n \"total_taskitems\": 2,\n \"warning_count\": 0\n },\n \"success\": true\n}","type":"text"}],"isError":false}}
|
||||
Reference in New Issue
Block a user