@ecology91/skills 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -156,7 +156,7 @@ Skills I use daily for code work.
156
156
  - **[tdd](./skills/engineering/tdd/SKILL.md)** — Test-driven development with a red-green-refactor loop. Builds features or fixes bugs one vertical slice at a time.
157
157
  - **[to-issues](./skills/engineering/to-issues/SKILL.md)** — Break any plan, spec, or PRD into independently-grabbable issues on the project issue tracker using vertical slices.
158
158
  - **[to-prd](./skills/engineering/to-prd/SKILL.md)** — Turn the current conversation context into a PRD and submit it to the project issue tracker. No interview — just synthesizes what you've already discussed.
159
- - **[to-qa](./skills/engineering/to-qa/SKILL.md)** — Create a local QA To Do session from completed child work under an explicit parent issue.
159
+ - **[to-qa](./skills/engineering/to-qa/SKILL.md)** — Create a local QA To Do session from completed source work under an explicit issue, including older non-parent Beads issues.
160
160
  - **[zoom-out](./skills/engineering/zoom-out/SKILL.md)** — Tell the agent to zoom out and give broader context or a higher-level perspective on an unfamiliar section of code.
161
161
  - **[prototype](./skills/engineering/prototype/SKILL.md)** — Build a throwaway prototype to flesh out a design — either a runnable terminal app for state/business-logic questions, or several radically different UI variations toggleable from one route.
162
162
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ecology91/skills",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "opencode agent skills for real engineering workflows.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -11,6 +11,6 @@ Skills I use daily for code work.
11
11
  - **[tdd](./tdd/SKILL.md)** — Test-driven development with a red-green-refactor loop. Builds features or fixes bugs one vertical slice at a time.
12
12
  - **[to-issues](./to-issues/SKILL.md)** — Break any plan, spec, or PRD into independently-grabbable issues on the project issue tracker using vertical slices.
13
13
  - **[to-prd](./to-prd/SKILL.md)** — Turn the current conversation context into a PRD and submit it to the project issue tracker.
14
- - **[to-qa](./to-qa/SKILL.md)** — Create a local QA To Do session from completed child work under an explicit parent issue.
14
+ - **[to-qa](./to-qa/SKILL.md)** — Create a local QA To Do session from completed source work under an explicit issue, including older non-parent Beads issues.
15
15
  - **[zoom-out](./zoom-out/SKILL.md)** — Tell the agent to zoom out and give broader context or a higher-level perspective on an unfamiliar section of code.
16
16
  - **[prototype](./prototype/SKILL.md)** — Build a throwaway prototype to flesh out a design — either a runnable terminal app for state/business-logic questions, or several radically different UI variations toggleable from one route.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: to-qa
3
- description: Create a local QA To Do session from completed child work under an explicit parent issue. Use when user runs `/to-qa <parent issue>` or asks to turn completed issue work into QA checks.
3
+ description: Create a local QA To Do session from completed work under an explicit source issue, including older non-parent Beads issues. Use when user runs `/to-qa <issue>` or asks to turn completed issue work into QA checks.
4
4
  compatibility: opencode
5
5
  metadata:
6
6
  workflow: sandcastle-ralph-qa
@@ -8,38 +8,85 @@ metadata:
8
8
 
9
9
  # To QA
10
10
 
11
- Use this skill when the user runs `/to-qa <parent issue>`.
11
+ Use this skill when the user runs `/to-qa <issue>`.
12
12
 
13
- The issue tracker workflow should have been provided to you run `/setup-agent-skills` if `docs/agents/issue-tracker.md` is missing or if it does not explain how to fetch completed child work for a parent issue.
13
+ For Beads, the issue can be a parent with child work, an older cumulative issue, a discovered-from source issue, or a completed standalone issue with no parent-child structure. For structured `.scratch`, the issue is normally a parent with child files.
14
14
 
