@haaaiawd/anws 2.4.0 → 2.4.1
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 +1 -1
- package/bin/cli.js +2 -2
- package/lib/manifest.js +4 -16
- package/package.json +1 -1
- package/templates/.agents/skills/anws-system/SKILL.md +5 -3
- package/templates/.agents/skills/code-reviewer/SKILL.md +6 -5
- package/templates/.agents/skills/concept-modeler/SKILL.md +6 -6
- package/templates/.agents/skills/craft-authoring/SKILL.md +1 -1
- package/templates/.agents/skills/craft-authoring/references/BUNDLE_POLICY.md +13 -32
- package/templates/.agents/skills/design-reviewer/SKILL.md +11 -11
- package/templates/.agents/skills/e2e-testing-guide/SKILL.md +3 -3
- package/templates/.agents/skills/nexus-mapper/SKILL.md +2 -2
- package/templates/.agents/skills/nexus-mapper/references/probe-protocol.md +1 -1
- package/templates/.agents/skills/nexus-query/SKILL.md +1 -1
- package/templates/.agents/skills/runtime-inspector/SKILL.md +150 -99
- package/templates/.agents/skills/spec-writer/SKILL.md +3 -3
- package/templates/.agents/skills/system-architect/SKILL.md +5 -5
- package/templates/.agents/skills/system-designer/SKILL.md +188 -601
- package/templates/.agents/skills/task-planner/references/TASK_TEMPLATE_05A.md +2 -2
- package/templates/.agents/skills/task-reviewer/SKILL.md +8 -13
- package/templates/.agents/skills/tech-evaluator/SKILL.md +19 -19
- package/templates/.agents/workflows/blueprint.md +5 -5
- package/templates/.agents/workflows/challenge.md +12 -18
- package/templates/.agents/workflows/change.md +8 -8
- package/templates/.agents/workflows/craft.md +9 -9
- package/templates/.agents/workflows/design-system.md +6 -6
- package/templates/.agents/workflows/explore.md +4 -4
- package/templates/.agents/workflows/forge.md +9 -9
- package/templates/.agents/workflows/genesis.md +9 -10
- package/templates/.agents/workflows/probe.md +6 -9
- package/templates/.agents/workflows/quickstart.md +9 -7
- package/templates/.agents/workflows/upgrade.md +9 -9
- package/templates_en/.agents/skills/anws-system/SKILL.md +5 -3
- package/templates_en/.agents/skills/code-reviewer/SKILL.md +6 -5
- package/templates_en/.agents/skills/concept-modeler/SKILL.md +6 -6
- package/templates_en/.agents/skills/craft-authoring/SKILL.md +1 -1
- package/templates_en/.agents/skills/craft-authoring/references/BUNDLE_POLICY.md +12 -30
- package/templates_en/.agents/skills/design-reviewer/SKILL.md +9 -10
- package/templates_en/.agents/skills/e2e-testing-guide/SKILL.md +3 -3
- package/templates_en/.agents/skills/nexus-mapper/SKILL.md +2 -2
- package/templates_en/.agents/skills/nexus-mapper/references/probe-protocol.md +1 -1
- package/templates_en/.agents/skills/nexus-query/SKILL.md +1 -1
- package/templates_en/.agents/skills/runtime-inspector/SKILL.md +150 -101
- package/templates_en/.agents/skills/spec-writer/SKILL.md +3 -3
- package/templates_en/.agents/skills/system-architect/SKILL.md +5 -5
- package/templates_en/.agents/skills/system-designer/SKILL.md +188 -534
- package/templates_en/.agents/skills/task-reviewer/SKILL.md +4 -10
- package/templates_en/.agents/skills/tech-evaluator/SKILL.md +6 -6
- package/templates_en/.agents/workflows/blueprint.md +5 -5
- package/templates_en/.agents/workflows/challenge.md +7 -12
- package/templates_en/.agents/workflows/change.md +7 -7
- package/templates_en/.agents/workflows/craft.md +9 -9
- package/templates_en/.agents/workflows/design-system.md +6 -6
- package/templates_en/.agents/workflows/explore.md +4 -4
- package/templates_en/.agents/workflows/forge.md +9 -9
- package/templates_en/.agents/workflows/genesis.md +9 -10
- package/templates_en/.agents/workflows/probe.md +3 -7
- package/templates_en/.agents/workflows/quickstart.md +7 -5
- package/templates_en/.agents/workflows/upgrade.md +8 -8
- package/templates/.agents/skills/report-template/SKILL.md +0 -92
- package/templates/.agents/skills/report-template/references/REPORT_TEMPLATE.md +0 -100
- package/templates_en/.agents/skills/report-template/SKILL.md +0 -85
- package/templates_en/.agents/skills/report-template/references/REPORT_TEMPLATE.md +0 -100
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "
|
|
2
|
+
description: "/upgrade:anws update 后读 changelog、定级 Minor/Major、产人类可审计划并路由到 /change 或 /genesis;宿主不替下游落盘长模板。"
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /upgrade
|
|
5
|
+
# /upgrade
|
|
6
6
|
|
|
7
7
|
<phase_context>
|
|
8
|
-
你是 **UPGRADE ORCHESTRATOR
|
|
8
|
+
你是 **UPGRADE ORCHESTRATOR(升级编排师)**。
|
|
9
9
|
|
|
10
10
|
**使命**:在 **`anws update` 已完成**的前提下,读取 `.anws/changelog/` 最新记录,判断 **Minor / Major**,生成可审升级计划,并在人类批准后**路由**到 `/change` 或 `/genesis`(由目标工作流执行写盘)。
|
|
11
11
|
**能力**:定位 changelog 与当前 `v{N}`、定级、框架→业务文档影响映射、路由建议、推断段 WARNING 标记规范。
|
|
@@ -19,8 +19,8 @@ description: "【ALPHA】/upgrade:anws update 后读 changelog、定级 Minor/
|
|
|
19
19
|
## CRITICAL 凝练与版式(/craft + /challenge 思想)
|
|
20
20
|
|
|
21
21
|
> [!IMPORTANT]
|
|
22
|
-
> **craft**:改稿前 Read
|
|
23
|
-
> **凝练**:计划与汇报 **一句一事**;定级规则与执行序 **不得削弱**
|
|
22
|
+
> **craft**:改稿前 Read **`.agents/skills/craft-authoring/SKILL.md`** 与 **`.agents/workflows/craft.md`**;各 `## Step …` 使用 **`### 做什么` / `### 为什么` / `### 怎么验收`**;`<completion_criteria>` 必填。
|
|
23
|
+
> **凝练**:计划与汇报 **一句一事**;定级规则与执行序 **不得削弱** 本 workflow 所载硬约束。
|
|
24
24
|
> **不注入**:人类检查点展示**须含职能**(changelog 路径、当前 `v{N}`、定级、推荐路由、受影响文件+原因、推断风险提示、批准/拒绝/调整)——**不**粘贴整页 fenced 模板。
|
|
25
25
|
|
|
26
26
|
---
|
|
@@ -54,7 +54,7 @@ description: "【ALPHA】/upgrade:anws update 后读 changelog、定级 Minor/
|
|
|
54
54
|
|
|
55
55
|
### 做什么
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
按本 workflow **Minor / Major** 分级(**仅**此两档):评估是否需**新架构版本**、是否动目录/多工作流协议、`01`/`02`/`03` **结构语义**、是否需保留旧版兼容叙事。逐条记录**是/否+一句理由**。
|
|
58
58
|
|
|
59
59
|
### 为什么
|
|
60
60
|
|
|
@@ -105,9 +105,9 @@ upgrade 与执行工作流解耦,避免双写。
|
|
|
105
105
|
|
|
106
106
|
### 做什么
|
|
107
107
|
|
|
108
|
-
- **Minor**:读取宿主挂载的 **`/change`**
|
|
109
|
-
- **Major**:读取 **`/genesis
|
|
110
|
-
- 需 AI 补全且非纯机械替换的段落:段前加
|
|
108
|
+
- **Minor**:读取宿主挂载的 **`/change`** 工作流(**`.agents/workflows/change.md`**,与当前工作区同源),将 Step 2 映射作为输入;后续**全部**遵守 `/change` 权限与签名;若执行中发现超出 `/change` → 停止并改 `/genesis`。
|
|
109
|
+
- **Major**:读取 **`/genesis`**,将 Step 2 作为新版本演进输入;遵守 Copy & Evolve 与版本规则。
|
|
110
|
+
- 需 AI 补全且非纯机械替换的段落:段前加 **`> [!WARNING] AI 推断填充,请人类复核。`**
|
|
111
111
|
- **业务常量**(领域术语、产品目标、用户故事业务意图、团队约束、自定义边界)**禁止**被框架升级覆盖。
|
|
112
112
|
|
|
113
113
|
### 为什么
|
|
@@ -29,9 +29,11 @@ Use this skill when any of the following applies:
|
|
|
29
29
|
3. Then read corresponding workflow references as needed
|
|
30
30
|
4. Before finishing required references, do not directly execute write operations of that workflow
|
|
31
31
|
|
|
32
|
-
## Workflow Map
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
## Workflow Map
|
|
33
|
+
|
|
34
|
+
> `references/*.md` is generated by CLI projection for skills-only targets such as Codex / Trae; the canonical source remains `.agents/workflows/*.md`.
|
|
35
|
+
|
|
36
|
+
- `references/quickstart.md`
|
|
35
37
|
- Purpose: global entry. Determine current project stage and which workflow to call first
|
|
36
38
|
- `references/probe.md`
|
|
37
39
|
- Purpose: system risk probing before taking over legacy projects or major changes
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: code-reviewer
|
|
3
|
-
description:
|
|
3
|
+
description: Pure static "contract fidelity / implementation-side evidence" review: Against PRD, ADR, system design, 05A_TASKS, and 05B_VERIFICATION_PLAN, produce traceable conclusions on contract closure, task fulfillment, architecture health, security boundaries, verification evidence, and backflow consistency; shared by /challenge (CODE/FULL) and /forge (Step 3 §3.6 end-of-wave).
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Code Reviewer — Implementation-side evidence layer
|
|
6
|
+
# Code Reviewer — Implementation-side evidence layer
|
|
7
7
|
|
|
8
8
|
You are **CODE REVIEWER**. Your job is not a generic PR review or style grading, but to answer with purely static evidence: **whether the implementation faithfully fulfills commitments in PRD / ADR / System Design / 05A_TASKS / 05B_VERIFICATION_PLAN; if not, what the risks are and where the evidence is.**
|
|
9
9
|
|
|
10
10
|
## CRITICAL methodological anchors
|
|
11
11
|
|
|
12
12
|
- **Static-only is the boundary**: Only readable artifacts and code form are admitted; anything that depends on processes, networks, browsers, or real runtime ordering must be labeled **cannot be confirmed via static review** or **requires manual verification**, and must not be written as proven.
|
|
13
|
-
- **Contract over intuition**: Ordering and wording follow PRD / ADR / System Design / `05A_TASKS.md` / `05B_VERIFICATION_PLAN.md` / this round’s task description; preference-driven criticism without an anchor must not appear in strong conclusions.
|
|
14
|
-
- **Evidence tiers**: Assertions such as Critical / High / Fail / Pass must cite `**path:line**`; without a location, downgrade to “suspected” or “cannot confirm”; do not overstate certainty.
|
|
15
|
-
- **Root cause over stacking**: Merge similar issues into a fixable root cause; do not inflate severity by duplicate entries.
|
|
13
|
+
- **Contract over intuition**: Ordering and wording follow PRD / ADR / System Design / `05A_TASKS.md` / `05B_VERIFICATION_PLAN.md` / this round’s task description; preference-driven criticism without an anchor must not appear in strong conclusions.
|
|
14
|
+
- **Evidence tiers**: Assertions such as Critical / High / Fail / Pass must cite `**path:line**`; without a location, downgrade to “suspected” or “cannot confirm”; do not overstate certainty.
|
|
15
|
+
- **Root cause over stacking**: Merge similar issues into a fixable root cause; do not inflate severity by duplicate entries.
|
|
16
|
+
- **Shared report contract**: persisted reports, single-writer rules, subagent handoff, and de-duplication follow `.agents/skills/output-contract/SKILL.md`.
|
|
16
17
|
|
|
17
18
|
## Hard boundaries (must follow)
|
|
18
19
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: concept-modeler
|
|
3
|
-
description:
|
|
3
|
+
description: Use when user needs are vague or terminology is unclear. Clarifies domain concepts through interactive follow-up questions, extracting entities, flows, and dark matter (missing_components). Invoked by **`/genesis` Step 1** after Step 0 has set `TARGET_DIR = .anws/v{N}`; use with **`/genesis`** in the same workspace.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Domain Modeler
|
|
6
|
+
# Domain Modeler
|
|
7
7
|
|
|
8
8
|
> "If you cannot describe it clearly, you cannot build it." — Eric Evans
|
|
9
9
|
|
|
@@ -16,7 +16,7 @@ You are the **DOMAIN MODELER**.
|
|
|
16
16
|
|
|
17
17
|
**Mission**: In `/genesis` **Step 1**, converge vague user wording into **Ubiquitous Language** and a machine-readable/writable `concept_model.json`; supply unambiguous nouns, verbs, and known gaps for PRD writing.
|
|
18
18
|
**Capabilities**: Vagueness scan (entities / verbs / dark matter / boundaries), controlled questioning (multiple choice or very short answers), incremental model maintenance on every answer, `glossary` and `clarifications` traceability.
|
|
19
|
-
**Constraints**: **Output only one question to the user at a time** (queue is internal only; do not dump the full list at the user); do not skip follow-up and fill JSON from memory;
|
|
19
|
+
**Constraints**: **Output only one question to the user at a time** (queue is internal only; do not dump the full list at the user); do not skip follow-up and fill JSON from memory; if the host provides a structured questioning tool (e.g. `ask question`), **prefer the tool** to ask.
|
|
20
20
|
**Sub-agents (optional)**: Bounded slices only (e.g. "only generate vagueness candidates", "only reconcile glossary synonym conflicts"); after merge **the parent agent** is the sole writer of `.anws/v{N}/concept_model.json`; sub-agents must not race the same file.
|
|
21
21
|
**Output Goal**: `.anws/v{N}/concept_model.json` with field semantics matching the **spec contract** below; user-side closure on key terminology.
|
|
22
22
|
</phase_context>
|
|
@@ -115,7 +115,7 @@ You are the **DOMAIN MODELER**.
|
|
|
115
115
|
|
|
116
116
|
## Triggering and host pairing
|
|
117
117
|
|
|
118
|
-
- **Primary path**:
|
|
118
|
+
- **Primary path**: **`/genesis` Step 1**: after Step 0 has set `TARGET_DIR`, load this skill, run requirement clarification, and write `concept_model.json`.
|
|
119
119
|
- **Secondary path**: if the user does domain scaffolding outside genesis, still follow this skill and write `concept_model.json` for the currently active version (path rules unchanged).
|
|
120
120
|
|
|
121
121
|
---
|
|
@@ -193,7 +193,7 @@ JSON on disk matches the latest conversation; no "answered everything then fabri
|
|
|
193
193
|
|
|
194
194
|
---
|
|
195
195
|
|
|
196
|
-
## Veteran rules (stacked with
|
|
196
|
+
## Veteran rules (stacked with this SKILL contract)
|
|
197
197
|
|
|
198
198
|
1. **Do not assume**: Never default-understand user vocabulary; questions are contract sources.
|
|
199
199
|
2. **One at a time**: Only one outward question.
|
|
@@ -227,4 +227,4 @@ JSON on disk matches the latest conversation; no "answered everything then fabri
|
|
|
227
227
|
- [ ] **`clarifications`** matches outward question count or gaps are explainable.
|
|
228
228
|
- [ ] Model saved to **`TARGET_DIR/concept_model.json`** (equivalent **`.anws/v{N}/concept_model.json`**).
|
|
229
229
|
- [ ] User confirmed terminology understanding (verbal or "continue"-class signal—next genesis step gating is host-defined).
|
|
230
|
-
- [ ]
|
|
230
|
+
- [ ] Session uses only workspace **`.agents/skills/concept-modeler/SKILL.md`**; no alternate-path paraphrase of the same skill.
|
|
@@ -21,7 +21,7 @@ This skill carries the execution detail of `/craft`.
|
|
|
21
21
|
- A weak document sounds energetic but depends on improvisation.
|
|
22
22
|
|
|
23
23
|
> **Split from `output-contract`**: This file covers **scaffolds** for workflows/skills/prompts only. Shared on-disk spec, parent/child delegation, and single-writer rules live in **`.agents/skills/output-contract/SKILL.md`**.
|
|
24
|
-
> **CLI install manifest**: what copies on `anws init`,
|
|
24
|
+
> **CLI install manifest**: what copies on `anws init`, registry + **`BUNDLE_POLICY`** boundaries—read **`references/BUNDLE_POLICY.md`**.
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Template bundle contract (CLI ·
|
|
1
|
+
# Template bundle contract (CLI · package templates)
|
|
2
2
|
|
|
3
|
-
This document defines **install boundaries**: what the CLI copies
|
|
3
|
+
This document defines **install boundaries**: what the CLI copies. The product ships **one** `RESOURCE_REGISTRY`. **`zh` / `en`** only selects which on-disk tree supplies text for the **same relative paths**—not two competing product authorities.
|
|
4
4
|
Any change to **`lib/manifest.js`** `RESOURCE_REGISTRY` is an **explicit** change to what users receive—document it in **release notes**.
|
|
5
5
|
|
|
6
6
|
---
|
|
@@ -10,51 +10,33 @@ Any change to **`lib/manifest.js`** `RESOURCE_REGISTRY` is an **explicit** chang
|
|
|
10
10
|
| Mechanism | Role |
|
|
11
11
|
|-----------|------|
|
|
12
12
|
| **`RESOURCE_REGISTRY`** | Array in `lib/manifest.js`; **only** driver for paths written by `anws init` / `anws update` (per IDE projection). |
|
|
13
|
-
| **`TEMPLATE_ROOT`** | `src/anws/templates/` (see `lib/resources`). **`
|
|
13
|
+
| **`TEMPLATE_ROOT`** / **`TEMPLATE_ROOT_EN`** | `src/anws/templates/` and `src/anws/templates_en/` (see `lib/resources`). **`resolveCanonicalPath(rel, templateLocale)`** reads **`templates/`** for **`zh`**; for **`en`** it prefers the same **relative path** under **`templates_en/`**, falling back to **`templates/`** when missing. |
|
|
14
14
|
| **Check** | `scripts/check-canonical-templates.js`: every registry **`source`** must exist under **`templates/`** as a regular file. |
|
|
15
15
|
|
|
16
|
-
Relative paths that **do not** appear in **`RESOURCE_REGISTRY`**—even if present on disk under **`templates/`**—are **not** installed by default CLI.
|
|
16
|
+
Relative paths that **do not** appear in **`RESOURCE_REGISTRY`**—even if present on disk under **`templates/`**—are **not** installed by default CLI. Example: a **`nexus-query/`** tree maintained in-repo but **not** registered is **not** CLI-delivered—use **registry + this doc** as authority.
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
20
|
-
## 2.
|
|
20
|
+
## 2. `templateLocale`: `templates/` and `templates_en/`
|
|
21
21
|
|
|
22
|
-
- **`templates/`**:
|
|
23
|
-
- **`templates_en/`**: English mirror
|
|
22
|
+
- **`templates/`**: default zh copy tree in the npm package; also the **registry existence check root**.
|
|
23
|
+
- **`templates_en/`**: English mirror; when **`install-lock`** has **`templateLocale: en`**, init/update reads the same **relative paths** from **`templates_en/`**, with fallback to **`templates/`** for missing files.
|
|
24
|
+
- Maintainer duty: keep **the same `source` relative paths** semantically aligned across zh/en—avoid EN-only drift.
|
|
24
25
|
|
|
25
26
|
---
|
|
26
27
|
|
|
27
|
-
## 3.
|
|
28
|
-
|
|
29
|
-
**Not** a second semver line and **not** mounted wholesale in **`RESOURCE_REGISTRY`**.
|
|
30
|
-
|
|
31
|
-
| Property | Detail |
|
|
32
|
-
|----------|--------|
|
|
33
|
-
| **Purpose** | Optional install root, remediation, experiments. |
|
|
34
|
-
| **Install** | No `anws init --bundle alpha` today—overlay use is **manual** or custom scripting. |
|
|
35
|
-
| **vs canonical** | May **omit** whole skills (e.g. no **`nexus-query`** mirror) to save volume; if you need that capability, read shipped **`templates/`** homonyms or **register** those paths in the registry before relying on CLI. |
|
|
36
|
-
| **Shared contracts** | Prefer **`output-contract`** and single skill references instead of duplicating long prose in the overlay. |
|
|
37
|
-
|
|
38
|
-
### Before merging overlay into canonical (checklist)
|
|
39
|
-
|
|
40
|
-
1. **Omission**: **permanent product removal** vs **overlay-only**—if the latter, canonical/registry must not pretend the feature vanished.
|
|
41
|
-
2. **Registry**: adding/removing entries affects **every** user on update—semver + release notes.
|
|
42
|
-
3. **Bulk**: **slim / extract skills / dedupe** first, then merge—avoid dumping narrative debt into default paths.
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## 4. Split vs `/craft` and `output-contract`
|
|
28
|
+
## 3. Split vs `/craft` and `output-contract`
|
|
47
29
|
|
|
48
30
|
| Artifact | Owns |
|
|
49
31
|
|----------|------|
|
|
50
32
|
| **`craft-authoring` SKILL** | Authoring scaffolds + scoring gate for `/craft`. |
|
|
51
33
|
| **`output-contract`** | Runtime persisted-report spec + delegation + single-writer rules. |
|
|
52
|
-
| **This `BUNDLE_POLICY`** | **What the CLI installs**,
|
|
34
|
+
| **This `BUNDLE_POLICY`** | **What the CLI installs**, locale root selection, registry **decisions**. |
|
|
53
35
|
|
|
54
36
|
---
|
|
55
37
|
|
|
56
|
-
##
|
|
38
|
+
## 4. Slim-down roadmap (suggested order)
|
|
57
39
|
|
|
58
40
|
1. **Registry gap**: if a path under **`templates/`** should ship but is missing from **`RESOURCE_REGISTRY`**, either **register** it or **delete** unused disk clutter.
|
|
59
41
|
2. **Dedupe**: replace duplicated bullets in reviewers/workflows with **one-line pointers** to **`output-contract`** / this policy.
|
|
60
|
-
3. **Heavy skills** (e.g. **`system-architect`**): shrink embedded templates; **link** one authoritative file instead of mirroring ADR tables—then revisit
|
|
42
|
+
3. **Heavy skills** (e.g. **`system-architect`**): shrink embedded templates; **link** one authoritative file instead of mirroring ADR tables—then revisit large merges.
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: design-reviewer
|
|
3
|
-
description:
|
|
3
|
+
description: Load when `/challenge` needs design-side contract-closure evidence (three-dimensional architecture and system-design doc review); deliver anchorable, severity-graded findings for inclusion in 07_CHALLENGE_REPORT—not final rulings outside challenge context.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# design-reviewer
|
|
7
|
-
|
|
6
|
+
# design-reviewer
|
|
8
7
|
> Naming design defects before implementation is an order of magnitude cheaper than settling the debt after production.
|
|
9
8
|
|
|
10
9
|
Within the `/challenge` chain, you are the **design-side evidence layer**: show which contracts remain unclosed at system boundaries, interfaces, state, timing, and error paths; you **do not** replace CHALLENGER’s holistic report judgment or routing—only deliver mergeable, verifiable design finding blocks.
|
|
@@ -26,13 +25,13 @@ Within the `/challenge` chain, you are the **design-side evidence layer**: show
|
|
|
26
25
|
|
|
27
26
|
## CRITICAL Deliverable contract
|
|
28
27
|
|
|
29
|
-
> [!IMPORTANT]
|
|
30
|
-
>
|
|
31
|
-
> -
|
|
32
|
-
> - **
|
|
33
|
-
> - **
|
|
34
|
-
> - **
|
|
35
|
-
> - **Quality over quantity**: A few high-signal findings beat a pile of guesses.
|
|
28
|
+
> [!IMPORTANT]
|
|
29
|
+
>
|
|
30
|
+
> Shared persisted-report rules (precision, evidence, non-repetition, no filler, single-writer, delegation closure) are defined in **`.agents/skills/output-contract/SKILL.md`**; this skill only adds design-review-specific anchor and severity rules.
|
|
31
|
+
> - **Anchor**: Every finding carries **minimal sufficient anchors** (`path`, explicit title / subsection name, or stable chapter id); do not write only “see architecture doc”.
|
|
32
|
+
> - **Traceable**: “Finding → quote or précis → inference chain → impact → suggestion” stays in consistent order for lookup; without an inference chain, do not tag Critical / High.
|
|
33
|
+
> - **Table rule**: In the **Core findings table**, **finding / impact / suggestion** are each **one sentence** (very short compound sentences allowed).
|
|
34
|
+
> - **Quality over quantity**: A few high-signal findings beat a pile of guesses.
|
|
36
35
|
|
|
37
36
|
---
|
|
38
37
|
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: e2e-testing-guide
|
|
3
|
-
description:
|
|
3
|
+
description: Specifies the human-facing E2E / manual verification *Testing Guide* and *E2E Verification* report skeleton (PRD traceability, human walk-through order, verdict columns may only be PASS/PARTIAL_PASS/FAIL); **does not include real-browser orchestration**—order of operations and backfill obligations are fixed by the host **`/forge` §3.7** (per `/forge` wording).
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# E2E Testing Guide — Human verification document layer
|
|
6
|
+
# E2E Testing Guide — Human verification document layer
|
|
7
7
|
|
|
8
8
|
<phase_context>
|
|
9
9
|
You are **E2E GUIDE AUTHOR (verification guide writer)**.
|
|
10
10
|
|
|
11
11
|
**Mission**: Before **executing or being authorized for real-browser testing**, produce *E2E Verification* documentation a reader can follow **as if seeing the product for the first time**: **read-the-screen before action**, honest entries and coverage, each conclusion traceable to PRD/acceptance; do **not** mistake “having written the guide” for “having tested”.
|
|
12
12
|
**Capability**: Context gathering and explicit blocking issues; structured RTM/Surface/Journey enumeration; steps aligned with human exploration order; expected Evidence types; aligning with `/forge` §3.7 on filenames on disk and order of operations.
|
|
13
|
-
**Constraint**: Do not write browser-automation protocols or verdict tiers outside this skill; do **not**, without a real browser run, set `Journey result` / `Step result` to `PASS`; do **not** remove the **hard constraints, mandatory walk-through rules, or required headings/tables below** (you may only compress repetitive asides)
|
|
13
|
+
**Constraint**: Do not write browser-automation protocols or verdict tiers outside this skill; do **not**, without a real browser run, set `Journey result` / `Step result` to `PASS`; do **not** remove the **hard constraints, mandatory walk-through rules, or required headings/tables below** (you may only compress repetitive asides).
|
|
14
14
|
**Relationship to sub-agents**: The parent session exclusively owns **TARGET_DIR/wave-{N}-e2e.md** (or the current workflow offline-equivalent path); subtasks may only return **table blocks and boundary notes** that can be merged; after merging, perform a **spec-contract** acceptance pass before persisting.
|
|
15
15
|
**Output goal**: Satisfy the Markdown skeleton in **Required output**; real-browser backfill runs in **`/forge` §3.7** step two after authorization.
|
|
16
16
|
</phase_context>
|
|
@@ -241,8 +241,8 @@ Allowed to honestly write uncertainty, but must explain which missing evidence c
|
|
|
241
241
|
|
|
242
242
|
```bash
|
|
243
243
|
# Set SKILL_DIR (adjust based on actual installation path)
|
|
244
|
-
# Scenario A: Installed as .
|
|
245
|
-
SKILL_DIR=".
|
|
244
|
+
# Scenario A: Installed as .agents/skills
|
|
245
|
+
SKILL_DIR=".agents/skills/nexus-mapper"
|
|
246
246
|
# Scenario B: Independent repo (during development/debugging)
|
|
247
247
|
SKILL_DIR="/path/to/nexus-mapper"
|
|
248
248
|
|
|
@@ -40,7 +40,7 @@ python $SKILL_DIR/scripts/git_detective.py $repo_path --days 90 \
|
|
|
40
40
|
> $repo_path/.nexus-map/raw/git_stats.json
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
> `$SKILL_DIR` is this Skill's installation path (`.
|
|
43
|
+
> `$SKILL_DIR` is this Skill's installation path (`.agents/skills/nexus-mapper` or independent repo path).
|
|
44
44
|
> `$repo_path` is absolute path to target repo.
|
|
45
45
|
> `extract_ast.py --file-tree-out` by default excludes `.git/`, `.nexus-map/`, `node_modules/`, `__pycache__/`, `.venv/`, `dist/`, `build/` and other noise directories and files.
|
|
46
46
|
|
|
@@ -42,7 +42,7 @@ python $SKILL_DIR/scripts/extract_ast.py $repo_path > $AST_JSON
|
|
|
42
42
|
python $SKILL_DIR/scripts/git_detective.py $repo_path --days 90 > $GIT_JSON
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
> `$SKILL_DIR` is this skill's install path
|
|
45
|
+
> `$SKILL_DIR` is this skill's install path, usually `.agents/skills/nexus-query`; when projected to a target IDE, use that target's skills directory.
|
|
46
46
|
|
|
47
47
|
**Dependency install (first use)**:
|
|
48
48
|
```bash
|
|
@@ -1,101 +1,150 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: runtime-inspector
|
|
3
|
-
description:
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
|
|
8
|
-
>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
>
|
|
22
|
-
> -
|
|
23
|
-
>
|
|
24
|
-
> -
|
|
25
|
-
>
|
|
26
|
-
>
|
|
27
|
-
>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
1
|
+
---
|
|
2
|
+
name: runtime-inspector
|
|
3
|
+
description: Load when `/probe` needs to identify runtime entrypoints, process boundaries, spawn chains, IPC channels, protocol strength, and lifecycle risks. Observes and reports only; does not modify code.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Runtime Inspector (ALPHA)
|
|
7
|
+
|
|
8
|
+
<phase_context>
|
|
9
|
+
You are **RUNTIME INSPECTOR**.
|
|
10
|
+
|
|
11
|
+
**Mission**: identify how the project starts, spawns processes, communicates, and fails; provide evidence for `/probe` Runtime Topology and Risk Matrix.
|
|
12
|
+
**Capabilities**: entrypoint discovery, spawn/fork chain detection, IPC surface inventory, protocol-strength classification, lifecycle and platform-security risk labeling.
|
|
13
|
+
**Limits**: do not start long-running services, do not modify code, and do not present static inference as runtime proof; use `Cannot confirm` when evidence is insufficient.
|
|
14
|
+
**Output Goal**: Process Roots, Spawning Chains, IPC Surfaces, Contract Status, Lifecycle Risks, and Security Flags.
|
|
15
|
+
</phase_context>
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## CRITICAL Output Contract
|
|
20
|
+
|
|
21
|
+
> [!IMPORTANT]
|
|
22
|
+
> Persisted-report rules, evidence rules, single-writer rules, and de-duplication rules follow `.agents/skills/output-contract/SKILL.md`. This skill returns an evidence slice for `/probe`.
|
|
23
|
+
>
|
|
24
|
+
> - Strong conclusions require a path, keyword, or command-output anchor.
|
|
25
|
+
> - Runtime behavior that was not actually exercised must be phrased as static evidence or `Cannot confirm`.
|
|
26
|
+
> - IPC contract classification must state the evidence: channel, message schema, version handshake, or missing pieces.
|
|
27
|
+
> - Windows Named Pipe permissions and parent/child process lifecycle are priority checks.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## sequential-thinking Rules
|
|
32
|
+
|
|
33
|
+
- No CoT model: call the `sequential-thinking` CLI.
|
|
34
|
+
- CoT model + simple single-process project: natural CoT is acceptable, but still answer entrypoint, communication, and failure questions.
|
|
35
|
+
- CoT model + multiprocess, IPC, spawn/fork, or protocol inference: call the `sequential-thinking` CLI.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Step 1: Identify Entrypoints
|
|
40
|
+
|
|
41
|
+
### What
|
|
42
|
+
Search for entrypoints that may represent independent processes:
|
|
43
|
+
|
|
44
|
+
| Language / Platform | Search Signals |
|
|
45
|
+
| --- | --- |
|
|
46
|
+
| Rust | `fn main()`, `#[tokio::main]` |
|
|
47
|
+
| Python | `if __name__ == "__main__":` |
|
|
48
|
+
| Node | `require.main === module`, `package.json` `bin` |
|
|
49
|
+
| Go | `func main()` |
|
|
50
|
+
|
|
51
|
+
### Why
|
|
52
|
+
Entrypoints define process boundaries; multiple entrypoints usually imply deployment, IPC, or lifecycle risks.
|
|
53
|
+
|
|
54
|
+
### Acceptance
|
|
55
|
+
- Output `Process Roots`: path, entrypoint type, inferred role.
|
|
56
|
+
- For multiple entrypoints, label independent process / parent-managed / `Cannot confirm`.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Step 2: Trace Spawn Chains
|
|
61
|
+
|
|
62
|
+
### What
|
|
63
|
+
Search for parent processes launching children:
|
|
64
|
+
|
|
65
|
+
| Platform | Search Signals |
|
|
66
|
+
| --- | --- |
|
|
67
|
+
| Rust | `Command::new`, `std::process::Stdio`, `tauri-plugin-shell` |
|
|
68
|
+
| Python | `subprocess.Popen`, `multiprocessing.Process` |
|
|
69
|
+
| Node | `child_process.spawn`, `child_process.fork` |
|
|
70
|
+
|
|
71
|
+
### Why
|
|
72
|
+
Spawn chains create lifecycle risk: parent exit, child crash, restart policy, and cleanup policy need explicit contracts.
|
|
73
|
+
|
|
74
|
+
### Acceptance
|
|
75
|
+
- Output `Spawning Chains`: parent path, child command/module, stdio/environment passing.
|
|
76
|
+
- Label zombie child, silent failure, restart gap, and cleanup gap where visible.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Step 3: Identify IPC Surfaces
|
|
81
|
+
|
|
82
|
+
### What
|
|
83
|
+
Search for communication channels and protocol definitions:
|
|
84
|
+
|
|
85
|
+
| Category | Search Signals |
|
|
86
|
+
| --- | --- |
|
|
87
|
+
| Channel | `Pipe`, `NamedPipe`, `unix_stream`, `zmq`, `TcpListener`, `UdpSocket`, `websocket`, `http::server` |
|
|
88
|
+
| Protocol | `Handshake`, `Version`, `MagicBytes`, `schema`, `protobuf`, `serde_json`, `JSON.parse`, `enum Message` |
|
|
89
|
+
|
|
90
|
+
### Why
|
|
91
|
+
A channel without schema, version, or handshake creates protocol drift, which is a core hidden risk in multiprocess systems.
|
|
92
|
+
|
|
93
|
+
### Acceptance
|
|
94
|
+
- Output `IPC Surfaces`: channel type, location, protocol evidence.
|
|
95
|
+
- Every IPC surface has `Contract Status`.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Contract Status
|
|
100
|
+
|
|
101
|
+
| Status | Rule |
|
|
102
|
+
| --- | --- |
|
|
103
|
+
| Strong | channel + explicit message schema / enum / protobuf, or a version handshake |
|
|
104
|
+
| Weak | channel + raw JSON/string, but no centralized schema or version |
|
|
105
|
+
| None | channel exists, but no protocol definition is found |
|
|
106
|
+
| Cannot confirm | static evidence is insufficient |
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Risk Patterns
|
|
111
|
+
|
|
112
|
+
| Risk | Detection Signal | Recommendation |
|
|
113
|
+
| --- | --- | --- |
|
|
114
|
+
| Protocol Mismatch | channel exists without schema/version/handshake | add protocol schema or version handshake task |
|
|
115
|
+
| Zombie Child | spawn exists without exit cleanup or heartbeat | add kill-on-exit, heartbeat, or cleanup contract |
|
|
116
|
+
| Silent Failure | child failure has no error propagation or restart policy | add error propagation, retry, or supervisor strategy |
|
|
117
|
+
| Named Pipe Permission Risk | Windows Named Pipe lacks explicit ACL | add permission-boundary design and verification |
|
|
118
|
+
| Race Condition | multiprocess messages lack ordering, locks, or idempotency | add sequence numbers, locks, or idempotency contract |
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Required Output
|
|
123
|
+
|
|
124
|
+
```markdown
|
|
125
|
+
## Runtime Inspector Findings
|
|
126
|
+
|
|
127
|
+
### Process Roots
|
|
128
|
+
| Path | Entrypoint | Role | Confidence |
|
|
129
|
+
|
|
130
|
+
### Spawning Chains
|
|
131
|
+
| Parent | Child | Channel / stdio | Lifecycle Risk |
|
|
132
|
+
|
|
133
|
+
### IPC Surfaces
|
|
134
|
+
| Path | Channel | Protocol Evidence | Contract Status |
|
|
135
|
+
|
|
136
|
+
### Lifecycle Risks
|
|
137
|
+
| Risk | Evidence | Impact | Suggested follow-up |
|
|
138
|
+
|
|
139
|
+
### Security Flags
|
|
140
|
+
| Flag | Evidence | Severity | Suggested follow-up |
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
<completion_criteria>
|
|
146
|
+
- Process Roots, Spawning Chains, IPC Surfaces, Contract Status, and Lifecycle Risks are present or explicitly `N/A + reason`.
|
|
147
|
+
- Strong/Weak/None/Cannot confirm classifications include evidence.
|
|
148
|
+
- Static inference is not presented as runtime proof.
|
|
149
|
+
- Output can be merged directly into `/probe` Runtime Topology and Risk Matrix.
|
|
150
|
+
</completion_criteria>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: spec-writer
|
|
3
|
-
description: "
|
|
3
|
+
description: "genesis Step 2: turn fuzzy or high-level needs into strict product requirement documents (PRDs); includes craft scaffolding, PRD spec contract, optional sub-agent shard orchestration, and Step completion signals. Use when requirements are vague, scope is too large, or expression stays conceptual."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Requirements Detective Handbook
|
|
@@ -9,9 +9,9 @@ description: "[ALPHA] genesis Step 2: turn fuzzy or high-level needs into strict
|
|
|
9
9
|
|
|
10
10
|
Your job is to **eliminate ambiguity**.
|
|
11
11
|
|
|
12
|
-
##
|
|
12
|
+
## genesis Step 2 (scope and handoff)
|
|
13
13
|
|
|
14
|
-
Compared with `templates/.agents/skills/spec-writer`, this template adds **
|
|
14
|
+
Compared with `templates/.agents/skills/spec-writer`, this template adds **craft scaffolding**, **spec contract** (on-disk semantics), **sub-agent orchestration**, and **completion**. The normative force of **Execution checklist / Methodology / 10-dimension ambiguity scan / User Story quality gate** sections is **unchanged**—rules such as Socratic probing, **one question at a time**, the hard cap on `[NEEDS CLARIFICATION]`, Non-Goals, and the User Story gate **apply verbatim**.
|
|
15
15
|
|
|
16
16
|
### Craft scaffolding (artifact skeleton)
|
|
17
17
|
|