diff --git a/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/artifacts/.gitkeep b/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/artifacts/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/item.md b/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/item.md new file mode 100644 index 00000000..e76077c5 --- /dev/null +++ b/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/item.md @@ -0,0 +1,80 @@ +--- +id: '20260608-014602-remove-non-goals-from-workflow-templates' +slug: 'remove-non-goals-from-workflow-templates' +title: 'Remove Non-goals from workflow templates' +status: 'open' +kind: 'task' +priority: 'P2' +labels: ['workflow', 'prompt', 'ticket', 'orchestration', 'cleanup'] +workflow_state: 'inprogress' +created_at: '2026-06-08T01:46:02Z' +updated_at: '2026-06-08T01:50:34Z' +assignee: null +legacy_ticket: null +queued_by: 'workspace-panel' +queued_at: '2026-06-08T01:48:07Z' +--- + +## Background + +Current workflow templates repeatedly ask for `Non-goals` or `Non-goals / constraints`: + +- `ticket-intake-workflow.md` asks `やらないことは何か。` +- Ticket draft templates include `Non-goals:`. +- IntentPacket templates include `Non-goals / constraints: 今回やらないこと、触ってはいけない場所。` +- Orchestrator evidence checks combine `Non-goals / invariants`. + +This wording encourages agents to fill a broad exclusion list with unrelated, obvious, or generic non-actions. It also mixes distinct concepts: + +- binding decisions / invariants; +- implementation latitude; +- scope/authority boundaries; +- escalation conditions; +- adjacent work that belongs to another Ticket. + +The result is noisy Tickets and intent packets where obvious unrelated exclusions obscure the actual implementation boundary. + +## Goal + +Remove `Non-goals` as a workflow section and simplify intent boundaries around two concepts: + +1. `Binding decisions / invariants` +2. `Implementation latitude` + +## Requirements + +- Remove `Non-goals` / `Non-goals / constraints` sections from workflow templates and intent packet examples. +- Remove broad prompts such as `やらないことは何か。` from Intake requirements gathering. +- Do not replace `Non-goals` with another broad optional exclusion bucket unless explicitly needed. +- Use `Binding decisions / invariants` for: + - explicit human/Orchestrator/Ticket decisions; + - authority/design boundaries; + - constraints the coder/reviewer must respect; + - places/concepts that must not be changed when they are truly relevant. +- Use `Implementation latitude` for: + - local tactics the coder may decide through investigation; + - file/helper/test organization flexibility; + - bounded uncertainty that reviewer can judge against intent and invariants. +- If adjacent excluded work must be mentioned, express it as a concrete binding decision or escalation condition rather than a generic `Non-goals` list. +- Update affected workflows: + - `.yoi/workflow/ticket-intake-workflow.md` + - `.yoi/workflow/ticket-orchestrator-routing.md` + - `.yoi/workflow/ticket-preflight-workflow.md` + - `.yoi/workflow/multi-agent-workflow.md` +- Update any prompt tests or role prompt guidance that expects `Non-goals` in intent packets. +- Keep reviewer guidance focused on recorded intent, binding decisions/invariants, implementation latitude, acceptance criteria, and explicit escalation conditions. + +## Non-requirements + +- Do not redesign the Ticket state machine in this ticket. +- Do not remove escalation conditions or validation sections. +- Do not remove the ability to state a concrete exclusion when it is genuinely a binding decision. + +## Acceptance criteria + +- Workflow templates no longer include a `Non-goals` / `Non-goals / constraints` section. +- IntentPacket examples use `Binding decisions / invariants` and `Implementation latitude` to express boundaries. +- Intake guidance no longer asks agents to enumerate generic `やらないこと`. +- Generated Tickets/intent packets are less likely to include unrelated obvious exclusions. +- Tests/docs/prompts that reference the old section are updated. +- `target/debug/yoi ticket doctor`, focused prompt/workflow tests if any, `cargo fmt --check`, and `git diff --check` pass. diff --git a/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/thread.md b/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/thread.md new file mode 100644 index 00000000..3d52e42b --- /dev/null +++ b/.yoi/tickets/open/20260608-014602-remove-non-goals-from-workflow-templates/thread.md @@ -0,0 +1,122 @@ + + +## Created + +Created by LocalTicketBackend create. + +--- + + + +## Decision + +Intake classification: this existing Ticket is sufficiently specified for Orchestrator routing. + +- readiness: implementation_ready +- needs_preflight: false +- risk_flags: [workflow-prompts] + +Rationale: the requested change is constrained to workflow/prompt wording and intent packet examples; it preserves escalation conditions, validation, concrete exclusions as binding decisions, and the Ticket state machine. No authority boundary, persistence, public API, security, or storage migration decision is left for a coder to make silently. + +--- + + + +## Intake summary + +Existing Ticket refined and classified as implementation_ready. Scope is removal of generic Non-goals/Non-goals constraints sections and broad non-goal prompts from workflow templates and intent packet examples, replacing boundary expression with Binding decisions / invariants plus Implementation latitude. Preserve escalation conditions, validation, concrete exclusions as binding decisions, and the Ticket state machine. needs_preflight=false; risk_flags=[workflow-prompts]. + +--- + + + +## State changed + +Intake complete: requirements, acceptance criteria, implementation boundaries, validation, and routing signals are sufficient for Orchestrator review/queueing. + +--- + + + +## State changed + +Ticket queued for Orchestrator routing. + + +--- + + + +## Decision + +Routing decision: implementation_ready + +Reason: +- Intake classified this Ticket as `implementation_ready`, `needs_preflight=false`; the requested change is scoped to workflow/prompt wording and intent packet examples. +- Requirements and acceptance criteria are observable: remove generic `Non-goals` / `Non-goals / constraints` workflow sections and broad `やらないことは何か。` prompts, while preserving concrete boundaries as `Binding decisions / invariants`, `Implementation latitude`, escalation conditions, and validation. +- The code/workflow search shows the active maintained workflow-template hits are concentrated in `.yoi/workflow/{ticket-intake-workflow.md,ticket-orchestrator-routing.md,ticket-preflight-workflow.md,multi-agent-workflow.md}`. Historic Ticket artifacts contain old wording and should not be rewritten. +- Remaining uncertainty is bounded text/test cleanup, not a design-boundary decision. + +Evidence checked: +- Ticket body and thread, including intake decision and queued event. +- Workspace state: current main workspace has only this new Ticket record uncommitted; runtime workspace identity bundle is in a separate worktree/re-review and should remain isolated. +- Code/workflow search for `Non-goals`, `Non-goals / constraints`, `Non-goals / invariants`, and `やらないことは何か。`. +- Ticket doctor: 0 errors. + +IntentPacket: + +Intent: +- Remove generic `Non-goals` workflow-template language and make workflow examples express boundaries through concrete invariants and implementation latitude instead. + +Binding decisions / invariants: +- Do not rewrite historic closed/open Ticket threads or artifacts just because they contain old `Non-goals` text. +- Preserve the ability to state a concrete exclusion when it is genuinely a binding decision, invariant, authority boundary, or escalation condition. +- Preserve escalation conditions, validation sections, reviewer guidance, and the Ticket workflow/state model. +- Maintained workflow templates should avoid broad optional exclusion buckets that invite generic unrelated lists. + +Requirements / acceptance criteria: +- Remove `Non-goals` / `Non-goals / constraints` sections from maintained workflow templates and IntentPacket examples. +- Remove Intake prompts such as `やらないことは何か。` that ask agents to enumerate generic non-goals. +- Replace relevant boundary examples with `Binding decisions / invariants` and `Implementation latitude` language. +- Keep reviewer guidance focused on recorded intent, binding decisions/invariants, implementation latitude, acceptance criteria, and explicit escalation conditions. +- Update prompt/workflow tests or role prompt guidance if any maintained test expects old section names. + +Implementation latitude: +- Coder may choose exact wording, section order, and whether a specific concrete exclusion is better expressed as an invariant or escalation condition. +- Coder may update adjacent maintained workflow-template wording where needed for consistency, but should avoid broad documentation churn. + +Escalate if: +- A workflow genuinely requires a separate broad exclusion bucket after rewriting. +- Removing old wording would obscure a real authority boundary rather than clarify it. +- Required updates extend beyond maintained workflow/prompt templates into historic Ticket artifacts or unrelated docs. + +Validation: +- Search maintained workflows/prompts for old generic section names and broad `やらないこと` prompt. +- Run focused prompt/workflow tests if present. +- `target/debug/yoi ticket doctor` or `cargo run -q -p yoi -- ticket doctor`. +- `cargo fmt --check` only if Rust/test code changes. +- `git diff --check`. +- `nix build .#yoi` is required if runtime resources/prompts packaged into the product are changed; if only `.yoi/workflow` project records change, explain why Nix build was omitted. + +Current code map: +- `.yoi/workflow/ticket-intake-workflow.md` +- `.yoi/workflow/ticket-orchestrator-routing.md` +- `.yoi/workflow/ticket-preflight-workflow.md` +- `.yoi/workflow/multi-agent-workflow.md` +- Search broader maintained prompt/test paths for old labels before reporting. + +Critical risks / reviewer focus: +- Do not simply rename `Non-goals` to another generic exclusion bucket. +- Do not remove concrete authority boundaries or escalation conditions. +- Do not edit historical Ticket records as part of cleanup. +- Ensure workflow examples still give coder/reviewer enough boundary information. + +--- + + + +## State changed + +Accepted queued implementation after reading the Ticket, workspace state, and maintained workflow-template hits. This acceptance precedes worktree creation and coder/reviewer Pod spawning. + +---