to-issues

GitHub

将硬化后的规格说明书拆解为可分发的追踪问题。遵循结构化优先原则,切割纵向切片以最大化并行度,明确接口契约并附带变更骨架。仅由架构师调度触发,不依赖描述发现。

skills/to-issues/SKILL.md DanMcInerney/architect-loop

Trigger Scenarios

硬化的规格说明书已就绪 由架构师子代理或编排器显式调度

Install

npx skills add DanMcInerney/architect-loop --skill to-issues -g -y
More Options

Use without installing

npx skills use DanMcInerney/architect-loop@to-issues

指定 Agent (Claude Code)

npx skills add DanMcInerney/architect-loop --skill to-issues -a claude-code -g -y

安装 repo 全部 skill

npx skills add DanMcInerney/architect-loop --all -g -y

预览 repo 内 skill

npx skills add DanMcInerney/architect-loop --list

SKILL.md

Frontmatter
{
    "name": "to-issues",
    "description": "Use when decomposing a hardened spec into tracker issues: cutting tracer-bullet vertical slices through every layer, ordering structural work first with blocking edges, maximizing the disjoint parallel frontier, publishing producer\/consumer interface contracts, and attaching a compact change-skeleton to each issue. Invoked only from an explicit architect dispatch — by the harden strategist subagent in `\/architect`, or directly by the orchestrator in `\/architect-fast` — after the spec is written; never left to description-trigger discovery."
}

To Issues

Turn the hardened spec into dispatch-ready issues under the tracking issue. The spec already settles the whole plan — this stage does not quiz the human; a hard stop or an oddity escalation is the only thing that opens a question here.

1. Read before you cut

Load the spec, then hold the codebase-design vocabulary (skills/codebase-design/SKILL.md) exactly: module, interface, implementation, seam, adapter, depth, leverage, locality for design; run, tracking issue, issue, slice, frozen check, check-runner, strategist, builder, orchestrator, factory branch, worktree, job report, verdict, ruling, digest, hard stop for the factory. Never substitute component/service/boundary/API for module/interface, or task/ticket for issue — that drift is a defect, not a style choice.

Look for prefactoring while you read: make the change easy, then make the easy change.

2. Structural before behavioral

Structural (prefactoring) issues land first, with blocking edges into the behavioral issues they unblock. A structural issue's checks prove existing behavior stays green — it changes shape, not outcome.

Oddity rule while scoping: a local wart gets a local patch note, not its own issue. A variation that recurs gets a structural issue blocking the behavioral one. One adapter is a hypothetical seam; two adapters make it real — write the structural issue. Three failed fixes on the same point means stop and escalate the design question instead of cutting a fourth fix.

3. Cut tracer-bullet vertical slices

Each issue is a tracer-bullet vertical slice: a narrow but complete path through every layer the change touches, demoable or verifiable on its own — never a horizontal slice of one layer.

Avoid specific file paths or code snippets in issue prose — they go stale fast. Exception: a prototype snippet that encodes a decision more precisely than prose can (state machine, schema, type shape); trim to the decision-rich parts.

4. Maximize the disjoint parallel frontier

Compute readiness from each issue's file-touch set, not only its blocking edges. Issues dispatched in the same wave share no files, migrations, lockfiles, generated artifacts, config, schemas, or other mutable runtime state. A shared-file collision is a decomposition failure — split or resequence; never hand-merge it later.

5. Interface contracts, not future-code citations

An issue that produces a surface another issue consumes publishes an interface contract block: names, parameters, return types, and behavior. Consumer issues cite that block; they never cite the producer's not-yet-written implementation.

6. Body shape

Every issue carries: acceptance criteria; MAY TOUCH / MUST NOT TOUCH file sets; its check path; its raw job-report path; blocked-by and parent edges; a compact change-skeleton (≤30 lines — files, signatures, data flow, invariants; a contract, not a line mandate). Close every issue body with the run marker comment: <!-- architect-run: <run> -->.

7. Draft in publish order; the orchestrator publishes

Write one draft file per issue at docs/runs/<run>/issues/<NN>-<slice>.md (a local run artifact), NN numbered in publish order: structural issues first, blockers before the issues that cite them. Name blocked-by and parent edges by slice name — real issue numbers do not exist yet; the orchestrator maps slice names to issue numbers as it publishes in NN order, so every blocked-by resolves to a real, already-open issue and never a forward reference. Do not post to the tracker yourself — publishing sub-issues, edges, and claims are orchestrator actions (skills/architect/dispatch.md ## Issue conventions). When the orchestrator runs this skill directly (/architect-fast), it publishes the drafts itself in the same order.

Done when every slice in the plan has a draft file — structural-first, frontier-maxed — whose order publishes with no forward references. End your reply with one line: ISSUE DRAFTS: <count> at docs/runs/<run>/issues/.

Version History

  • 164d32c Current 2026-07-19 18:15

Same Skill Collection

skills/adversarial-review/SKILL.md
skills/architect-fast/SKILL.md
skills/architect-research/SKILL.md
skills/architect/SKILL.md
skills/codebase-design/SKILL.md
skills/frozen-checks/SKILL.md
skills/integrate/SKILL.md
skills/tdd/SKILL.md
skills/to-spec/SKILL.md
skills/final-review/SKILL.md

Metadata

Files
0
Version
164d32c
Hash
be315a92
Indexed
2026-07-19 18:15

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-29 16:08
浙ICP备14020137号-1 $お客様$