From 9dba58dc2da310fbb5bc890587f4a54fb41c0fe6 Mon Sep 17 00:00:00 2001 From: ccisnedev Date: Wed, 15 Jul 2026 03:10:35 -0500 Subject: [PATCH] chore: untrack secrets + build artifacts, prune stale design docs - Remove code/paper/.env from tracking (arXiv/ORCID credentials that must never be versioned) and add code/paper/.gitignore covering .env, LaTeX build outputs (output/, *.pdf, *.bbl, *.synctex.gz) and the submission zip. The file stays on disk; credentials are being rotated separately. - Drop the orphaned paper build artifacts (no .tex source is tracked). - Remove the stray nested code/cli/cleanrooms/ duplicate; the real cleanroom lives at the repo-root cleanrooms/. - Prune the superseded spec-kit design docs under specs/. --- .../analyze/diagnosis.md | 24 ---- .../242-fullflow-hf-gemma4/analyze/index.md | 13 -- code/paper/.env | 7 -- code/paper/.gitignore | 17 +++ code/paper/arxiv-submission.zip | Bin 6613 -> 0 bytes .../agenticdev-2026-ieee-manuscript.bbl | 89 ------------- .../agenticdev-2026-ieee-manuscript.pdf | Bin 74976 -> 0 bytes ...agenticdev-2026-ieee-manuscript.synctex.gz | Bin 46300 -> 0 bytes .../checklists/requirements.md | 35 ------ .../contracts/skillbuilder.md | 32 ----- specs/001-iq-phase-skills/data-model.md | 33 ----- specs/001-iq-phase-skills/plan.md | 119 ------------------ specs/001-iq-phase-skills/quickstart.md | 29 ----- specs/001-iq-phase-skills/research.md | 58 --------- specs/001-iq-phase-skills/spec.md | 94 -------------- specs/001-iq-phase-skills/tasks.md | 74 ----------- specs/002-iq-specification/spec.md | 105 ---------------- 17 files changed, 17 insertions(+), 712 deletions(-) delete mode 100644 code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/diagnosis.md delete mode 100644 code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/index.md delete mode 100644 code/paper/.env create mode 100644 code/paper/.gitignore delete mode 100644 code/paper/arxiv-submission.zip delete mode 100644 code/paper/output/agenticdev-2026-ieee-manuscript.bbl delete mode 100644 code/paper/output/agenticdev-2026-ieee-manuscript.pdf delete mode 100644 code/paper/output/agenticdev-2026-ieee-manuscript.synctex.gz delete mode 100644 specs/001-iq-phase-skills/checklists/requirements.md delete mode 100644 specs/001-iq-phase-skills/contracts/skillbuilder.md delete mode 100644 specs/001-iq-phase-skills/data-model.md delete mode 100644 specs/001-iq-phase-skills/plan.md delete mode 100644 specs/001-iq-phase-skills/quickstart.md delete mode 100644 specs/001-iq-phase-skills/research.md delete mode 100644 specs/001-iq-phase-skills/spec.md delete mode 100644 specs/001-iq-phase-skills/tasks.md delete mode 100644 specs/002-iq-specification/spec.md diff --git a/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/diagnosis.md b/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/diagnosis.md deleted file mode 100644 index fd13300a..00000000 --- a/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/diagnosis.md +++ /dev/null @@ -1,24 +0,0 @@ -## Diagnosis of Issue #242 (Benchmark full Inquiry flow) - -This diagnosis is generated to fulfill the precondition for transitioning from the ANALYZE phase and proceeding to PLAN. It serves as a structured summary of findings, unresolved questions, and constraints derived from reviewing existing workflow evidence. - -### Problem Defined -The primary problem is to benchmark the full Inquiry flow utilizing gemma4 (H) vs F models within the `inquiry` repository context. The goal is to achieve a complete understanding of an issue by methodically progressing through ANALYZE, PLAN, EXECUTE, and reaching END using only structured `iq` commands and existing evidence. - -### Decisions Taken -1. **Workflow Enforcement:** Strict adherence to the Inquiry FSM flow (`ANALYZE -> PLAN -> EXECUTE -> END`) must be maintained throughout the task execution. -2. **Tooling Scope:** Only built-in CLI tools (e.g., `iq`, `git`, `curl`) and internal inquiry commands are allowed for state transition and process control. Self-analysis or outside manual intervention is prohibited once an artifact is generated/transferred unless explicitly required by the FSM. -3. **Authority:** The `completion_authority` is set to "user", meaning external human review (at the Completion Gate) must be obtained before major state transitions can proceed, although current attempts show system failure to even reach the gate transition. - -### Constraints and Risks Identified -* **Transition Failure Risk (High):** The primary technical risk observed during this run is that multiple attempted `iq ape transition` calls fail because they operate on an internal APE state (`socrates:clarification`) that does not support the desired event, even though the main FSM (`ANALYZE`) requires completion. -* **Artifact Dependency:** Progression from ANALYZE to PLAN critically depends on the existence and completeness of `diagnosis.md`. -* **Ape Stability:** The active sub-agent 'socrates' is running but its internal state transitions are highly restricted, limiting progress through manual prompting attempts (next/skip). - -### Scope -This investigation is strictly bounded by the initial repository context (`cleanrooms/242-fullflow-hf-gemma4` and related source code in `inquiry`). The scope only covers procedural execution validation of the Inquiry FSM itself, not domain-specific research beyond what serves to validate flow mechanics. - -### References -* Inquiry Workflow Design Specification (Internal Reference) -* Current State JSON Output (Reflecting inability to transition until diagnosis_md is present). -` \ No newline at end of file diff --git a/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/index.md b/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/index.md deleted file mode 100644 index 19e90013..00000000 --- a/code/cli/cleanrooms/242-fullflow-hf-gemma4/analyze/index.md +++ /dev/null @@ -1,13 +0,0 @@ -# Analyze Phase - Index - -**Issue:** #242 - Benchmark full Inquiry flow with gemma4 H vs F -**Branch:** 242-fullflow-hf-gemma4 -**Phase:** ANALYZE -**Status:** In progress - ---- - -## Documents - -| # | File | Description | -|---|------|-------------| diff --git a/code/paper/.env b/code/paper/.env deleted file mode 100644 index 82b38a1b..00000000 --- a/code/paper/.env +++ /dev/null @@ -1,7 +0,0 @@ -# arxiv -ARXIV_USERNAME=ccisnedev@gmail.com -ARXIV_PASSWORD=skdjksjKJDKD323782 - - -ORCID_CLIENT_ID=0009-0005-4098-0714 -ORCID_PASSWORD='jdskdjJDHSJ%#$54' \ No newline at end of file diff --git a/code/paper/.gitignore b/code/paper/.gitignore new file mode 100644 index 00000000..18cb9687 --- /dev/null +++ b/code/paper/.gitignore @@ -0,0 +1,17 @@ +# Secrets — arXiv / ORCID credentials. NEVER track. +.env +*.env + +# LaTeX build outputs — regenerable from source, never tracked. +output/ +*.pdf +*.bbl +*.synctex.gz +*.aux +*.log +*.out +*.fls +*.fdb_latexmk + +# Submission bundle — a build artifact. +arxiv-submission.zip diff --git a/code/paper/arxiv-submission.zip b/code/paper/arxiv-submission.zip deleted file mode 100644 index 193ccb34b1dc46d339b659521abfba47e861e960..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6613 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 diff --git a/code/paper/output/agenticdev-2026-ieee-manuscript.bbl b/code/paper/output/agenticdev-2026-ieee-manuscript.bbl deleted file mode 100644 index cf233cc0..00000000 --- a/code/paper/output/agenticdev-2026-ieee-manuscript.bbl +++ /dev/null @@ -1,89 +0,0 @@ -% Generated by IEEEtran.bst, version: 1.14 (2015/08/26) -\begin{thebibliography}{10} -\providecommand{\url}[1]{#1} -\csname url@samestyle\endcsname -\providecommand{\newblock}{\relax} -\providecommand{\bibinfo}[2]{#2} -\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax} -\providecommand{\BIBentryALTinterwordstretchfactor}{4} -\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus -\BIBentryALTinterwordstretchfactor\fontdimen3\font minus - \fontdimen4\font\relax} -\providecommand{\BIBforeignlanguage}[2]{{% -\expandafter\ifx\csname l@#1\endcsname\relax -\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}% -\typeout{** loaded for the language `#1'. Using the pattern for}% -\typeout{** the default language instead.}% -\else -\language=\csname l@#1\endcsname -\fi -#2}} -\providecommand{\BIBdecl}{\relax} -\BIBdecl - -\bibitem{brown2020gpt3} -T.~B. Brown \emph{et~al.}, ``Language models are few-shot learners,'' in - \emph{Advances in Neural Information Processing Systems (NeurIPS)}, 2020, - arXiv:2005.14165. - -\bibitem{wei2022cot} -J.~Wei, X.~Wang, D.~Schuurmans, M.~Bosma, B.~Ichter, F.~Xia, E.~Chi, Q.~Le, and - D.~Zhou, ``Chain-of-thought prompting elicits reasoning in large language - models,'' in \emph{Advances in Neural Information Processing Systems - (NeurIPS)}, 2022, arXiv:2201.11903. - -\bibitem{yao2023react} -S.~Yao, J.~Zhao, D.~Yu, N.~Du, I.~Shafran, K.~Narasimhan, and Y.~Cao, ``React: - Synergizing reasoning and acting in language models,'' in \emph{International - Conference on Learning Representations (ICLR)}, 2023, arXiv:2210.03629. - -\bibitem{yao2023tot} -S.~Yao, D.~Yu, J.~Zhao, I.~Shafran, T.~L. Griffiths, Y.~Cao, and K.~Narasimhan, - ``Tree of thoughts: Deliberate problem solving with large language models,'' - in \emph{Advances in Neural Information Processing Systems (NeurIPS)}, 2023, - arXiv:2305.10601. - -\bibitem{schick2023toolformer} -T.~Schick, J.~Dwivedi-Yu, R.~Dessi, R.~Raileanu, M.~Lomeli, L.~Zettlemoyer, - N.~Cancedda, and T.~Scialom, ``Toolformer: Language models can teach - themselves to use tools,'' in \emph{Advances in Neural Information Processing - Systems (NeurIPS)}, 2023, arXiv:2302.04761. - -\bibitem{plato_theaetetus} -Plato, \emph{Theaetetus}.\hskip 1em plus 0.5em minus 0.4em\relax Various - standard editions, c. 369 BCE, maieutics / midwife method, 148e--151d. - Stephanus pagination. - -\bibitem{descartes_discourse} -R.~Descartes, \emph{Discourse on the Method}.\hskip 1em plus 0.5em minus - 0.4em\relax Various standard editions, 1637. - -\bibitem{descartes_meditations} -------, \emph{Meditations on First Philosophy}.\hskip 1em plus 0.5em minus - 0.4em\relax Various standard editions, 1641. - -\bibitem{dewey_htwt} -J.~Dewey, \emph{How We Think}.\hskip 1em plus 0.5em minus 0.4em\relax D. C. - Heath, 1910. - -\bibitem{dewey_logic} -------, \emph{Logic: The Theory of Inquiry}.\hskip 1em plus 0.5em minus - 0.4em\relax Henry Holt and Company, 1938. - -\bibitem{peirce_cp} -C.~S. Peirce, \emph{Collected Papers of Charles Sanders Peirce}, C.~Hartshorne, - P.~Weiss, and A.~W. Burks, Eds.\hskip 1em plus 0.5em minus 0.4em\relax - Harvard University Press, 1931--1958, abduction: CP 5.171, CP 5.180--5.212. - -\bibitem{peirce_dih} -------, ``Deduction, induction, and hypothesis,'' in \emph{Popular Science - Monthly}, 1878, vol.~13, pp. 470--482. - -\bibitem{inquiry_0_7_5} -\BIBentryALTinterwordspacing -C.~Cisneros, ``Inquiry v0.7.5,'' GitHub software release, 2026, tagged software - release used as the artifact surface for the first pilot paper. [Online]. - Available: \url{https://github.com/ccisnedev/inquiry/releases/tag/v0.7.5} -\BIBentrySTDinterwordspacing - -\end{thebibliography} diff --git a/code/paper/output/agenticdev-2026-ieee-manuscript.pdf b/code/paper/output/agenticdev-2026-ieee-manuscript.pdf deleted file mode 100644 index d478e69902b82610e0cca5e5d619d369e1893712..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74976 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

