Sprint 003 findings + Sprint 004 pipeline decision audit plan
- split_prereq_op_dataset.py: extract accepted/rejected/schema-drift rows per gate - gen_prereq_op_rsa_data.py: convert accepted rows to Fabricate TSV format - 1000-run extracted dataset: 1297 accepted prereq_op rows, 24 schema-drift - Key finding: needs_validate_intake always True; effective gate is binary (needs_resolve_dependencies 77%, needs_architect_review 20%) - Key finding: run corpus text is template-driven (17 unique inputs) — not suitable for text-based training; RSA exists before ideal input is available - ROADMAP: gate lifecycle framing — goal is choice of backend, not forced determinism; RSA operates on imperfect/mixed/incomplete input by design - training_data_strategy.md: taskitem-as-self-contained-work-unit constraint - SPRINT-003: updated with 1000-run results, text audit findings, design constraints - SPRINT-004: pipeline decision audit — manual walkthrough of every decision from project description to generated artifact; execute next session Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
127
HANDOFF-2026-04-12-session2.md
Normal file
127
HANDOFF-2026-04-12-session2.md
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
# Handoff: RSA Session 2 — 2026-04-12
|
||||||
|
|
||||||
|
## What Was Done
|
||||||
|
|
||||||
|
### Extraction and dataset split
|
||||||
|
|
||||||
|
- Built `tools/split_prereq_op_dataset.py`
|
||||||
|
- splits extracted gate rows into accepted / rejected / schema-drift buckets
|
||||||
|
- for `prereq_op_selector` only
|
||||||
|
|
||||||
|
- Ran `extract_gate_rows.py` over 1000 runs (from 50-run slice)
|
||||||
|
- 1297 accepted rows, 24 rejected (all schema-drift)
|
||||||
|
- outputs at `semantic/prereq_op_dataset_1000/`
|
||||||
|
|
||||||
|
- Built `tools/gen_prereq_op_rsa_data.py`
|
||||||
|
- converts accepted rows to Fabricate TSV format
|
||||||
|
- outputs at `semantic/prereq_op_tsv/`
|
||||||
|
|
||||||
|
### Key findings from dataset analysis
|
||||||
|
|
||||||
|
**`needs_validate_intake` is always True** (1297/1297 accepted rows).
|
||||||
|
It is a constant, not a decision surface. Drop it from the label space.
|
||||||
|
|
||||||
|
**Effective gate is two binary classifiers:**
|
||||||
|
- `needs_resolve_dependencies`: 997/1297 = 76.9% positive
|
||||||
|
- `needs_architect_review`: 257/1297 = 19.8% positive
|
||||||
|
|
||||||
|
**Text features are useless from run corpus.**
|
||||||
|
Only 17 unique texts across 1297 rows — the corpus uses ~18 canonical intake spec
|
||||||
|
templates. Every task generated from the same intake shares the same context text.
|
||||||
|
The discriminative signal (step description) is not stored in run artifacts.
|
||||||
|
|
||||||
|
**Schema-drift variants found:**
|
||||||
|
- tool-ID drift: `whetstone_generate_taskitems` etc. in `prerequisiteOps` (12 rows)
|
||||||
|
- `manual-approval` drift: undocumented op name in `prerequisiteOps` (12 rows)
|
||||||
|
Both are salvageable (valid bits are correct), recommended to hard-filter for now.
|
||||||
|
|
||||||
|
### Training baseline
|
||||||
|
|
||||||
|
Sprint plan data (204 examples, 36 eval) split into two binary TSVs and trained:
|
||||||
|
|
||||||
|
| Specialist | best_acc | steps |
|
||||||
|
|------------|----------|-------|
|
||||||
|
| `prereq_review` (needs architect_review) | 75.0% | 4000 |
|
||||||
|
| `prereq_approval` (needs manual_approval) | 69.4% | 4000 |
|
||||||
|
|
||||||
|
These are weak baselines — small dataset, heuristic labels, wrong gate framing
|
||||||
|
(approval ≠ resolve_dependencies). Not production-ready.
|
||||||
|
|
||||||
|
## Architectural Insights Captured (Most Important Part of This Session)
|
||||||
|
|
||||||
|
### 1. Intake contract
|
||||||
|
|
||||||
|
The original design intention is that external tools (HiveMind, gleaner, etc.)
|
||||||
|
submit project descriptions in a **structured contract format** that explicitly
|
||||||
|
carries decision-relevant fields. The current corpus predates this contract.
|
||||||
|
|
||||||
|
With the contract, every project submission is a varied, labeled training example
|
||||||
|
with known discriminative fields. Without it, the intake produces ~18 template
|
||||||
|
outputs regardless of project.
|
||||||
|
|
||||||
|
Reference: `project.json` manifests are the closest existing contract artifact.
|
||||||
|
The `llm_touchpoints` array with `determinism_score` is the RSA entropy signal.
|
||||||
|
|
||||||
|
### 2. Taskitem as self-contained work unit
|
||||||
|
|
||||||
|
A taskitem is a concurrent work unit. By design it must include all information
|
||||||
|
the specialist needs. The specialist does not reach back to the original spec.
|
||||||
|
|
||||||
|
**This means the taskitem schema must carry discriminative RSA fields.**
|
||||||
|
`generate_taskitems` populates them; the RSA gate reads them from the taskitem.
|
||||||
|
|
||||||
|
The current schema lacks these fields — that is why the run corpus has weak text.
|
||||||
|
|
||||||
|
Adding RSA-relevant fields to the taskitem schema is the **prerequisite** for
|
||||||
|
collecting real training data at scale.
|
||||||
|
|
||||||
|
### 3. Contract can collapse RSA gates to deterministic
|
||||||
|
|
||||||
|
If the contract carries `architectural_surface`, `cross_component_deps`,
|
||||||
|
`security_sensitive` etc. explicitly, some gates that currently require ML become
|
||||||
|
deterministic rules. The RSA entropy threshold shifts as the contract gets richer.
|
||||||
|
|
||||||
|
## What Is Recorded Where
|
||||||
|
|
||||||
|
| Finding | Location |
|
||||||
|
|---------|----------|
|
||||||
|
| Sprint status + findings | `sprints/SPRINT-003-...md` (updated) |
|
||||||
|
| Taskitem-as-work-unit constraint | `docs/case_studies/whetstone_dsl_training_data_strategy.md` |
|
||||||
|
| Intake contract constraint | `sprints/SPRINT-003-...md` (Architectural Constraint section) |
|
||||||
|
| Split tool | `tools/split_prereq_op_dataset.py` |
|
||||||
|
| TSV generator (RSA-sourced) | `tools/gen_prereq_op_rsa_data.py` |
|
||||||
|
| 1000-run extracted dataset | `semantic/prereq_op_dataset_1000/` |
|
||||||
|
| Trained baseline checkpoints | `/mnt/storage/fabricate_runs/whetstone_prereq_review_binary/` |
|
||||||
|
| | `/mnt/storage/fabricate_runs/whetstone_prereq_approval_binary/` |
|
||||||
|
|
||||||
|
## What Is NOT Done (Next Session)
|
||||||
|
|
||||||
|
**Execute SPRINT-004: Pipeline Decision Audit.**
|
||||||
|
|
||||||
|
Full sprint document: `sprints/SPRINT-004-pipeline-decision-audit.md`
|
||||||
|
|
||||||
|
The goal is a manual walkthrough of the full whetstone_DSL pipeline from raw project
|
||||||
|
description to generated code. At every stage, record every decision being made, what
|
||||||
|
inputs were available, and what the optimal method is (deterministic / RSA / SLM / LLM
|
||||||
|
/ human).
|
||||||
|
|
||||||
|
Current LLM calls bundle many decisions together for token efficiency. The audit
|
||||||
|
unbundles them. `generate_taskitems` alone contains 10+ separable decisions.
|
||||||
|
|
||||||
|
Output: `docs/case_studies/whetstone_dsl_pipeline_decision_map.md`
|
||||||
|
|
||||||
|
This document replaces the current gate inventory as the authoritative RSA input.
|
||||||
|
Training data collection strategy follows from it, not before it.
|
||||||
|
|
||||||
|
### Start here next session
|
||||||
|
|
||||||
|
Read `editor/src/mcp/RegisterArchitectIntakeTools.h` first — it is the pipeline
|
||||||
|
entry point and its outputs constrain everything downstream.
|
||||||
|
|
||||||
|
## Do Not Do Next Session
|
||||||
|
|
||||||
|
- Do not run any pipeline code
|
||||||
|
- Do not write training data generators
|
||||||
|
- Do not train any specialist
|
||||||
|
- Do not modify whetstone_DSL source
|
||||||
|
- Do not collect more run artifacts until the decision map is complete
|
||||||
16
ROADMAP.md
16
ROADMAP.md
@@ -322,17 +322,33 @@ It should not be allowed to overfit the library to one memory-management ontolog
|
|||||||
- add packaging and runtime loading
|
- add packaging and runtime loading
|
||||||
- add diagnosis and recommendation APIs on top of benchmark evidence
|
- add diagnosis and recommendation APIs on top of benchmark evidence
|
||||||
|
|
||||||
|
## Gate Lifecycle — The Fundamental Property
|
||||||
|
|
||||||
|
RSA gates exist **before ideal input is available**. The intake may return a mix of
|
||||||
|
structured and unstructured data, or incomplete directions. That is the design
|
||||||
|
requirement, not a defect to fix upstream.
|
||||||
|
|
||||||
|
The RSA layer gives operators **choice of backend** per gate: statistical model,
|
||||||
|
deterministic rules, SLM, LLM, or human escalation. As the contract matures, more
|
||||||
|
backend options become viable. Some gates may remain statistical models indefinitely
|
||||||
|
because that is the right fit. Others may be replaced by rules. The operator decides.
|
||||||
|
|
||||||
|
Abstain and escalation policies are first-class responses to weak input — not failure
|
||||||
|
modes. A gate that correctly abstains on incomplete input is working as designed.
|
||||||
|
|
||||||
## Phase 5: Whetstone Integration
|
## Phase 5: Whetstone Integration
|
||||||
|
|
||||||
- Expose WhetstoneDSL gates through the library.
|
- Expose WhetstoneDSL gates through the library.
|
||||||
- Replace selected MCP bounded decisions with local specialist calls.
|
- Replace selected MCP bounded decisions with local specialist calls.
|
||||||
- Log abstentions and misroutes for retraining and gate redesign.
|
- Log abstentions and misroutes for retraining and gate redesign.
|
||||||
|
- For each deployed gate: track which backend is active and what would justify switching.
|
||||||
|
|
||||||
## Phase 6: Hivemind Integration
|
## Phase 6: Hivemind Integration
|
||||||
|
|
||||||
- Feed gate failure data into Hivemind as entropy evidence.
|
- Feed gate failure data into Hivemind as entropy evidence.
|
||||||
- Use Hivemind to prioritize which high-entropy gates deserve deterministic tooling.
|
- Use Hivemind to prioritize which high-entropy gates deserve deterministic tooling.
|
||||||
- Distinguish "needs a bigger model" from "needs a better tool or schema."
|
- Distinguish "needs a bigger model" from "needs a better tool or schema."
|
||||||
|
- Support backend substitution per gate without changing the gate contract.
|
||||||
|
|
||||||
## Exit Criteria For Version 0
|
## Exit Criteria For Version 0
|
||||||
|
|
||||||
|
|||||||
@@ -173,6 +173,37 @@ The right pattern is:
|
|||||||
|
|
||||||
This should produce a gate-native dataset rather than a project-native dataset.
|
This should produce a gate-native dataset rather than a project-native dataset.
|
||||||
|
|
||||||
|
## Taskitem as Self-Contained Work Unit — Design Constraint
|
||||||
|
|
||||||
|
**Added 2026-04-12.**
|
||||||
|
|
||||||
|
A taskitem is a concurrent work unit. By design it must include all information a
|
||||||
|
specialist needs to make its gate decision. The specialist does not reach back to
|
||||||
|
the original spec or the intake.
|
||||||
|
|
||||||
|
**Consequence for RSA gate design:**
|
||||||
|
|
||||||
|
The taskitem schema must carry every field that is discriminative for the gate.
|
||||||
|
`generate_taskitems` populates those fields from the intake contract. The RSA gate
|
||||||
|
reads those fields from the taskitem — no other context is available at decision time.
|
||||||
|
|
||||||
|
**Consequence for training data:**
|
||||||
|
|
||||||
|
The current taskitem schema does not carry discriminative fields for most RSA gates.
|
||||||
|
The run corpus has weak text (17 unique templates) because the schema was designed for
|
||||||
|
a different purpose — it records outputs, not inputs.
|
||||||
|
|
||||||
|
RSA gates are designed to operate on whatever input actually exists — including
|
||||||
|
mixed structured/unstructured content and incomplete directions. Waiting for ideal
|
||||||
|
input is not the RSA model.
|
||||||
|
|
||||||
|
The current corpus is the training corpus. Sprint plan step descriptions are the best
|
||||||
|
available text signal now. What the gate learns from imperfect inputs, and when it
|
||||||
|
abstains on insufficient inputs, is the gate's actual contract.
|
||||||
|
|
||||||
|
Richer taskitem fields (if added) give the gate more signal and may shift it toward a
|
||||||
|
deterministic backend — but that is operator choice, not a prerequisite for deployment.
|
||||||
|
|
||||||
## Compatibility Constraint
|
## Compatibility Constraint
|
||||||
|
|
||||||
We should not assume the new specialists must fit perfectly into the exact old
|
We should not assume the new specialists must fit perfectly into the exact old
|
||||||
|
|||||||
5284
semantic/extracted_gate_rows_1000.ndjson
Normal file
5284
semantic/extracted_gate_rows_1000.ndjson
Normal file
File diff suppressed because one or more lines are too long
94
semantic/prereq_op_dataset/accepted.ndjson
Normal file
94
semantic/prereq_op_dataset/accepted.ndjson
Normal file
File diff suppressed because one or more lines are too long
12
semantic/prereq_op_dataset/rejected.ndjson
Normal file
12
semantic/prereq_op_dataset/rejected.ndjson
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1", "title": "Intake Foundation Primary"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2", "title": "Execution Readiness Primary"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p3", "title": "Intake Foundation Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p3"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p4", "title": "Execution Readiness Primary [whetstone_queue_ready]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p4"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p5", "title": "Intake Foundation Primary [whetstone_validate_taskitem]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p5"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p6", "title": "Execution Readiness Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p6"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1", "title": "Intake Foundation Primary"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2", "title": "Execution Readiness Primary"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p3", "title": "Intake Foundation Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p3"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p4", "title": "Execution Readiness Primary [whetstone_queue_ready]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p4"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p5", "title": "Intake Foundation Primary [whetstone_validate_taskitem]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p5"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p6", "title": "Execution Readiness Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p6"}
|
||||||
12
semantic/prereq_op_dataset/schema_drift.ndjson
Normal file
12
semantic/prereq_op_dataset/schema_drift.ndjson
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1", "title": "Intake Foundation Primary"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2", "title": "Execution Readiness Primary"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p3", "title": "Intake Foundation Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p3"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p4", "title": "Execution Readiness Primary [whetstone_queue_ready]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p4"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p5", "title": "Intake Foundation Primary [whetstone_validate_taskitem]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p5"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p6", "title": "Execution Readiness Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170014", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170014/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p6"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1", "title": "Intake Foundation Primary"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2", "title": "Execution Readiness Primary"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p3", "title": "Intake Foundation Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p3"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p4", "title": "Execution Readiness Primary [whetstone_queue_ready]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p4"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 85, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": [], "milestone_id": "milestone-1", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "high_confidence_clear_path", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-1-p5", "title": "Intake Foundation Primary [whetstone_validate_taskitem]"}, "decision_label": {"needs_architect_review": true, "needs_resolve_dependencies": false, "needs_validate_intake": true, "source_values": ["architect-review", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-1-p5"}
|
||||||
|
{"decision_context": {"ambiguity_count": 0, "ambiguity_signals": [], "confidence": 81, "conflict_signals": {"ambiguousRequirementCount": 0, "conflictCount": 0, "hasConflicts": false}, "dependency_task_ids": ["task-1"], "milestone_id": "milestone-2", "normalized_requirements": [{"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "follow architecture gate requirements from sprint plan", "requirementId": "constraint-1", "sourceLine": 4}, {"ambiguous": false, "anchor": "constraints", "kind": "constraint", "normalizedText": "keep changes deterministic and test backed", "requirementId": "constraint-2", "sourceLine": 5}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "existing editor src modules and mcp toolchain", "requirementId": "dependency-1", "sourceLine": 8}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "whetstone mcp stable binary and workspace config", "requirementId": "dependency-2", "sourceLine": 9}, {"ambiguous": false, "anchor": "dependencies", "kind": "dependency", "normalizedText": "datasets project benchmarks challenging fullstack multifile 2026 02 26 jsonl", "requirementId": "dependency-3", "sourceLine": 10}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "all sprint step tests pass", "requirementId": "acceptance-1", "sourceLine": 13}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "no regression in existing mcp tool behavior", "requirementId": "acceptance-2", "sourceLine": 14}, {"ambiguous": false, "anchor": "acceptance-criteria", "kind": "acceptance", "normalizedText": "generated task queue is ready or blockers are explicit", "requirementId": "acceptance-3", "sourceLine": 15}], "parsed_spec": {"acceptanceCriteria": [{"anchor": "acceptance-criteria", "line": 13, "sectionTitle": "Acceptance Criteria", "text": "All sprint step tests pass"}, {"anchor": "acceptance-criteria", "line": 14, "sectionTitle": "Acceptance Criteria", "text": "No regression in existing MCP tool behavior"}, {"anchor": "acceptance-criteria", "line": 15, "sectionTitle": "Acceptance Criteria", "text": "Generated task queue is ready or blockers are explicit"}], "constraints": [{"anchor": "constraints", "line": 4, "sectionTitle": "Constraints", "text": "Follow architecture gate requirements from sprint plan"}, {"anchor": "constraints", "line": 5, "sectionTitle": "Constraints", "text": "Keep changes deterministic and test-backed"}], "dependencies": [{"anchor": "dependencies", "line": 8, "sectionTitle": "Dependencies", "text": "Existing editor/src modules and MCP toolchain"}, {"anchor": "dependencies", "line": 9, "sectionTitle": "Dependencies", "text": "whetstone_mcp stable binary and workspace config"}, {"anchor": "dependencies", "line": 10, "sectionTitle": "Dependencies", "text": "datasets/project_benchmarks/challenging_fullstack_multifile_2026-02-26.jsonl"}], "goals": [], "sections": [{"anchor": "goals", "headingLine": 1, "title": "Goals"}, {"anchor": "constraints", "headingLine": 3, "title": "Constraints"}, {"anchor": "dependencies", "headingLine": 7, "title": "Dependencies"}, {"anchor": "acceptance-criteria", "headingLine": 12, "title": "Acceptance Criteria"}, {"anchor": "semantic-planning-packet-auto-extracted", "headingLine": 19, "title": "Semantic Planning Packet (Auto-Extracted)"}]}, "reasons": ["compatibility", "concurrency", "contract", "depends_on_prior_tasks", "migration", "performance", "raw_structural_projection", "replay", "risk", "rollout", "security", "semantic", "transaction"], "task_id": "task-2-p6", "title": "Execution Readiness Primary [whetstone_generate_taskitems]"}, "decision_label": {"needs_architect_review": false, "needs_resolve_dependencies": true, "needs_validate_intake": true, "source_values": ["resolve-dependencies", "validate-intake", "whetstone_generate_taskitems", "whetstone_queue_ready", "whetstone_validate_taskitem"]}, "decision_provenance": "direct_bundled", "gate_id": "prereq_op_selector", "rejection_flags": ["invalid_prerequisite_values:whetstone_generate_taskitems,whetstone_queue_ready,whetstone_validate_taskitem"], "run_id": "01a_fallback_intake_spec_20260226_170301", "source_artifacts": ["/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/01_intake.json", "/home/bill/Documents/CLionProjects/whetstone_DSL/logs/taskitem_runs/01a_fallback_intake_spec_20260226_170301/02_generate_taskitems.json", "/home/bill/Documents/whetstone_RSA/semantic/rsa_gate_extraction_contracts_v0.json"], "task_id": "task-2-p6"}
|
||||||
1297
semantic/prereq_op_dataset_1000/accepted.ndjson
Normal file
1297
semantic/prereq_op_dataset_1000/accepted.ndjson
Normal file
File diff suppressed because one or more lines are too long
24
semantic/prereq_op_dataset_1000/rejected.ndjson
Normal file
24
semantic/prereq_op_dataset_1000/rejected.ndjson
Normal file
File diff suppressed because one or more lines are too long
24
semantic/prereq_op_dataset_1000/schema_drift.ndjson
Normal file
24
semantic/prereq_op_dataset_1000/schema_drift.ndjson
Normal file
File diff suppressed because one or more lines are too long
194
semantic/prereq_op_tsv/prereq_architect_eval.tsv
Normal file
194
semantic/prereq_op_tsv/prereq_architect_eval.tsv
Normal file
@@ -0,0 +1,194 @@
|
|||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one event; at least one event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one event; at least one event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language cpp; available libraries boost nlohmann json fmt; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language cpp; available libraries boost nlohmann json fmt; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts | constraints: primary language cpp; available libraries cublas nlohmann json numpy
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1103
semantic/prereq_op_tsv/prereq_architect_train.tsv
Normal file
1103
semantic/prereq_op_tsv/prereq_architect_train.tsv
Normal file
File diff suppressed because it is too large
Load Diff
194
semantic/prereq_op_tsv/prereq_resolve_eval.tsv
Normal file
194
semantic/prereq_op_tsv/prereq_resolve_eval.tsv
Normal file
@@ -0,0 +1,194 @@
|
|||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one event; at least one event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one event; at least one event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language rust; available libraries axum serde tokio sqlx; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language cpp; available libraries boost nlohmann json fmt; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: generate deterministic taskitems with strict execution contracts; include selected library and preferred apis per task where applicable | constraints: primary language cpp; available libraries boost nlohmann json fmt; prefer explicit use of selected library apis in task execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts | constraints: primary language cpp; available libraries cublas nlohmann json numpy
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: scenario 1 given when then; scenario 2 given when then; required artifacts and pass conditions | constraints: language runtime constraints; forbidden dependencies apis; determinism replay requirements
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express zod prisma bullmq; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language node; available libraries express prisma zod
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language java; available libraries spring boot jackson jooq flyway; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: all sprint step tests pass; no regression in existing mcp tool behavior; generated task queue is ready or blockers are explicit | constraints: follow architecture gate requirements from sprint plan; keep changes deterministic and test backed
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: depends_on_prior_tasks | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language python; available libraries fastapi pydantic sqlalchemy requests; use library apis explicitly where suitable in execution contracts
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
1 0 title: Execution Readiness Primary | reasons: high_confidence_clear_path | accepts: at least one tool selection event; at least one tool execution event; no malformed mcp payloads; no unbounded loops
|
||||||
|
0 0 title: Intake Foundation Primary | reasons: high_confidence_clear_path | accepts: deterministic taskitems with strict execution contracts; include selected library and preferred apis when applicable | constraints: primary language go; available libraries gin sqlx zap segmentio kafka go; use library apis explicitly where suitable in execution contracts
|
||||||
|
1103
semantic/prereq_op_tsv/prereq_resolve_train.tsv
Normal file
1103
semantic/prereq_op_tsv/prereq_resolve_train.tsv
Normal file
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## Status
|
## Status
|
||||||
|
|
||||||
Active
|
Active — pending intake contract design (see Architectural Constraint below)
|
||||||
|
|
||||||
## Intent
|
## Intent
|
||||||
|
|
||||||
@@ -19,6 +19,47 @@ The output of this sprint should be concrete enough that later work can proceed
|
|||||||
without re-deriving what the first real gates are or how they map into semantic
|
without re-deriving what the first real gates are or how they map into semantic
|
||||||
entities.
|
entities.
|
||||||
|
|
||||||
|
## Architectural Constraint — Intake Contract
|
||||||
|
|
||||||
|
**Discovered this session.** This constraint changes how RSA training data is sourced.
|
||||||
|
|
||||||
|
The current whetstone_DSL run corpus predates a planned intake contract. The intended
|
||||||
|
design is that external tools (HiveMind, gleaner, constcad, etc.) submit project
|
||||||
|
descriptions in a **structured contract format** that explicitly carries the fields
|
||||||
|
needed to make RSA gate decisions bounded and classifiable.
|
||||||
|
|
||||||
|
Without the contract, the intake produces ~18 unique template outputs regardless of
|
||||||
|
project. With the contract, every project submission becomes a varied, labeled training
|
||||||
|
example with known decision-relevant fields.
|
||||||
|
|
||||||
|
**Correct pipeline (with contract):**
|
||||||
|
|
||||||
|
```
|
||||||
|
External tool
|
||||||
|
↓ submits structured project description (contract fields)
|
||||||
|
Intake contract schema ← explicit per-field semantics
|
||||||
|
↓
|
||||||
|
architect_intake reads contract, produces normalized form
|
||||||
|
↓
|
||||||
|
RSA gates fire on contract fields ← bounded, varied, discriminative
|
||||||
|
↓
|
||||||
|
generate_taskitems ← deterministic given gate outputs
|
||||||
|
```
|
||||||
|
|
||||||
|
**Implications for RSA design:**
|
||||||
|
|
||||||
|
- Gate input features are **contract fields**, not free-form text
|
||||||
|
- Training data comes from **contract submissions**, not ad hoc specs
|
||||||
|
- The current corpus is valid for label schema validation only
|
||||||
|
- Sprint plan step descriptions remain a valid interim text source for baseline training
|
||||||
|
- The contract schema must be defined before RSA training data can be collected at scale
|
||||||
|
|
||||||
|
**Next design milestone (not this sprint):**
|
||||||
|
|
||||||
|
Define the intake contract schema: what fields must an external tool provide, and which
|
||||||
|
fields are the discriminative inputs for each immediate RSA gate (`verification_type`,
|
||||||
|
`worker_type`, `prereq_op_selector`, `cpp_raising_profile`).
|
||||||
|
|
||||||
## Why This Sprint Exists
|
## Why This Sprint Exists
|
||||||
|
|
||||||
`SPRINT-002-rsa-semantic-bootstrap.md` established the architectural direction,
|
`SPRINT-002-rsa-semantic-bootstrap.md` established the architectural direction,
|
||||||
@@ -317,9 +358,143 @@ Turn `prereq_op_selector` into the first accepted dataset slice, with:
|
|||||||
|
|
||||||
Status:
|
Status:
|
||||||
|
|
||||||
- partially complete
|
- **complete** for the 50-run slice
|
||||||
- `prereq_op_selector` is now represented as structured/factorized in
|
- split produced by `tools/split_prereq_op_dataset.py`
|
||||||
`semantic/rsa_semantic_bootstrap_v0.json`
|
- outputs at `semantic/prereq_op_dataset/`
|
||||||
|
- `accepted.ndjson` — 94 rows
|
||||||
|
- `rejected.ndjson` — 12 rows (all schema-drift)
|
||||||
|
- `schema_drift.ndjson` — 12 rows (same set; all rejections are schema-drift)
|
||||||
|
|
||||||
|
### Key Findings From Split
|
||||||
|
|
||||||
|
**Label distribution (accepted rows):**
|
||||||
|
|
||||||
|
| Combo | Count |
|
||||||
|
|-------|-------|
|
||||||
|
| validate\_intake only | 13 |
|
||||||
|
| validate\_intake + resolve\_dependencies | 47 |
|
||||||
|
| validate\_intake + architect\_review | 34 |
|
||||||
|
|
||||||
|
**`needs_validate_intake` is always True** across all 94 accepted rows.
|
||||||
|
|
||||||
|
This means:
|
||||||
|
- `validate_intake` is not a decision surface — it is a constant output in this corpus.
|
||||||
|
- The effective gate is a 3-way classification:
|
||||||
|
- `validate_only` (13 rows, 13.8%)
|
||||||
|
- `validate+resolve` (47 rows, 50%)
|
||||||
|
- `validate+architect` (34 rows, 36.2%)
|
||||||
|
- Or equivalently, two independent binary decisions:
|
||||||
|
- `needs_resolve_dependencies` (47/94 = 50%)
|
||||||
|
- `needs_architect_review` (34/94 = 36%)
|
||||||
|
|
||||||
|
**Schema-drift rows carry valid label signal.** The 12 rejected rows have correct
|
||||||
|
`needs_*` booleans. The only issue is `source_values` contains tool IDs mixed
|
||||||
|
with valid op names. Salvage path: re-extract only the valid op names and strip
|
||||||
|
the tool IDs, then accept the row.
|
||||||
|
|
||||||
|
### Decision Required Before Broadening
|
||||||
|
|
||||||
|
Before running over more runs, decide:
|
||||||
|
|
||||||
|
1. **Hard-filter or salvage schema-drift rows?**
|
||||||
|
- Hard-filter: discard 12 rows, keep extraction simple.
|
||||||
|
- Salvage: strip invalid values from `source_values`, promote to accepted.
|
||||||
|
- Recommendation: hard-filter for the first training run. Salvage later if
|
||||||
|
the accepted corpus stays small after broadening.
|
||||||
|
|
||||||
|
2. **Flat 3-way vs factorized binary formulation?**
|
||||||
|
- Flat 3-way: treat as single multiclass with 3 outputs (ignoring validate_intake).
|
||||||
|
- Factorized binary: two independent classifiers for `architect_review` and
|
||||||
|
`resolve_dependencies`. `validate_intake` is dropped as a constant.
|
||||||
|
- Recommendation: factorized binary. The two decisions appear semantically
|
||||||
|
orthogonal in the data.
|
||||||
|
|
||||||
|
### 1000-Run Extraction Results
|
||||||
|
|
||||||
|
Output at `semantic/prereq_op_dataset_1000/` (1000 runs, 1321 tasks):
|
||||||
|
|
||||||
|
- accepted: 1297 rows
|
||||||
|
- rejected: 24 rows (all schema-drift)
|
||||||
|
- schema drift variants:
|
||||||
|
- tool-ID drift (`whetstone_generate_taskitems`, etc.): 12 rows
|
||||||
|
- `manual-approval` drift: 12 rows (undocumented op name in `prerequisiteOps`)
|
||||||
|
|
||||||
|
**Label distribution (1000-run accepted):**
|
||||||
|
|
||||||
|
| Combo | Count | Pct |
|
||||||
|
|-------|-------|-----|
|
||||||
|
| validate\_intake + resolve\_dependencies | 996 | 76.8% |
|
||||||
|
| validate\_intake + architect\_review | 256 | 19.7% |
|
||||||
|
| validate\_intake only | 44 | 3.4% |
|
||||||
|
| all three | 1 | 0.1% |
|
||||||
|
|
||||||
|
`needs_validate_intake` remains always True at 1000-run scale.
|
||||||
|
|
||||||
|
Effective gate at 1000 runs:
|
||||||
|
- `needs_resolve_dependencies`: 997/1297 = 76.9% positive
|
||||||
|
- `needs_architect_review`: 257/1297 = 19.8% positive
|
||||||
|
|
||||||
|
Class imbalance for `needs_architect_review` (~80/20) is manageable for training.
|
||||||
|
The `validate_intake` constant can be dropped from the label space.
|
||||||
|
|
||||||
|
Both schema-drift variants are **salvageable**: valid bits (`needs_*`) are correct;
|
||||||
|
only `source_values` contains noise. Recommendation: hard-filter for first training
|
||||||
|
run, evaluate whether 24 extra rows are worth a salvage pass after.
|
||||||
|
|
||||||
|
### Text Feature Audit — Critical Finding
|
||||||
|
|
||||||
|
Attempted text composition from extracted row context fields: `title`, `reasons`,
|
||||||
|
`normalized_requirements`. Result:
|
||||||
|
|
||||||
|
- unique texts across 1297 rows: **17** (title+reasons), **18** (acceptance criteria)
|
||||||
|
- top text appears **697 times** ("Execution Readiness Primary | high_confidence_clear_path")
|
||||||
|
- structured features (confidence, dependency count) are also nearly constant
|
||||||
|
|
||||||
|
**Root cause:** The whetstone_DSL corpus uses a small set of canonical intake specs
|
||||||
|
(~18 unique templates) run many times. All tasks generated from the same intake share
|
||||||
|
the same context text. The step description text — the actual discriminative feature —
|
||||||
|
is not stored in run artifacts.
|
||||||
|
|
||||||
|
**Conclusion:**
|
||||||
|
|
||||||
|
The run corpus captures **labels** correctly but not the **text features** needed to
|
||||||
|
train a text-based prereq_op specialist.
|
||||||
|
|
||||||
|
The correct training data source for text input remains sprint plan step descriptions
|
||||||
|
(as used by `gen_prereq_op_data.py` in the specialist fleet). The run corpus contributes:
|
||||||
|
- validated label schema
|
||||||
|
- label frequency distribution (validate-intake constant, resolve 77%, architect 20%)
|
||||||
|
- schema-drift pattern documentation
|
||||||
|
- corpus for future label-correction of heuristic sprint-plan data
|
||||||
|
|
||||||
|
**Data strategy going forward:**
|
||||||
|
|
||||||
|
| Source | Role |
|
||||||
|
|--------|------|
|
||||||
|
| Sprint plan step descriptions | Primary text input for training |
|
||||||
|
| Run corpus (`accepted.ndjson`) | Label validation and frequency baseline |
|
||||||
|
| Run corpus schema-drift rows | Schema-drift taxonomy for robustness testing |
|
||||||
|
|
||||||
|
The sprint plan approach is already implemented in:
|
||||||
|
`CLionProjects/whetstone_DSL/specialists/scripts/gen_prereq_op_data.py`
|
||||||
|
|
||||||
|
That script uses keyword heuristics to assign labels. The RSA extraction work validates
|
||||||
|
that the heuristic label schema is correct; improving label accuracy requires linking
|
||||||
|
sprint plan steps back to run artifacts (not yet feasible).
|
||||||
|
|
||||||
|
### Next Active Task
|
||||||
|
|
||||||
|
Proceed to training using existing sprint plan data with the factorized binary formulation:
|
||||||
|
|
||||||
|
1. Run `gen_prereq_op_data.py` to regenerate sprint plan TSVs.
|
||||||
|
2. Split into two binary TSVs (resolve / architect) using `prereq_op_binary_split.py`.
|
||||||
|
3. Train both specialists with `train_specialist_pt.py`.
|
||||||
|
4. Evaluate combined accuracy against the 4-way eval set.
|
||||||
|
|
||||||
|
The RSA-extracted `accepted.ndjson` dataset remains available as a label-validation
|
||||||
|
reference and can be used for post-training audit (do sprint-plan-trained specialists
|
||||||
|
generalize to real run labels?).
|
||||||
|
|
||||||
- `execution_contract_shape` skeleton is now defined in
|
- `execution_contract_shape` skeleton is now defined in
|
||||||
`docs/case_studies/whetstone_dsl_execution_contract_shape_skeleton.md`
|
`docs/case_studies/whetstone_dsl_execution_contract_shape_skeleton.md`
|
||||||
- `target_file_selection` and `workstream_grouping` still need explicit skeleton field sets
|
- `target_file_selection` and `workstream_grouping` still need explicit skeleton field sets
|
||||||
|
|||||||
224
sprints/SPRINT-004-pipeline-decision-audit.md
Normal file
224
sprints/SPRINT-004-pipeline-decision-audit.md
Normal file
@@ -0,0 +1,224 @@
|
|||||||
|
# Sprint 004: Pipeline Decision Audit
|
||||||
|
|
||||||
|
## Status
|
||||||
|
|
||||||
|
Authored — not yet executed. Execute in the next session.
|
||||||
|
|
||||||
|
## Intent
|
||||||
|
|
||||||
|
Manually walk the full whetstone_DSL pipeline from raw project description to
|
||||||
|
generated code artifacts. At every stage, identify every decision being made,
|
||||||
|
record what inputs were available at the time of that decision, and evaluate the
|
||||||
|
optimal method for that decision.
|
||||||
|
|
||||||
|
This sprint produces a decision map, not code and not training data.
|
||||||
|
|
||||||
|
## Why This Sprint Exists
|
||||||
|
|
||||||
|
The current specialist fleet and RSA gate inventory were built top-down: we
|
||||||
|
identified gate candidates from the output schema and worked backward. This sprint
|
||||||
|
inverts that: start from the input and work forward, letting the pipeline tell us
|
||||||
|
what decisions actually exist.
|
||||||
|
|
||||||
|
The prior approach missed decisions that were collapsed into single LLM calls. A
|
||||||
|
single call to `generate_taskitems` currently makes at minimum:
|
||||||
|
|
||||||
|
- task decomposition (how many tasks, what granularity)
|
||||||
|
- task title assignment
|
||||||
|
- milestone grouping
|
||||||
|
- worker type selection
|
||||||
|
- verification type selection
|
||||||
|
- prerequisite op selection
|
||||||
|
- execution contract shaping
|
||||||
|
- target file selection
|
||||||
|
- acceptance command selection
|
||||||
|
- required tool selection
|
||||||
|
- confidence scoring
|
||||||
|
- ambiguity annotation
|
||||||
|
- reason generation
|
||||||
|
|
||||||
|
These are not one decision. They are 10+ decisions bundled for token efficiency.
|
||||||
|
The audit's job is to unbundle them and evaluate each one independently.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
### In scope
|
||||||
|
|
||||||
|
- Walk every pipeline stage from spec text to final code artifact
|
||||||
|
- For each stage: list every decision made in that stage
|
||||||
|
- For each decision: record inputs available, current implementation, proposed method
|
||||||
|
- Identify decisions that are genuinely coupled vs accidentally bundled
|
||||||
|
- Note where current inputs are insufficient and what the gate should do (abstain,
|
||||||
|
escalate, or decide from partial information)
|
||||||
|
|
||||||
|
### Not in scope
|
||||||
|
|
||||||
|
- Running any pipeline code
|
||||||
|
- Writing training data generators
|
||||||
|
- Training any specialist
|
||||||
|
- Modifying any whetstone_DSL source
|
||||||
|
- Designing gate schemas or contracts in detail
|
||||||
|
|
||||||
|
## Pipeline Stages To Audit
|
||||||
|
|
||||||
|
### Stage 0: Project description ingestion
|
||||||
|
|
||||||
|
Raw input: a project description in some format (markdown, structured JSON, free text).
|
||||||
|
|
||||||
|
Questions to answer:
|
||||||
|
- What formats are currently accepted?
|
||||||
|
- What decisions are implicit in accepting/rejecting an input format?
|
||||||
|
- Is format normalization a decision or a transformation?
|
||||||
|
- What is the minimum viable input for the pipeline to proceed?
|
||||||
|
- What does the pipeline do when input is partial or ambiguous?
|
||||||
|
|
||||||
|
### Stage 1: `architect_intake`
|
||||||
|
|
||||||
|
Current implementation: single LLM call over the raw spec.
|
||||||
|
|
||||||
|
Output fields to audit (each may represent a separate decision):
|
||||||
|
- `normalizedRequirements` — which lines become requirements, which are discarded
|
||||||
|
- `parsedSpec.goals` — goal extraction and normalization
|
||||||
|
- `parsedSpec.constraints` — constraint extraction
|
||||||
|
- `parsedSpec.acceptanceCriteria` — acceptance criterion extraction
|
||||||
|
- `parsedSpec.dependencies` — dependency extraction
|
||||||
|
- `conflictSignals` — conflict detection
|
||||||
|
- `ambiguitySignals` — ambiguity detection
|
||||||
|
|
||||||
|
For each output field:
|
||||||
|
- What inputs does this decision use?
|
||||||
|
- Is this deterministic given the input, or genuinely uncertain?
|
||||||
|
- What method is appropriate (rule, RSA, SLM, LLM)?
|
||||||
|
- What does failure or partial output mean for downstream stages?
|
||||||
|
|
||||||
|
### Stage 2: `generate_taskitems`
|
||||||
|
|
||||||
|
Current implementation: single LLM call over normalized requirements.
|
||||||
|
|
||||||
|
Decisions to unbundle and audit individually:
|
||||||
|
|
||||||
|
**Decomposition decisions**
|
||||||
|
- How many tasks to create
|
||||||
|
- What granularity to use
|
||||||
|
- How to group related work into milestones
|
||||||
|
- Whether a requirement maps to one task or multiple
|
||||||
|
|
||||||
|
**Per-task assignment decisions**
|
||||||
|
- `title` — what to call the task
|
||||||
|
- `milestoneId` — which milestone this task belongs to
|
||||||
|
- `workerType` — who does this work (implementer, reviewer, architect, qa)
|
||||||
|
- `verificationType` — how to verify completion (unit, integration, schema, smoke, docs)
|
||||||
|
- `prerequisiteOps` — what gates must clear before this task runs
|
||||||
|
- `confidence` — how confident is the system in this task
|
||||||
|
- `ambiguityCount` — how many ambiguous signals were present
|
||||||
|
- `reasons` — why was this task generated
|
||||||
|
|
||||||
|
**Execution contract decisions** (currently nested inside each task)
|
||||||
|
- `targetFiles` — which files this task touches
|
||||||
|
- `acceptanceCommands` — how to verify the task is done
|
||||||
|
- `requiredTools` — which tools are needed
|
||||||
|
- `crossProjectTargets` — does this task touch other projects
|
||||||
|
- `resourceLocks` — what resources does this task need exclusive access to
|
||||||
|
|
||||||
|
For each decision: same four questions as Stage 1.
|
||||||
|
|
||||||
|
### Stage 3: `queue_ready`
|
||||||
|
|
||||||
|
Current implementation: deterministic validation.
|
||||||
|
|
||||||
|
Questions to answer:
|
||||||
|
- Is this purely deterministic, or are there judgment calls embedded in it?
|
||||||
|
- What validation rules exist and are they all rule-complete?
|
||||||
|
- Are there cases where queue_ready makes a decision that should be RSA?
|
||||||
|
|
||||||
|
### Stage 4: Per-task execution (`run_pipeline`)
|
||||||
|
|
||||||
|
Current implementation: one LLM call per task step, given the execution contract.
|
||||||
|
|
||||||
|
This stage likely contains its own collapsed decision bundle. Questions to answer:
|
||||||
|
- What does the executor decide before writing any code?
|
||||||
|
- What decisions are made during code generation vs before it starts?
|
||||||
|
- What decisions are made per file vs per task?
|
||||||
|
- How does the executor handle execution contract fields that are missing or ambiguous?
|
||||||
|
|
||||||
|
### Stage 5: Verification
|
||||||
|
|
||||||
|
Current implementation: runs acceptance commands, reports pass/fail.
|
||||||
|
|
||||||
|
Questions to answer:
|
||||||
|
- Is the verification decision purely mechanical (pass/fail), or is there judgment?
|
||||||
|
- What happens when acceptance commands are absent or malformed?
|
||||||
|
- Is there a triage decision when verification fails?
|
||||||
|
|
||||||
|
## For Each Decision: What To Record
|
||||||
|
|
||||||
|
Each discovered decision should be recorded as a decision record with these fields:
|
||||||
|
|
||||||
|
```
|
||||||
|
decision_id: short unique identifier (e.g., "intake.conflict_detection")
|
||||||
|
stage: which pipeline stage this fires in
|
||||||
|
inputs_available: what information exists at decision time
|
||||||
|
current_impl: how it is currently implemented (LLM / rule / heuristic / none)
|
||||||
|
output_type: boolean / enum / structured / free-text / numeric
|
||||||
|
output_values: the bounded set of outputs, if applicable
|
||||||
|
coupling: which other decisions does this one depend on or influence
|
||||||
|
proposed_method: deterministic / RSA / SLM / LLM / human
|
||||||
|
rationale: why that method fits this decision
|
||||||
|
rsa_notes: if RSA: what the gate input features are, what abstain looks like
|
||||||
|
open_questions: anything unresolved
|
||||||
|
```
|
||||||
|
|
||||||
|
## Code Surfaces To Examine
|
||||||
|
|
||||||
|
These are the primary source files for understanding what decisions currently exist:
|
||||||
|
|
||||||
|
| Surface | Location |
|
||||||
|
|---------|----------|
|
||||||
|
| `architect_intake` tool | `editor/src/mcp/RegisterArchitectIntakeTools.h` |
|
||||||
|
| `generate_taskitems` tool | `editor/src/mcp/RegisterTaskitemGeneratorTools.h` |
|
||||||
|
| Taskitem generator logic | `editor/src/TaskitemGeneratorV2.h` |
|
||||||
|
| Confidence and ambiguity | `editor/src/TaskitemConfidenceAmbiguity.h` |
|
||||||
|
| Queue validation | `editor/src/mcp/RegisterQueueTools.h` |
|
||||||
|
| Pipeline execution | `editor/src/mcp/RegisterPipelineTools.h` |
|
||||||
|
| Routing | `editor/src/RoutingEngine.h` |
|
||||||
|
| Execution contract | `editor/src/ExecutionContractBuilder.h` (if exists) |
|
||||||
|
|
||||||
|
For each file: read the decision logic, not just the schema. The schema tells you
|
||||||
|
what fields exist. The logic tells you what actually determines their values.
|
||||||
|
|
||||||
|
## Output of This Sprint
|
||||||
|
|
||||||
|
One document: `docs/case_studies/whetstone_dsl_pipeline_decision_map.md`
|
||||||
|
|
||||||
|
Structure:
|
||||||
|
- One section per pipeline stage
|
||||||
|
- Within each section: one subsection per decision record
|
||||||
|
- Summary table at the top: all decisions, their current impl, and proposed method
|
||||||
|
|
||||||
|
This document becomes the authoritative input for:
|
||||||
|
- RSA gate inventory (replaces the current incomplete inventory)
|
||||||
|
- Training data collection strategy (once we know what inputs each gate sees)
|
||||||
|
- Sprint 005: first gate implementation from the decision map
|
||||||
|
|
||||||
|
## Acceptance Criteria
|
||||||
|
|
||||||
|
- Every stage from project description to generated artifact is covered
|
||||||
|
- Every output field of every pipeline tool is traced to at least one decision record
|
||||||
|
- No decision record has `proposed_method: LLM` without a written rationale for why
|
||||||
|
a smaller or more bounded approach is insufficient
|
||||||
|
- The summary table exists and is navigable
|
||||||
|
- At least one decision currently implemented as a single LLM call is shown to contain
|
||||||
|
three or more separable decisions
|
||||||
|
|
||||||
|
## Execution Notes for Next Session
|
||||||
|
|
||||||
|
Start with Stage 1 (`architect_intake`) — it is the entry point and its outputs
|
||||||
|
constrain everything downstream. Read the source, not just the schema.
|
||||||
|
|
||||||
|
Do not assume a field is a single decision because it has a single key in the output
|
||||||
|
JSON. JSON keys are output slots. Decisions are the reasoning steps that fill them.
|
||||||
|
|
||||||
|
When a decision is genuinely coupled to another (output of A determines the valid
|
||||||
|
space of B), record the coupling explicitly rather than merging the decisions. Coupled
|
||||||
|
decisions that are *always* coupled may warrant a structured output gate. Decisions
|
||||||
|
that are *sometimes* coupled may warrant independent gates with a dependency edge.
|
||||||
174
tools/gen_prereq_op_rsa_data.py
Normal file
174
tools/gen_prereq_op_rsa_data.py
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Generate Fabricate-format TSV training data for the two prereq_op binary specialists.
|
||||||
|
|
||||||
|
Source: semantic/prereq_op_dataset_1000/accepted.ndjson
|
||||||
|
(extracted from real whetstone_DSL taskitem run artifacts)
|
||||||
|
|
||||||
|
Produces four files:
|
||||||
|
prereq_resolve_train.tsv / prereq_resolve_eval.tsv
|
||||||
|
prereq_architect_train.tsv / prereq_architect_eval.tsv
|
||||||
|
|
||||||
|
Each file uses Fabricate TSV format: label<TAB>0<TAB>text
|
||||||
|
label: 0 = no, 1 = yes
|
||||||
|
0: unused hop field (always 0)
|
||||||
|
text: composed from task context fields
|
||||||
|
|
||||||
|
Text composition (per row):
|
||||||
|
title: <task title>
|
||||||
|
reasons: <reason1>; <reason2>; ...
|
||||||
|
accepts: <acceptance criterion text>; ...
|
||||||
|
constraints: <constraint text>; ...
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
python3 tools/gen_prereq_op_rsa_data.py \\
|
||||||
|
--input semantic/prereq_op_dataset_1000/accepted.ndjson \\
|
||||||
|
--output-dir semantic/prereq_op_tsv \\
|
||||||
|
--eval-frac 0.15 \\
|
||||||
|
--seed 42
|
||||||
|
"""
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import json
|
||||||
|
import random
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
|
||||||
|
REPO_ROOT = Path(__file__).resolve().parent.parent
|
||||||
|
|
||||||
|
|
||||||
|
def compose_text(ctx: dict) -> str:
|
||||||
|
parts = []
|
||||||
|
|
||||||
|
title = (ctx.get("title") or "").strip()
|
||||||
|
if title:
|
||||||
|
parts.append(f"title: {title}")
|
||||||
|
|
||||||
|
reasons = ctx.get("reasons") or []
|
||||||
|
if reasons:
|
||||||
|
parts.append("reasons: " + "; ".join(str(r).strip() for r in reasons if r))
|
||||||
|
|
||||||
|
reqs = ctx.get("normalized_requirements") or []
|
||||||
|
accepts = [r["normalizedText"] for r in reqs if r.get("kind") == "acceptance" and r.get("normalizedText")]
|
||||||
|
constraints = [r["normalizedText"] for r in reqs if r.get("kind") == "constraint" and r.get("normalizedText")]
|
||||||
|
|
||||||
|
if accepts:
|
||||||
|
parts.append("accepts: " + "; ".join(accepts))
|
||||||
|
if constraints:
|
||||||
|
parts.append("constraints: " + "; ".join(constraints))
|
||||||
|
|
||||||
|
return " | ".join(parts)
|
||||||
|
|
||||||
|
|
||||||
|
def write_tsv(path: Path, rows: list[tuple[int, str]]) -> None:
|
||||||
|
path.parent.mkdir(parents=True, exist_ok=True)
|
||||||
|
with path.open("w", encoding="utf-8") as fh:
|
||||||
|
for label, text in rows:
|
||||||
|
fh.write(f"{label}\t0\t{text}\n")
|
||||||
|
|
||||||
|
|
||||||
|
def label_summary(rows: list[tuple[int, str]]) -> dict:
|
||||||
|
pos = sum(1 for label, _ in rows if label == 1)
|
||||||
|
neg = len(rows) - pos
|
||||||
|
return {"total": len(rows), "pos": pos, "neg": neg, "pos_pct": round(pos / len(rows) * 100, 1)}
|
||||||
|
|
||||||
|
|
||||||
|
def parse_args() -> argparse.Namespace:
|
||||||
|
parser = argparse.ArgumentParser(description=__doc__)
|
||||||
|
parser.add_argument(
|
||||||
|
"--input",
|
||||||
|
default="semantic/prereq_op_dataset_1000/accepted.ndjson",
|
||||||
|
help="Accepted prereq_op rows in NDJSON format.",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--output-dir",
|
||||||
|
default="semantic/prereq_op_tsv",
|
||||||
|
help="Directory for output TSV files.",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--eval-frac",
|
||||||
|
type=float,
|
||||||
|
default=0.15,
|
||||||
|
help="Fraction of rows to use for eval (default: 0.15).",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--seed",
|
||||||
|
type=int,
|
||||||
|
default=42,
|
||||||
|
help="Random seed for train/eval split.",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--max-rows",
|
||||||
|
type=int,
|
||||||
|
default=0,
|
||||||
|
help="Optional cap on input rows (0 = no limit).",
|
||||||
|
)
|
||||||
|
return parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> int:
|
||||||
|
args = parse_args()
|
||||||
|
input_path = Path(args.input)
|
||||||
|
if not input_path.is_absolute():
|
||||||
|
input_path = (REPO_ROOT / input_path).resolve()
|
||||||
|
output_dir = Path(args.output_dir)
|
||||||
|
if not output_dir.is_absolute():
|
||||||
|
output_dir = (REPO_ROOT / output_dir).resolve()
|
||||||
|
|
||||||
|
rows: list[dict] = []
|
||||||
|
with input_path.open("r", encoding="utf-8") as fh:
|
||||||
|
for line in fh:
|
||||||
|
line = line.strip()
|
||||||
|
if not line:
|
||||||
|
continue
|
||||||
|
rows.append(json.loads(line))
|
||||||
|
if args.max_rows and len(rows) >= args.max_rows:
|
||||||
|
break
|
||||||
|
|
||||||
|
rng = random.Random(args.seed)
|
||||||
|
rng.shuffle(rows)
|
||||||
|
|
||||||
|
n_eval = max(1, int(len(rows) * args.eval_frac))
|
||||||
|
eval_rows = rows[:n_eval]
|
||||||
|
train_rows = rows[n_eval:]
|
||||||
|
|
||||||
|
def to_binary(split: list[dict], key: str) -> list[tuple[int, str]]:
|
||||||
|
result = []
|
||||||
|
for row in split:
|
||||||
|
label_val = row["decision_label"].get(key, False)
|
||||||
|
text = compose_text(row["decision_context"])
|
||||||
|
if not text:
|
||||||
|
continue
|
||||||
|
result.append((1 if label_val else 0, text))
|
||||||
|
return result
|
||||||
|
|
||||||
|
resolve_train = to_binary(train_rows, "needs_resolve_dependencies")
|
||||||
|
resolve_eval = to_binary(eval_rows, "needs_resolve_dependencies")
|
||||||
|
architect_train = to_binary(train_rows, "needs_architect_review")
|
||||||
|
architect_eval = to_binary(eval_rows, "needs_architect_review")
|
||||||
|
|
||||||
|
write_tsv(output_dir / "prereq_resolve_train.tsv", resolve_train)
|
||||||
|
write_tsv(output_dir / "prereq_resolve_eval.tsv", resolve_eval)
|
||||||
|
write_tsv(output_dir / "prereq_architect_train.tsv", architect_train)
|
||||||
|
write_tsv(output_dir / "prereq_architect_eval.tsv", architect_eval)
|
||||||
|
|
||||||
|
summary = {
|
||||||
|
"input": str(input_path),
|
||||||
|
"output_dir": str(output_dir),
|
||||||
|
"total_rows": len(rows),
|
||||||
|
"train_rows": len(train_rows),
|
||||||
|
"eval_rows": len(eval_rows),
|
||||||
|
"needs_resolve_dependencies": {
|
||||||
|
"train": label_summary(resolve_train),
|
||||||
|
"eval": label_summary(resolve_eval),
|
||||||
|
},
|
||||||
|
"needs_architect_review": {
|
||||||
|
"train": label_summary(architect_train),
|
||||||
|
"eval": label_summary(architect_eval),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
print(json.dumps(summary, indent=2, sort_keys=True))
|
||||||
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
raise SystemExit(main())
|
||||||
117
tools/split_prereq_op_dataset.py
Normal file
117
tools/split_prereq_op_dataset.py
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Split extracted gate rows into prereq_op_selector accepted / rejected / schema-drift buckets.
|
||||||
|
|
||||||
|
Reads an NDJSON file of extracted gate rows (from extract_gate_rows.py) and
|
||||||
|
produces three output files covering only prereq_op_selector rows:
|
||||||
|
|
||||||
|
accepted.ndjson — rows with no rejection flags
|
||||||
|
rejected.ndjson — rows with any rejection flag
|
||||||
|
schema_drift.ndjson — subset of rejected rows where rejection is caused by
|
||||||
|
invalid_prerequisite_values (schema-drift label pollution)
|
||||||
|
|
||||||
|
Also prints a brief summary to stdout.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import json
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
SCHEMA_DRIFT_FLAG_PREFIX = "invalid_prerequisite_values"
|
||||||
|
|
||||||
|
|
||||||
|
def is_schema_drift(row: dict) -> bool:
|
||||||
|
return any(f.startswith(SCHEMA_DRIFT_FLAG_PREFIX) for f in row.get("rejection_flags", []))
|
||||||
|
|
||||||
|
|
||||||
|
def write_ndjson(path: Path, rows: list[dict]) -> None:
|
||||||
|
path.parent.mkdir(parents=True, exist_ok=True)
|
||||||
|
with path.open("w", encoding="utf-8") as fh:
|
||||||
|
for row in rows:
|
||||||
|
fh.write(json.dumps(row, sort_keys=True) + "\n")
|
||||||
|
|
||||||
|
|
||||||
|
def parse_args() -> argparse.Namespace:
|
||||||
|
parser = argparse.ArgumentParser(description=__doc__)
|
||||||
|
parser.add_argument(
|
||||||
|
"--input",
|
||||||
|
default="semantic/extracted_gate_rows_slice.ndjson",
|
||||||
|
help="NDJSON file produced by extract_gate_rows.py.",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--output-dir",
|
||||||
|
default="semantic/prereq_op_dataset",
|
||||||
|
help="Directory where accepted/rejected/schema_drift files are written.",
|
||||||
|
)
|
||||||
|
return parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> int:
|
||||||
|
args = parse_args()
|
||||||
|
repo_root = Path(__file__).resolve().parent.parent
|
||||||
|
input_path = Path(args.input)
|
||||||
|
if not input_path.is_absolute():
|
||||||
|
input_path = (repo_root / input_path).resolve()
|
||||||
|
output_dir = Path(args.output_dir)
|
||||||
|
if not output_dir.is_absolute():
|
||||||
|
output_dir = (repo_root / output_dir).resolve()
|
||||||
|
|
||||||
|
accepted: list[dict] = []
|
||||||
|
rejected: list[dict] = []
|
||||||
|
schema_drift: list[dict] = []
|
||||||
|
skipped = 0
|
||||||
|
|
||||||
|
with input_path.open("r", encoding="utf-8") as fh:
|
||||||
|
for line in fh:
|
||||||
|
line = line.strip()
|
||||||
|
if not line:
|
||||||
|
continue
|
||||||
|
row = json.loads(line)
|
||||||
|
if row.get("gate_id") != "prereq_op_selector":
|
||||||
|
skipped += 1
|
||||||
|
continue
|
||||||
|
flags = row.get("rejection_flags", [])
|
||||||
|
if not flags:
|
||||||
|
accepted.append(row)
|
||||||
|
else:
|
||||||
|
rejected.append(row)
|
||||||
|
if is_schema_drift(row):
|
||||||
|
schema_drift.append(row)
|
||||||
|
|
||||||
|
write_ndjson(output_dir / "accepted.ndjson", accepted)
|
||||||
|
write_ndjson(output_dir / "rejected.ndjson", rejected)
|
||||||
|
write_ndjson(output_dir / "schema_drift.ndjson", schema_drift)
|
||||||
|
|
||||||
|
# Flag breakdown across rejected rows
|
||||||
|
flag_counts: dict[str, int] = {}
|
||||||
|
for row in rejected:
|
||||||
|
for f in row.get("rejection_flags", []):
|
||||||
|
flag_counts[f] = flag_counts.get(f, 0) + 1
|
||||||
|
|
||||||
|
# Label distribution for accepted rows
|
||||||
|
label_counts: dict[str, int] = {
|
||||||
|
"needs_validate_intake": 0,
|
||||||
|
"needs_architect_review": 0,
|
||||||
|
"needs_resolve_dependencies": 0,
|
||||||
|
}
|
||||||
|
for row in accepted:
|
||||||
|
label = row.get("decision_label", {})
|
||||||
|
for key in label_counts:
|
||||||
|
if label.get(key):
|
||||||
|
label_counts[key] += 1
|
||||||
|
|
||||||
|
summary = {
|
||||||
|
"input": str(input_path),
|
||||||
|
"output_dir": str(output_dir),
|
||||||
|
"rows_accepted": len(accepted),
|
||||||
|
"rows_rejected": len(rejected),
|
||||||
|
"rows_schema_drift": len(schema_drift),
|
||||||
|
"rows_skipped_other_gates": skipped,
|
||||||
|
"rejection_flag_breakdown": flag_counts,
|
||||||
|
"accepted_label_distribution": label_counts,
|
||||||
|
}
|
||||||
|
print(json.dumps(summary, indent=2, sort_keys=True))
|
||||||
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
raise SystemExit(main())
|
||||||
Reference in New Issue
Block a user