15
- This skill reads from the configured issue tracker and writes to QA To Do. It does not mutate tracker issues.
15
+ This skill reads completed implementation work from the configured issue tracker and writes a local QA session to QA To Do. It does not mutate tracker issues, pass/fail state, checklist items, evidence, archive state, or deletion state.
16
16
 
17
17
  ## Required Inputs
18
18
 
19
- - An explicit parent issue reference from the user.
20
- - A configured issue tracker workflow in `docs/agents/issue-tracker.md`.
21
- - A parent/child issue relationship where completed child work can be identified.
22
- - Completed implementation work only.
23
- - `qa-to-do` MCP server access.
19
+ - An explicit source issue reference from the user.
20
+ - The current repository path.
21
+ - A configured issue tracker workflow in `docs/agents/issue-tracker.md`, or explicit source issue references from the user.
22
+ - Completed implementation source work only.
23
+ - Access to the `qa-to-do` MCP server.
24
+
25
+ ## Supported Paths
26
+
27
+ - Prefer `qa-to-do.run_to_qa_parent` for normal `/to-qa` usage.
28
+ - Use `qa-to-do.qa_session_create` only when you have manually built a complete, validated QA session payload.
29
+ - `run_to_qa_parent` currently automates Beads and structured `.scratch` trackers.
30
+ - The `parentIssueId` MCP field is legacy-named. For Beads, pass the requested source issue ID even when it is cumulative or standalone rather than a literal parent.
31
+ - For GitHub, GitLab, or custom trackers, use the repo-documented parent/child convention to gather completed child work, then call `qa_session_create` with a concrete QA session payload.
24
32
 
25
33
  ## Workflow
26
34
 
27
- 1. Inspect the explicit parent issue in the current repo.
28
- 2. Using `docs/agents/issue-tracker.md`, find completed source work only: closed/completed/done Beads child issues, structured `.scratch` child files, GitHub/GitLab child issues if the repo documents that convention, or another repo-documented completed-child convention.
29
- 3. Read commits, changed files, and implementation context only as needed to write concrete QA checks.
30
- 4. Create human-verifiable QA checks with title, runnable steps, expected result, source issue ID, source evidence, stable ID, and fingerprint.
31
- 5. Call the `qa-to-do` MCP server to create the QA session.
32
- 6. Report the session title, source parent, item count, and warnings.
35
+ 1. Inspect the explicit source issue in the current repo.
36
+ 2. Read `docs/agents/issue-tracker.md` to understand how this repo identifies completed source work.
37
+ 3. Find completed source work only: closed/completed/done Beads child issues, discovered-from issues, older cumulative or standalone Beads issues, structured `.scratch` child files, or another repo-documented convention.
38
+ 4. Exclude open, blocked, incomplete, or unrelated work and keep those exclusions as warnings for the final report.
39
+ 5. Prefer acceptance criteria, QA notes, and source issue evidence over changed-file inference when creating checks.
40
+ 6. Read commits, changed files, and implementation context only as needed to make checks concrete and human-verifiable.
41
+ 7. Create QA checks with title, runnable steps, expected result, source issue ID, source evidence, stable ID, and fingerprint.
42
+ 8. Call the `qa-to-do` MCP server to create the QA session.
43
+ 9. Report the session title, source issue, item count, and warnings.
44
+
45
+ ## MCP Usage
46
+
47
+ For Beads or structured `.scratch` repos, call `qa-to-do.run_to_qa_parent` with:
48
+
49
+ ```json
50
+ {
51
+ "parentIssueId": "<requested issue id>",
52
+ "repoPath": "<absolute repo path>",
53
+ "repoName": "<optional repo name>",
54
+ "tracker": "auto"
55
+ }
56
+ ```
57
+
58
+ Set `tracker` to `beads` or `scratch` only when the repo or user explicitly requires one. Use `auto` by default.
59
+
60
+ If `run_to_qa_parent` reports that no supported tracker was detected, multiple trackers require a choice, or no completed source work exists, stop and report the issue clearly. Do not invent QA checks from unrelated closed work. Do not fail only because a Beads issue has no parent-child children; older Beads issues may be cumulative or standalone.
61
+
62
+ When manually calling `qa_session_create`, the payload must include only completed source work and must preserve source evidence. Do not use it to mutate existing QA To Do state.
63
+
64
+ ## Beads Guidance
65
+
66
+ - If the repo uses Beads and local automation is available, prefer `run_to_qa_parent` with `tracker: "auto"` or `tracker: "beads"`.
67
+ - If you must inspect Beads manually, start with `bd show <issue-id> --json`, then fetch parent-child candidates with `bd list --parent <issue-id> --status all --json --limit 0` when the repo supports parent structure.
68
+ - If no parent-child children exist, fetch the full Beads issue set with `bd list --status all --json --limit 0`, look for completed `discovered-from` dependencies that point to the requested issue, then fall back to the requested issue itself when it is closed, completed, or done.
69
+ - Include only source issues whose status is closed, completed, or done according to the repo's Beads vocabulary.
70
+ - Read included source issues with `bd show <issue-id> --json` and `bd comments <issue-id> --json` when extra evidence is needed.
71
+ - Look for related implementation commits only when issue evidence is not enough to write a concrete QA check.
72
+ - Do not require parent-child relationships for Beads; older Sandcastle/RALPH Beads may be cumulative or standalone.
73
+ - Do not create, update, label, comment on, close, or claim Beads issues during `/to-qa`.
74
+
75
+ ## Scratch Guidance
76
+
77
+ - If the repo uses structured `.scratch` issues, prefer `run_to_qa_parent` with `tracker: "auto"` or `tracker: "scratch"`.
78
+ - Include only `.scratch` child files with frontmatter that identifies `id`, `title`, `status`, and the requested parent relationship.
79
+ - Prefer `## Acceptance notes` or `## Acceptance criteria` bullets for expected results.
80
+ - Do not create, edit, rename, move, close, or delete `.scratch` files during `/to-qa`.
33
81
 