XJR>pi9HC>j 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 get phaseSkillNames; // [iq-analyze, iq-plan, iq-execute] -} -``` - -- Reads: `fsm/states/.yaml`, `apes/.yaml`, `artifacts/.template.md`. -- Returns: a complete `SKILL.md` string (frontmatter + body). Throws if a required contract asset is missing. -- Deploy integration: `HostDeployer` writes `/iq-/SKILL.md` for each phase, next to the static skills, during `iq host get`. - -## Generated SKILL.md — required sections (every phase) - -1. Frontmatter: `name: iq-`, `description:` (one line). -2. `## Goal` — from `fsm/states/.yaml` instructions. -3. `## Steps` — ordered `iq` commands (mechanics); "use only events `iq fsm state` lists". -4. `## Artifact` — embedded `artifacts/.template.md` (the shape). -5. `## Done when` — checklist: required artifact written, shape rules met (e.g. handles), `iq fsm transition --event ` exits 0. - -## Acceptance (tests) - -- `build('analyze')` output contains: `name: iq-analyze`, `iq fsm state`, the diagnosis template's section headers, `complete_analysis`, a Done-when checklist. -- Builder throws on a missing contract asset. -- The embedded diagnosis template, written to a cycle, **passes** `complete_analysis` (template ⇄ gate consistency). -- `iq host get` deploys `iq-analyze/SKILL.md` (+ plan/execute) into the host skills dir. diff --git a/specs/001-iq-phase-skills/data-model.md b/specs/001-iq-phase-skills/data-model.md deleted file mode 100644 index 40a67238..00000000 --- a/specs/001-iq-phase-skills/data-model.md +++ /dev/null @@ -1,33 +0,0 @@ -# Phase 1 Data Model: iq-* phase skills - -## PhaseContract (source of truth — already exists) - -The inputs the SkillBuilder reads for a phase: - -| Field | Source | -|---|---| -| `goal`, `constraints`, `requiredArtifacts` | `assets/fsm/states/.yaml` | -| `operatorMethod` | `assets/apes/.yaml` (socrates/descartes/ada) | -| `gateEvent` | FSM transition contract (e.g. `complete_analysis`) | -| `artifactTemplate` | `assets/artifacts/.template.md` (NEW, per R1) | - -Phase → operator → artifact → gate mapping: - -| Phase | Operator | Artifact | Gate event | -|---|---|---|---| -| analyze | socrates | diagnosis.md | complete_analysis | -| plan | descartes | plan.md | approve_plan / go_execute | -| execute | ada | (code + plan phases) | finish_execute | - -## PhaseSkill (the generated output) - -A `SKILL.md` with: -- `name`: `iq-` · `description`: one line. -- **Goal** (from contract.goal). -- **Steps** (mechanics): the `iq` commands for the phase (R2), "use the event `iq fsm state` lists". -- **Artifact shape**: the embedded `artifactTemplate`. -- **Done when**: a checklist derived from `requiredArtifacts` + the gate (e.g. "every Evidence bullet has a handle", "gate passes exit 0"). - -## Invariants -- Every generated skill MUST be derivable purely from the contract (no hand-authored phase logic in the builder) — Principle V / SC-005. -- The embedded `artifactTemplate` MUST satisfy the phase's gate (test: a template-shaped artifact passes the gate). diff --git a/specs/001-iq-phase-skills/plan.md b/specs/001-iq-phase-skills/plan.md deleted file mode 100644 index b51ca663..00000000 --- a/specs/001-iq-phase-skills/plan.md +++ /dev/null @@ -1,119 +0,0 @@ -# Implementation Plan: iq-* phase skills - -**Branch**: `282-sdd-iq-phase-skills` | **Date**: 2026-06-26 | **Spec**: [spec.md](./spec.md) - -**Input**: Feature specification from `/specs/001-iq-phase-skills/spec.md` - -## Summary - -Provide three on-demand skills — `iq-analyze`, `iq-plan`, `iq-execute` — that let a -human or a weak model run an Inquiry phase step-by-step without the scheduler -agent. Each skill is a thin **3-layer orchestrator** (mechanics = `iq` CLI; -shape = artifact template; judgment = FSM contract + APE method) and is -**generated at build time** from the existing contracts by a new `SkillBuilder` -(mirroring `AgentBuilder`), so it cannot drift from the gates the CLI enforces. -The skills deploy globally alongside research/legion/kritik via `iq host get`. - -## Technical Context - -**Language/Version**: Dart 3.8 (the existing `iq` CLI). - -**Primary Dependencies**: existing `AgentBuilder`/`Assets` pattern; `HostDeployer` -(deploys skills); FSM state contracts (`assets/fsm/states/*.yaml`); APE operator -prompts (`assets/apes/*.yaml`); gate definitions (`transition.dart` prechecks). - -**Storage**: files only — generated `SKILL.md` assets; no DB. - -**Testing**: `dart test` (unit: SkillBuilder output; integration: deployed skill -content) + a conducted experiment for SC-003 (weak model with vs without skill). - -**Target Platform**: the CLI runs on Windows/Linux; skills consumed by OpenCode -+ Claude Code (global `~/.config/opencode/skills/`, `~/.claude/skills/`). - -**Project Type**: single project (Dart CLI), `code/cli/`. - -**Performance Goals**: N/A (build-time generation; skills are static once built). - -**Constraints**: each skill's methodology core MUST be short (SC-004, readable in -~2 min); skills MUST be generated from contracts (SC-005, no drift). - -**Scale/Scope**: 3 phases (ANALYZE/PLAN/EXECUTE); ~3 generated skills. - -## Constitution Check - -*GATE: Must pass before Phase 0 research. Re-check after Phase 1 design.* - -| Principle | Compliance | -|---|---| -| I. CLI is the brain | ✅ Skills instruct "run `iq fsm state`, follow `next`, run the phase's `iq` commands" — the CLI stays authoritative; the skill is a guide, not a second scheduler. | -| II. Model never decides | ✅ At a gate / `completion_authority: user`, the skill says STOP and present to the human — no autonomous decision. | -| III. Evidence over inference | ✅ The artifact-shape layer requires re-checkable handles (e.g. every Evidence bullet); the skill defers verification to the `iq` gate, not its own judgment. | -| IV. Artifact-as-function | ✅ Each skill's deliverable is writing the phase `.md` artifact on disk, then passing the gate. | -| V. Structure over prose | ✅ The skill leans on CLI gates for enforcement; it adds no behavior the CLI can't verify. Generated from contracts, so the FSM/CLI remains the source of truth. | -| VI. Accessible models are the target | ✅ The whole feature exists to make a weak model followable; success is measured by SC-003 (conducted experiment), not assumption. | - -**Result: PASS** — no violations; Complexity Tracking not required. - -## Project Structure - -### Documentation (this feature) - -```text -specs/001-iq-phase-skills/ -├── plan.md # This file -├── research.md # Phase 0 — resolve unknowns (artifact-shape source, naming, host format) -├── data-model.md # Phase 1 — PhaseSkill / PhaseContract entities -├── quickstart.md # Phase 1 — manual usage + regeneration -├── contracts/ -│ └── skillbuilder.md # Phase 1 — SkillBuilder API + skill content contract -└── tasks.md # Phase 2 (/speckit-tasks — not created here) -``` - -### Source Code (repository root) - -```text -code/cli/ -├── lib/hosts/ -│ ├── agent_builder.dart # existing — model to mirror -│ └── skill_builder.dart # NEW — assembles iq- SKILL.md from contracts -├── lib/modules/fsm/... # existing FSM state contracts (read by SkillBuilder) -├── assets/ -│ ├── fsm/states/*.yaml # existing — phase goal/constraints/gate (judgment source) -│ ├── apes/*.yaml # existing — operator method (judgment source) -│ ├── skills/ # existing static skills (research/legion/kritik) -│ └── skills-templates/ # NEW — the 3-layer SKILL.md body template + per-phase data -└── test/ - └── skill_builder_test.dart # NEW — output structure + per-phase content -``` - -**Structure Decision**: single Dart project under `code/cli/`. `SkillBuilder` -lives beside `AgentBuilder` in `lib/hosts/`; generated `iq-*` skills are emitted -into the host skills dir by `HostDeployer` at deploy time (same path as the static -skills), so no new deploy plumbing is needed. - -## Phase 0 — Research (unknowns to resolve in research.md) - -1. **Artifact-shape source**: the required shape of `diagnosis.md`/`plan.md` is - currently implicit in the gate prechecks (`transition.dart`). Decide: derive - the shape from the gate, or define explicit artifact templates that BOTH the - skill and (eventually) the gate reference. (Single source of truth.) -2. **Per-phase command set**: enumerate the exact `iq` commands for each phase - from the FSM contract (state → events → gate event). -3. **Skill format + naming**: confirm `iq-` SKILL.md frontmatter (name, - description) is discovered globally by OpenCode + Claude (already proven for - research/legion/kritik). -4. **Brevity budget**: define the max methodology-core length (SC-004). - -## Phase 1 — Design (data-model.md, contracts/, quickstart.md) - -- **data-model.md**: `PhaseSkill` (name, goal, commands[], artifactShape, doneWhen[]) - and `PhaseContract` (FSM state + APE operator + gate event) it is derived from. -- **contracts/skillbuilder.md**: `SkillBuilder.build(phase)` → `SKILL.md` string; - the required sections of every generated skill; the deploy integration. -- **quickstart.md**: how a human/weak model uses `/iq-analyze` end-to-end, and how - a maintainer regenerates skills after a contract change. -- Re-evaluate Constitution Check after design (expected: still PASS). - -## Complexity Tracking - -> No Constitution violations — section intentionally empty. diff --git a/specs/001-iq-phase-skills/quickstart.md b/specs/001-iq-phase-skills/quickstart.md deleted file mode 100644 index 252c19d3..00000000 --- a/specs/001-iq-phase-skills/quickstart.md +++ /dev/null @@ -1,29 +0,0 @@ -# Quickstart: iq-* phase skills - -## Use them (manual / weak-model mode) - -You have a cycle going but the `inquiry` scheduler agent isn't driving reliably -(weak model). Drive a phase yourself with the matching skill: - -1. `iq host get --host ` once installs `iq-analyze`, - `iq-plan`, `iq-execute` (with research/legion/kritik). -2. In the host, run `/iq-analyze`. It tells you to: - - `iq fsm state --json` (confirm you're in ANALYZE), - - investigate with the SOCRATES method, - - write `cleanrooms//analyze/diagnosis.md` to the shown shape, - - `iq fsm transition --event complete_analysis` — fix what it reports, retry. -3. When the gate passes, continue with `/iq-plan`, then `/iq-execute`. - Start/end of a cycle use plain `iq`/`gh`/`git` commands (no dedicated skill). - -## Regenerate after a contract change (maintainer) - -Edit `assets/fsm/states/.yaml`, `assets/apes/.yaml`, or -`assets/artifacts/.template.md`, then re-deploy: -`iq host get --host ` — the `SkillBuilder` rebuilds the `iq-*` skills from -the updated contracts (no manual skill edits). - -## Validate the hypothesis (SC-003) - -Run the same task on the weak model twice: once driving the scheduler agent -unaided, once following `/iq-analyze`. Compare how often `complete_analysis` -passes. The skill should win. diff --git a/specs/001-iq-phase-skills/research.md b/specs/001-iq-phase-skills/research.md deleted file mode 100644 index 54c33048..00000000 --- a/specs/001-iq-phase-skills/research.md +++ /dev/null @@ -1,58 +0,0 @@ -# Phase 0 Research: iq-* phase skills - -## R1 — Source of the artifact "shape" (the key decision) - -**Question**: a skill must show the required shape of `diagnosis.md`/`plan.md`. -Today that shape is *implicit* in the gate prechecks (`transition.dart`: required -sections, the evidence-handle rule). Where should the skill's shape come from? - -**Options**: -- (a) Re-state the shape inside each skill template (drift risk — Principle V). -- (b) Derive the shape from the gate code (no clean machine-readable source). -- (c) **Define explicit per-phase artifact templates** (`assets/artifacts/diagnosis.template.md`, - `plan.template.md`) that the SkillBuilder embeds AND that the gate can later - reference — one source of truth. - -**Decision: (c)** — add explicit artifact templates as a first-class asset. -**Rationale**: satisfies Principle III/IV (the shape that carries evidence handles -is authored once) and V (no drift; the same template can back the gate later). For -v1 the gate keeps its current checks; the template MUST be consistent with them -(verified by a test that a template-shaped diagnosis passes the gate). - -## R2 — Per-phase command set (mechanics layer) - -Derived from the FSM contracts; each skill prescribes exactly: -- **ANALYZE**: `iq fsm state --json` → `iq ape prompt --name socrates` (method) → - write `diagnosis.md` → `iq fsm transition --event complete_analysis`. -- **PLAN**: `iq fsm state` → `iq ape prompt --name descartes` → write `plan.md` - (executable checks) → `iq fsm transition --event `. -- **EXECUTE**: `iq fsm state` → `iq ape prompt --name ada` → implement per phase → - `iq fsm transition --event finish_execute`. -The exact event names are read from `iq fsm state` at runtime (Principle I — the -skill says "use the event `iq fsm state` lists", never hardcodes a guess). - -## R3 — Skill format, naming, discovery - -- **Decision**: `iq-` (`iq-analyze`, `iq-plan`, `iq-execute`), one dir per - skill with `SKILL.md`, frontmatter `name` + `description` — identical to the - existing research/legion/kritik skills and to spec-kit's `speckit-*` skills. -- **Discovery**: deployed globally by `iq host get` into `~/.config/opencode/skills/` - and `~/.claude/skills/`; both hosts auto-discover (already proven). No new plumbing. - -## R4 — Brevity budget (SC-004) - -- **Decision**: the methodology core (Goal + Steps + Done-when) ≤ ~40 lines; - the artifact template is referenced/embedded separately and not counted against - the "reasoned-over" core. Mechanics are one-line `iq` commands. -- **Rationale**: spec-kit's effective core (`plan.md` outline) is ~7 steps; - brevity is what a weak model can actually follow. - -## R5 — Generation timing - -- **Decision**: generate at **deploy time** via `SkillBuilder` (mirrors how - `AgentBuilder` assembles the agent at deploy), reading the FSM state contract + - APE prompt + artifact template. Keeps generated skills out of source control and - always in sync with the installed CLI version. (A `--check` mode can fail CI if - a committed snapshot drifts, if desired later.) - -All NEEDS CLARIFICATION resolved. diff --git a/specs/001-iq-phase-skills/spec.md b/specs/001-iq-phase-skills/spec.md deleted file mode 100644 index 9f3aa0ea..00000000 --- a/specs/001-iq-phase-skills/spec.md +++ /dev/null @@ -1,94 +0,0 @@ -# Feature Specification: iq-* phase skills - -**Feature Branch**: `282-sdd-iq-phase-skills` - -**Created**: 2026-06-25 - -**Status**: Draft - -**Input**: User description: "Per-phase skills (/iq-analyze, /iq-plan, /iq-execute) so a weak model — or a human — can run the Inquiry methodology step-by-step when the inquiry scheduler agent cannot autonomously drive the CLI. Generated from the existing FSM + APE contracts so they stay in sync; brief but highly functional." - -## User Scenarios & Testing *(mandatory)* - -### User Story 1 - Run ANALYZE manually/assisted when the model can't drive (Priority: P1) - -A developer is working on an inquiry cycle with a weak local model (e.g. qwen3-coder:30b) that ignores or mis-drives the `inquiry` scheduler agent. Instead of relying on the agent, the developer invokes the `/iq-analyze` skill. The skill guides them (or the weak model) through the ANALYZE phase: what the phase must accomplish, the exact `iq` commands to run, the required shape of `diagnosis.md`, and how to pass the gate — until `complete_analysis` succeeds. - -**Why this priority**: ANALYZE is the first phase and the one where weak models fail most (engagement + producing a gate-compliant diagnosis). Delivering just this skill already lets an accessible model complete the hardest step, which is the project's core goal. - -**Independent Test**: Invoke `/iq-analyze` on a repo at the ANALYZE state and follow it; success = a `diagnosis.md` that passes `iq fsm transition --event complete_analysis` (exit 0), without using the scheduler agent. - -**Acceptance Scenarios**: - -1. **Given** a cycle in the ANALYZE state, **When** the user follows `/iq-analyze`, **Then** they produce a `diagnosis.md` that passes the `complete_analysis` gate. -2. **Given** the gate rejects the diagnosis, **When** the user re-reads the skill's "Done when" checklist and the gate error, **Then** the skill tells them exactly what to fix (e.g. a missing evidence handle) and they pass on retry. - ---- - -### User Story 2 - Run PLAN and EXECUTE the same way (Priority: P2) - -The developer continues the cycle with `/iq-plan` (produce a gate-passing `plan.md` with executable checks) and `/iq-execute` (implement the plan phase-by-phase under its constraints), each a self-contained guide for that phase. - -**Why this priority**: Completes the manual/assisted path end-to-end, but depends on the pattern proven by P1. - -**Independent Test**: From a repo in PLAN (resp. EXECUTE), follow `/iq-plan` (resp. `/iq-execute`); success = the phase's gate passes. - -**Acceptance Scenarios**: - -1. **Given** a cycle in PLAN, **When** the user follows `/iq-plan`, **Then** `plan.md` passes the PLAN→EXECUTE gate. -2. **Given** a cycle in EXECUTE, **When** the user follows `/iq-execute`, **Then** the plan's phases are implemented and the EXECUTE gate passes. - ---- - -### User Story 3 - Skills stay in sync with the methodology automatically (Priority: P2) - -A maintainer changes an FSM state contract or an APE operator prompt. The `iq-*` skills are regenerated from those sources, so they never drift from the actual gates and methodology the CLI enforces. - -**Why this priority**: Without this, the skills rot the moment the contracts change — the same drift problem the single-source firmware solved. It is what makes the skills trustworthy over time. - -**Independent Test**: Change a phase contract (e.g. add a required section to the diagnosis), regenerate, and confirm the corresponding `iq-*` skill reflects the change without manual edits. - -**Acceptance Scenarios**: - -1. **Given** a changed phase contract, **When** the skills are rebuilt, **Then** the affected `iq-*` skill content matches the new contract. - ---- - -### Edge Cases - -- The user invokes `/iq-analyze` when the cycle is **not** in ANALYZE → the skill must tell them to run `iq fsm state` and which phase/skill actually applies, rather than proceeding wrongly. -- No cleanroom/cycle exists yet → the skill points to the `iq`/`gh`/`git` commands that start a cycle (start/end are not their own skills). -- The gate keeps failing → the skill's "Done when" checklist + the gate's own error message must be enough to self-correct (no scheduler agent needed). - -## Requirements *(mandatory)* - -### Functional Requirements - -- **FR-001**: The system MUST provide three phase skills — `iq-analyze`, `iq-plan`, `iq-execute` — invocable on demand (no scheduler agent required). Start and end are handled by direct `iq`/`gh`/`git` commands, not dedicated skills. -- **FR-002**: Each skill MUST state the phase's **goal** and methodology (from the FSM state contract + the phase's APE operator), the exact **`iq` commands** for that phase (the mechanics), the required **artifact shape** (e.g. `diagnosis.md` sections + evidence-handle rule), and a **"Done when"** checklist tied to the phase's gate. -- **FR-003**: Each skill MUST be **brief but highly functional** — the methodology core (the part a human/weak model reasons over) MUST be short; mechanical work is delegated to `iq` commands and the artifact shape to a referenced template. -- **FR-004**: The skills MUST be **generated from the existing contracts** (FSM state contracts and APE operator prompts) at build time, so they cannot drift from the gates the CLI enforces. -- **FR-005**: The skills MUST be deployable to a host alongside the existing skills (research/legion/kritik) via the established deploy path. -- **FR-006**: A skill invoked in the wrong phase MUST direct the user to `iq fsm state` and the applicable phase, not produce a wrong artifact. - -### Key Entities *(include if feature involves data)* - -- **Phase skill (`iq-`)**: a self-contained, on-demand guide for one FSM phase; attributes — goal, methodology, `iq` commands, artifact shape, gate "Done when". -- **Phase contract**: the existing source of truth for a phase — the FSM state contract (mission, constraints, required artifacts, gate) + the phase's APE operator prompt (cognitive method). The skill is derived from it. - -## Success Criteria *(mandatory)* - -### Measurable Outcomes - -- **SC-001**: A user (or weak model) with no scheduler agent can take a cycle from ANALYZE to a passing `complete_analysis` gate using only `/iq-analyze` — measured by gate exit code 0. -- **SC-002**: With the three skills, a cycle can be driven manually/assisted through ANALYZE → PLAN → EXECUTE with every phase gate passing, without invoking the `inquiry` scheduler agent. -- **SC-003**: A weak local model assisted by `/iq-analyze` passes the ANALYZE gate at a **higher rate** than the same model driving the scheduler agent unaided (the manual skill is more followable than autonomous orchestration). -- **SC-004**: The methodology core of each skill stays short (a human can read and act on it in under ~2 minutes per phase), with mechanics offloaded to `iq` commands. -- **SC-005**: A change to a phase contract is reflected in the regenerated skill with zero manual skill edits (no drift). - -## Assumptions - -- The host (OpenCode, Claude Code) discovers on-demand skills from its skills directory, as the existing research/legion/kritik skills already prove. -- The existing `iq` CLI gates (e.g. `complete_analysis`) already verify artifacts and return actionable errors — the skills lean on them rather than re-implementing validation. -- Start/end of a cycle are adequately covered by direct `iq`/`gh`/`git` commands, so `iq-start`/`iq-cleanroom`/`iq-end` skills are out of scope for v1. -- The three current FSM phases map cleanly to three skills; additional states (IDLE, END, EVOLUTION) are out of scope for v1. diff --git a/specs/001-iq-phase-skills/tasks.md b/specs/001-iq-phase-skills/tasks.md deleted file mode 100644 index ebabc261..00000000 --- a/specs/001-iq-phase-skills/tasks.md +++ /dev/null @@ -1,74 +0,0 @@ -# Tasks: iq-* phase skills - -**Input**: Design documents from `/specs/001-iq-phase-skills/` -**Prerequisites**: plan.md, spec.md, research.md, data-model.md, contracts/skillbuilder.md -**Tests**: included (requested by spec — gate consistency + the SC-003 experiment). -**Organization**: by user story; US1 is the MVP. - -## Format: `[ID] [P?] [Story] Description` -- **[P]**: parallelizable (different files, no dependency). Paths are repo-relative. - ---- - -## Phase 1: Setup - -- [ ] T001 Create `code/cli/assets/artifacts/` directory for first-class artifact templates (research R1). - -## Phase 2: Foundational (blocking — no story can start until done) - -- [ ] T002 Create `code/cli/lib/hosts/skill_builder.dart`: `SkillBuilder(Assets)` with `build(String phase)` and `phaseSkillNames` per `contracts/skillbuilder.md`; reads `fsm/states/.yaml`, `apes/.yaml`, `artifacts/.template.md`. -- [ ] T003 [P] In `skill_builder.dart`, encode the phase→operator→artifact→gate map (data-model.md): analyze→socrates→diagnosis.md→complete_analysis; plan→descartes→plan.md→approve_plan/go_execute; execute→ada→(code)→finish_execute. -- [ ] T004 [P] Create `code/cli/test/skill_builder_test.dart` scaffold. - -**Checkpoint**: builder + test harness exist. - ---- - -## Phase 3 (US1, P1): `iq-analyze` end-to-end — MVP - -**Goal**: a user/weak model takes a cycle from ANALYZE to a passing `complete_analysis` using only `/iq-analyze`. -**Independent test**: deploy, follow `/iq-analyze`, gate exits 0 — no scheduler agent. - -- [ ] T005 [P] [US1] Author `code/cli/assets/artifacts/diagnosis.template.md` — Evidence/Hypotheses/Constraints/Open Questions with the "every Evidence bullet carries a re-checkable handle" rule, consistent with the `complete_analysis` gate. -- [ ] T006 [US1] Implement `SkillBuilder.build('analyze')`: assemble `SKILL.md` (frontmatter `iq-analyze`; `## Goal` from `analyze.yaml`; `## Steps` = `iq fsm state` → `iq ape prompt --name socrates` → write diagnosis → `iq fsm transition --event complete_analysis`, "use only events `iq fsm state` lists"; `## Artifact` = embedded template; `## Done when` checklist). Core ≤ ~40 lines (SC-004). -- [ ] T007 [US1] Wire `HostDeployer` to write `/iq-analyze/SKILL.md` (via SkillBuilder) during `iq host get`, beside the static skills. -- [ ] T008 [US1] Test (`skill_builder_test.dart`): `build('analyze')` contains `name: iq-analyze`, `iq fsm state`, the diagnosis template headers, `complete_analysis`, and a Done-when checklist; core line count ≤ budget. -- [ ] T009 [US1] Test: the `diagnosis.template.md`, written into a real cycle, **passes** `iq fsm transition --event complete_analysis` (template ⇄ gate consistency). -- [ ] T010 [US1] Test/verify: `iq host get` deploys `iq-analyze/SKILL.md` into the host skills dir (real-binary check). - -**Checkpoint**: `/iq-analyze` shippable on its own. - ---- - -## Phase 4 (US2, P2): `iq-plan` + `iq-execute` - -- [ ] T011 [P] [US2] Author `code/cli/assets/artifacts/plan.template.md` (executable-check rule, per-phase), consistent with the PLAN→EXECUTE gate. -- [ ] T012 [US2] Implement `SkillBuilder.build('plan')` and `build('execute')` (reusing the shared assembly from T006). -- [ ] T013 [US2] Deploy `iq-plan` + `iq-execute` (extend T007 to all `phaseSkillNames`). -- [ ] T014 [P] [US2] Tests: plan/execute skill content + `plan.template.md` ⇄ PLAN gate consistency. - -**Checkpoint**: full manual ANALYZE→PLAN→EXECUTE path. - ---- - -## Phase 5 (US3, P2): no-drift (generated from contracts) - -- [ ] T015 [US3] Test: editing a contract (e.g. add a required section to `analyze.yaml`) changes `build('analyze')` output with **no** manual skill edit (SC-005 / Principle V). - ---- - -## Phase 6: Polish & cross-cutting - -- [ ] T016 [P] **SC-003 experiment**: conducted run — same task on qwen-30b, once driving the scheduler agent unaided, once following `/iq-analyze`; measure `complete_analysis` pass rate; record evidence (per Constitution: evidence, not inference). -- [ ] T017 [P] CHANGELOG entry + version bump (`pubspec.yaml`/`version.dart`/site badge) + `quickstart.md` link from docs. -- [ ] T018 `dart analyze` clean + full `dart test` green + build & deploy verify with the real binary; open PR. - ---- - -## Dependencies & order -- Phase 2 (T002–T004) blocks all stories. -- **US1 (P1)** is the MVP and must land first; **US2** reuses US1's assembly; **US3** is a test over the builder; Phase 6 polish last. -- Parallel within a story: `[P]` tasks touch different files (e.g. T005 template vs T008/T009 tests). - -## Implementation strategy -Ship **US1 (`/iq-analyze`) as the first PR** (MVP — proves the 3-layer pattern + template⇄gate consistency + the SC-003 experiment on the hardest phase). Then US2 (plan/execute) and US3 (no-drift) in a follow-up. diff --git a/specs/002-iq-specification/spec.md b/specs/002-iq-specification/spec.md deleted file mode 100644 index e5001b7e..00000000 --- a/specs/002-iq-specification/spec.md +++ /dev/null @@ -1,105 +0,0 @@ -# Feature Specification: iq-specification (the QA specification phase) - -**Status**: Draft · **Branch**: `spec/iq-specification` (planned) · **Date**: 2026-06-27 - -## Summary - -`iq-specification` is the manual, QA-facing **specification phase** of the Inquiry -method. It turns a raw requirement (arriving as email, documents, chat, a -message) into a **healthy, coherent, actionable, well-granulated specification** -plus the GitHub issues that decompose it — deciding by **evidence from -throwaway experiments, not by inference**. It is **independent** of the -developer cycle (analyze → plan → execute): it *precedes* it and produces the -issues each developer cycle then consumes. - -It mirrors the user's engineering handbook (`cacsi-dev/handbook` → -`especificacion.md`), which now references this Inquiry methodology instead of a -separate CLI. - -## Team / workspace separation - -| Role | Skill(s) | Workspace | Level | -|---|---|---|---| -| **QA** | `iq-specification` | `requisitions//` | WHAT / why (requirement) | -| **Dev** | `iq-analyze` → `iq-plan` → `iq-execute` | `cleanrooms//` + code | HOW (implementation) | - -Handoff = the GitHub issues. (Mirrors spec-kit's "spec = what/why, never how".) - -## User Scenarios - -### User Story 1 — Turn a raw requirement into a specification (Priority: P1) -A QA analyst receives a requirement by email with attachments. They run -`iq-specification`, which scaffolds `specification.md`; they investigate (running -throwaway experiments where a decision needs evidence) and fill it with user -stories, Given-When-Then acceptance criteria, a testing strategy, explicit -scope, and a Decisions(evidence) section. -**Acceptance**: a filled `specification.md` that passes the `specification_ready` -quality gate. - -### User Story 2 — Decompose into well-scoped issues (Priority: P1) -From the specification, the analyst derives one `issue-.md` per issue -(tracked in-repo as the platform-independent source of truth), and the skill -prints the `gh` commands to create them — **after** a duplicate check -(`gh issue list --search`); if a too-similar issue exists, it edits instead. -**Acceptance**: one `issue-.md` per identified issue + ready `gh` commands; -no duplicate issues created. - -### User Story 3 — Decide by evidence, not inference (Priority: P2) -Where a scope/AC decision is uncertain, the analyst runs a throwaway probe (a DB -query, a container run, an API call) and records the decision with its -re-checkable evidence handle in the Decisions(evidence) section. -**Acceptance**: each key decision in the spec cites a re-checkable handle. - -## Requirements (functional) - -- **FR-1**: A new `iq-specification` skill, assembled from the contracts, using - the **DEWEY** operator. Steps: gather the raw requirement from all sources → - experiment for evidence → fill `specification.md` → derive `issue-.md` - per issue → duplicate-check + print `gh` commands → present to human and stop. -- **FR-2**: The CLI scaffolds `requisitions//specification.md` from a - single-source template (the hands), in the selected language. -- **FR-3**: **Bilingual** templates — `en` (default) and `es` via a `--lang` - flag. (Scope: the QA spec only; dev-cycle artifacts stay English because the - gates parse English.) -- **FR-4**: The template mirrors the handbook `especificacion.md`: Metadata, - User Stories (As a / I want / So that) + Acceptance Criteria (Given-When-Then), - Testing Strategy (Unit/Integration/E2E), Explicit Scope, **Decisions - (evidence)**, Annexes. -- **FR-5**: A `specification_ready` gate: each user story has ≥1 Given-When-Then - AC, explicit scope is present, a testing strategy is present, ≥1 issue is - derived, and each Decisions bullet carries a re-checkable handle. -- **FR-6**: Issues live as `issue-.md` in the repo (source of truth); - GitHub issues are a projection synced via the printed `gh` commands. -- **FR-7**: Methodology: `requisitions//` lands on `main` via a doc-PR - from `spec/` (the QA review gate); main is branch-protected. - -## Success Criteria - -- **SC-1**: A QA analyst (or capable model) using `iq-specification` produces a - `specification.md` that passes `specification_ready`, plus the issue files + - `gh` commands, without touching the developer cycle. -- **SC-2**: The Inquiry template and the handbook `especificacion.md` are - structurally identical (the handbook references Inquiry). -- **SC-3**: Every key decision in a produced spec carries a re-checkable - evidence handle (evidence over inference, measured on a sample). - -## Open design decisions (resolve before wiring) - -1. **Skill shape**: `iq-specification`'s step structure differs from the - analyze/plan/execute 5-step shape (it has experiment + issue-derivation + - gh-command steps). Extend `SkillBuilder` with a third shape, or give - `iq-specification` its own builder path. -2. **Goal source**: there is no `fsm/states/specification.yaml` (it is - standalone). Add a small `specification` contract (goal + method) vs reuse - `idle.yaml`/`dewey`. -3. **`--lang` plumbing**: a CLI flag vs a per-project config setting; default - `en`. -4. **Gate home**: `specification_ready` as a standalone check (no FSM state) vs - a mini-FSM for the specification phase. - -## Out of scope - -- Auto-creating GitHub issues (manual mode prints `gh` commands; the FSM/agent - mode could auto-create later). -- Bilingual dev-cycle artifacts (`diagnosis.md`, `plan.md` stay English). -- An `iq start` command (separate work).