34
82
  ## Rules
35
83
 
36
- - Do not create checks from open/incomplete child work; warn about excluded children.
84
+ - Do not create checks from open, blocked, incomplete, review-only, or unrelated work.
85
+ - Do not create checks from planning or PRD text alone; checks must trace to completed implementation source work.
37
86
  - If there is no completed source work, fail clearly and do not create a session.
38
- - If `docs/agents/issue-tracker.md` does not define how to find completed children for the parent issue, ask the user for explicit child issue references; do not infer from unrelated closed work.
39
- - For Beads, fetch children with `bd list --parent <parent-id> --status all --json --limit 0`, include only closed/completed/done children, read each child with `bd show <child-id> --json` and `bd comments <child-id> --json`, and look for related RALPH commits with `git log --grep="RALPH:.*<child-id>" --oneline`.
40
- - Create QA checks from acceptance criteria and QA notes before changed files. Do not create QA checks for parent PRDs, open children, blocked children, or review-only refactor commits unless they changed user-visible behavior.
87
+ - If `docs/agents/issue-tracker.md` does not explain how to find completed source work and Beads cumulative/standalone fallback does not apply, ask the user for explicit source issue references.
41
88
  - Do not write vague checks like "verify implementation" or "works as expected".
42
89
  - Do not mutate pass/fail/skip/edit/archive/delete state through MCP.
43
- - Do not file, close, or update tracker issues during `/to-qa`.
44
- - QA To Do owns checklist execution, evidence, pass/fail state, and archive.
45
- - No app-managed secrets are stored by this setup.
90
+ - Do not file, close, claim, label, comment on, or update tracker issues during `/to-qa`.
91
+ - QA To Do owns checklist execution, evidence, pass/fail state, edits, archive, and deletion.
92
+ - Do not store app-managed secrets; rely on user environment, existing provider config, or provider-native auth.