renma 0.18.0 → 0.18.2
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/CHANGELOG.md +101 -1
- package/README.md +61 -3
- package/architecture.md +7 -6
- package/design.md +39 -32
- package/dist/agent-skills.d.ts +5 -6
- package/dist/agent-skills.d.ts.map +1 -1
- package/dist/agent-skills.js +2 -10
- package/dist/agent-skills.js.map +1 -1
- package/dist/catalog.d.ts +27 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +62 -16
- package/dist/catalog.js.map +1 -1
- package/dist/cli-help.d.ts +8 -8
- package/dist/cli-help.d.ts.map +1 -1
- package/dist/cli-help.js +19 -4
- package/dist/cli-help.js.map +1 -1
- package/dist/command-invocation.d.ts +4 -0
- package/dist/command-invocation.d.ts.map +1 -0
- package/dist/command-invocation.js +14 -0
- package/dist/command-invocation.js.map +1 -0
- package/dist/commands/inspect.d.ts +5 -0
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +185 -33
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/scaffold.js +30 -9
- package/dist/commands/scaffold.js.map +1 -1
- package/dist/commands/suggest-metadata.d.ts +6 -2
- package/dist/commands/suggest-metadata.d.ts.map +1 -1
- package/dist/commands/suggest-metadata.js +516 -72
- package/dist/commands/suggest-metadata.js.map +1 -1
- package/dist/context-lens.d.ts +1 -0
- package/dist/context-lens.d.ts.map +1 -1
- package/dist/context-lens.js +19 -1
- package/dist/context-lens.js.map +1 -1
- package/dist/diagnostic-ids.d.ts +1 -0
- package/dist/diagnostic-ids.d.ts.map +1 -1
- package/dist/diagnostic-ids.js +1 -0
- package/dist/diagnostic-ids.js.map +1 -1
- package/dist/discovery.d.ts +33 -1
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +361 -51
- package/dist/discovery.js.map +1 -1
- package/dist/metadata.d.ts +15 -1
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.js +235 -0
- package/dist/metadata.js.map +1 -1
- package/dist/model.d.ts +5 -10
- package/dist/model.d.ts.map +1 -1
- package/dist/rules.js +69 -23
- package/dist/rules.js.map +1 -1
- package/dist/scanner.d.ts.map +1 -1
- package/dist/scanner.js +66 -2
- package/dist/scanner.js.map +1 -1
- package/dist/skill-migration.d.ts.map +1 -1
- package/dist/skill-migration.js +6 -1
- package/dist/skill-migration.js.map +1 -1
- package/dist/types.d.ts +72 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +50 -1
- package/dist/types.js.map +1 -1
- package/docs/README.md +2 -1
- package/docs/agent-skills-compatibility.md +8 -1
- package/docs/authoring-guide.md +100 -13
- package/docs/context-lens.md +319 -153
- package/docs/diagnostics.md +385 -3
- package/docs/metadata-budget.md +32 -0
- package/docs/quality-profile.md +17 -5
- package/docs/user-manual.md +136 -14
- package/examples/context-lens/README.md +8 -3
- package/examples/context-lens/contexts/testing/boundary-value-analysis.md +6 -2
- package/examples/context-lens/lenses/testing/spec-review-boundary-values.md +27 -5
- package/examples/context-lens/lenses/testing/test-design-boundary-values.md +27 -5
- package/examples/context-lens/skills/testing/spec-review/SKILL.md +33 -4
- package/package.json +1 -1
package/docs/user-manual.md
CHANGED
|
@@ -73,17 +73,20 @@ support paths:
|
|
|
73
73
|
|
|
74
74
|
The same reserved names apply under `.agents/skills/**`.
|
|
75
75
|
|
|
76
|
-
These
|
|
77
|
-
specific to one Skill. Promote reusable source-of-truth knowledge to an
|
|
78
|
-
Context Asset, or a helper shared across workflows to `tools/**`, only
|
|
79
|
-
repository evidence supports that change; Renma does not move files
|
|
76
|
+
These valid support paths are structurally Skill-local. Keep material local when
|
|
77
|
+
it is specific to one Skill. Promote reusable source-of-truth knowledge to an
|
|
78
|
+
owned Context Asset, or a helper shared across workflows to `tools/**`, only
|
|
79
|
+
when repository evidence supports that change; Renma does not move files
|
|
80
80
|
automatically.
|
|
81
81
|
|
|
82
|
-
|
|
83
|
-
support artifact does not declare an owner,
|
|
84
|
-
Graph, and BOM reporting use the
|
|
85
|
-
effective ownership and mark it as inherited.
|
|
86
|
-
|
|
82
|
+
Renma claims a parent only after repository evidence resolves exactly one Skill
|
|
83
|
+
entrypoint. When that resolved local support artifact does not declare an owner,
|
|
84
|
+
ownership, Readiness, graph, Trust Graph, and BOM reporting may use the parent
|
|
85
|
+
Skill's owner as deterministic effective ownership and mark it as inherited.
|
|
86
|
+
Missing or ambiguous parents never inherit. See
|
|
87
|
+
[classification evidence](diagnostics.md#how-to-read-classification-evidence)
|
|
88
|
+
for the detailed contract. This does not invent ownership for shared Context
|
|
89
|
+
Assets or unrelated repository files.
|
|
87
90
|
|
|
88
91
|
Only files marked Markdown-parser eligible contribute frontmatter metadata,
|
|
89
92
|
headings, links, code fences, and repeated-context evidence. Text scripts and
|
|
@@ -162,6 +165,61 @@ Review the Skill with this platform's standard Skill authoring guidance, then us
|
|
|
162
165
|
Start by running `renma --help` and use command-specific help to choose the appropriate workflow. Make only evidence-backed changes. Do not invent owners, references, product rules, or source-of-truth claims. Preserve existing semantics unless a diagnostic or explicit requirement supports a change. Run `renma scan . --fail-on high` after editing, fix relevant diagnostics, rerun it, and summarize both resolved and remaining findings.
|
|
163
166
|
```
|
|
164
167
|
|
|
168
|
+
Recommended evidence-first preflight:
|
|
169
|
+
|
|
170
|
+
1. Run `renma scan . --fail-on high --format json`.
|
|
171
|
+
2. Run `renma inspect <SKILL.md> --format json`.
|
|
172
|
+
3. Inspect relevant local resources and referenced Context Assets.
|
|
173
|
+
4. Use `renma suggest-metadata` only when retrofit or migration evidence exists.
|
|
174
|
+
5. Prepare the smallest intended patch.
|
|
175
|
+
6. Rerun `renma scan . --fail-on high --format json`.
|
|
176
|
+
7. Stop without manufacturing work when `suggest-metadata` reports
|
|
177
|
+
`decisionStatus: "no-change-recommended"`; this currently uses
|
|
178
|
+
`suggestedMode: "no-proposal"`.
|
|
179
|
+
8. Report unresolved human decisions.
|
|
180
|
+
|
|
181
|
+
For one classification question, `renma inspect <target> --format json` may be
|
|
182
|
+
the initial preflight. Repository-wide work should normally start with `scan`.
|
|
183
|
+
|
|
184
|
+
## Context Asset Discovery Boundary
|
|
185
|
+
|
|
186
|
+
`contexts/**` is the preferred independent Context Asset root and `context/**`
|
|
187
|
+
remains supported. Nested directory names never override a recognized root.
|
|
188
|
+
Files under canonical Skill `references/`, `profiles/`, `examples/`, `scripts/`,
|
|
189
|
+
and `assets/` directories are structurally Skill-local. Renma claims one parent
|
|
190
|
+
and possible inherited governance only after repository evidence resolves
|
|
191
|
+
exactly one Skill under `skills/**` or `.agents/skills/**`. Supported explicit
|
|
192
|
+
local metadata remains valid but is not required. See
|
|
193
|
+
[classification evidence](diagnostics.md#how-to-read-classification-evidence)
|
|
194
|
+
for the detailed contract.
|
|
195
|
+
|
|
196
|
+
Top-level `references/**` is not a Context root. `tools/**` contains shared
|
|
197
|
+
repository implementation, not Context knowledge, and `skills/**/tools/**` is
|
|
198
|
+
not a canonical local support directory. Skill-local executable support belongs
|
|
199
|
+
under `scripts/`.
|
|
200
|
+
|
|
201
|
+
```text
|
|
202
|
+
contexts/foo/references/policy.md
|
|
203
|
+
-> independent Context Asset
|
|
204
|
+
|
|
205
|
+
skills/foo/references/policy.md
|
|
206
|
+
-> Skill-local Reference
|
|
207
|
+
|
|
208
|
+
references/policy.md
|
|
209
|
+
-> outside the Context root
|
|
210
|
+
|
|
211
|
+
tools/helper.mjs
|
|
212
|
+
-> repository implementation
|
|
213
|
+
|
|
214
|
+
skills/foo/tools/helper.mjs
|
|
215
|
+
-> not canonical Skill-local support
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Placement as independent Context is a human decision about ownership,
|
|
219
|
+
lifecycle, reuse, and source of truth. Classification after placement is
|
|
220
|
+
deterministic. Renma never moves a file based on content. A successful
|
|
221
|
+
`no-proposal` result means no edit should be manufactured.
|
|
222
|
+
|
|
165
223
|
## User Story: Create A New Skill With Scaffold
|
|
166
224
|
|
|
167
225
|
Use this flow when adding a new agent-facing Skill. Platform-native guidance
|
|
@@ -640,7 +698,19 @@ renma inspect contexts/testing/boundary-value-analysis.md --format json
|
|
|
640
698
|
renma inspect skills/testing/spec-review/SKILL.md --lines L10-L42
|
|
641
699
|
```
|
|
642
700
|
|
|
643
|
-
Use this when editing one skill or context file and you want a deterministic outline without reading the whole repository catalog. Without `--lines`, output includes file size, line count, frontmatter range, headings, code fences, links, asset relationships, and a concise Context Lens governance summary when repository context can be inferred. Use `--lines <range>` for an exact source slice; ranges can look like `L10-L42` or `10-42`.
|
|
701
|
+
Use this when editing one skill or context file and you want a deterministic outline without reading the whole repository catalog. Without `--lines`, output includes file size, line count, frontmatter range, headings, code fences, links, asset relationships, and a concise Context Lens governance summary when repository context can be inferred. It also always includes `classification` with `kind`, `scope`, `matchedRule`, `reasonCode`, root or parent evidence, and concise competing rules. A Skill-local path exposes `parentAssetCandidatePath`; `parentAssetPath` appears only when `parentResolution` is `resolved`, while `missing` and `ambiguous` remain explicit fail-closed states. `governance` is separate and reports ownership, policy, and metadata provenance only from repository evidence. Unknown files and repository tools still receive classification. Use `--lines <range>` for an exact source slice; ranges can look like `L10-L42` or `10-42`. `--lines` output itself is unchanged.
|
|
702
|
+
|
|
703
|
+
JSON also includes `repositoryBoundary`. Resolved results record the root,
|
|
704
|
+
repository-relative path, and resolution source. Unresolved results retain a
|
|
705
|
+
stable reason code and `candidateRoots`; structural ambiguity uses
|
|
706
|
+
`repository-boundary-ambiguous` instead of selecting a broad ancestor.
|
|
707
|
+
|
|
708
|
+
For a file target, Renma resolves a repository root from an explicit caller root,
|
|
709
|
+
the nearest safe `.git` file/directory or Renma config marker, or an unambiguous
|
|
710
|
+
structural boundary, in that order. Current-working-directory containment alone
|
|
711
|
+
does not establish a repository. This keeps nested repositories and absolute
|
|
712
|
+
targets outside the current directory deterministic without scanning an
|
|
713
|
+
unrelated parent tree.
|
|
644
714
|
|
|
645
715
|
### `readiness`
|
|
646
716
|
|
|
@@ -711,7 +781,9 @@ Renma does not infer owners automatically. If an asset is unowned, choose an own
|
|
|
711
781
|
|
|
712
782
|
### `scaffold`
|
|
713
783
|
|
|
714
|
-
Creates a
|
|
784
|
+
Creates starter assets with distinct responsibilities: a Skill is a focused
|
|
785
|
+
workflow entrypoint, Context is durable reusable knowledge, and a Context Lens
|
|
786
|
+
is purpose-specific interpretation of one or more declared Context Assets.
|
|
715
787
|
|
|
716
788
|
```bash
|
|
717
789
|
renma scaffold skill skills/testing/spec-review/SKILL.md --owner qa-platform
|
|
@@ -720,7 +792,17 @@ renma scaffold context_lens lenses/testing/spec-review-boundary-values.md --owne
|
|
|
720
792
|
renma scaffold skill skills/testing/spec-review/SKILL.md --owner qa-platform --format prompt
|
|
721
793
|
```
|
|
722
794
|
|
|
723
|
-
`scaffold --format file` writes a starter file, `--format prompt` emits an
|
|
795
|
+
`scaffold --format file` writes a starter file, `--format prompt` emits an
|
|
796
|
+
authoring prompt, and `--format json` emits structured scaffold data. The
|
|
797
|
+
generated content is intentionally minimal; fill in metadata, dependencies, and
|
|
798
|
+
verification steps before depending on it in automation.
|
|
799
|
+
|
|
800
|
+
For a Context Lens, replace every placeholder `purpose`, `applies_to`, `focus`,
|
|
801
|
+
and `expected_outputs` value with repository-grounded content. Every
|
|
802
|
+
`applies_to` target must resolve to a real Context Asset. Do not use a Lens as
|
|
803
|
+
generic persona storage, a prompt template, or a runtime routing rule, and do
|
|
804
|
+
not create one when there is no Context Asset to interpret. See the
|
|
805
|
+
[Context Lens guide](context-lens.md) for the canonical decision model.
|
|
724
806
|
|
|
725
807
|
For a Skill, use platform-native authoring guidance before and after scaffolding.
|
|
726
808
|
File mode prints concise Skill-only next steps after the `Created` line. Prompt
|
|
@@ -751,7 +833,17 @@ workflow, constraints, and completion criteria with platform-native guidance;
|
|
|
751
833
|
apply only intended metadata or migration changes; run
|
|
752
834
|
`renma scan . --fail-on high`; fix relevant diagnostics; and rerun the scan.
|
|
753
835
|
Context Asset output does not receive this Skill-specific authoring guidance.
|
|
754
|
-
JSON
|
|
836
|
+
JSON adds `classification`, `decisionStatus`, structured `decision` evidence,
|
|
837
|
+
and safe `nextActions` to the existing suggestion fields. Each action has
|
|
838
|
+
`kind` and `invocation`; execute `invocation.command` with the exact
|
|
839
|
+
`invocation.args` array. `invocation.display` is for people and must not be
|
|
840
|
+
parsed as the machine contract, including on paths with spaces, quotes, or
|
|
841
|
+
Windows separators.
|
|
842
|
+
|
|
843
|
+
When no repository root resolves, `decisionStatus` is `blocked` and Renma does
|
|
844
|
+
not emit an executable `scan .` action. Establish the repository root with an
|
|
845
|
+
explicit root or repository marker before verification; the caller's current
|
|
846
|
+
directory is not assumed to contain the target.
|
|
755
847
|
|
|
756
848
|
For Skill targets using the pre-0.16 Renma Skill format, the 0.16.0 metadata
|
|
757
849
|
migration path is one-way: recognized governance and security frontmatter
|
|
@@ -759,6 +851,8 @@ becomes Agent Skills identity plus `metadata.renma.*`. Separately, `skill.md` an
|
|
|
759
851
|
report any required entrypoint rename or move, even when their frontmatter
|
|
760
852
|
already uses Agent Skills fields. For a canonical Agent Skill, `--owner` may
|
|
761
853
|
instead propose an owner metadata retrofit; it never causes reverse migration.
|
|
854
|
+
Skill migration `sourcePath` and `targetPath` values are repository-relative,
|
|
855
|
+
including when the user invokes Renma from the parent of a nested repository.
|
|
762
856
|
The normative behavior is documented in
|
|
763
857
|
[Agent Skills Compatibility and Migration](agent-skills-compatibility.md).
|
|
764
858
|
|
|
@@ -773,7 +867,35 @@ invalid evidence, confirm the Skill's intent with platform-native authoring
|
|
|
773
867
|
guidance, correct the source evidence, rerun `suggest-metadata`, then validate
|
|
774
868
|
intended corrections with `renma scan . --fail-on high`.
|
|
775
869
|
|
|
776
|
-
Owner metadata remains recommended but not required. Without `--owner`,
|
|
870
|
+
Owner metadata remains recommended but not required. Without `--owner`, Renma
|
|
871
|
+
does not invent an owner. With `--owner <owner>`, the command may include that
|
|
872
|
+
owner because it was explicitly provided. If an existing asset already
|
|
873
|
+
declares an owner, `suggest-metadata` preserves it; a different `--owner` value
|
|
874
|
+
is treated as conflicting evidence and blocks a candidate. Renma does not infer
|
|
875
|
+
owners from Git history, file paths, prose, or authors.
|
|
876
|
+
If the explicit owner equals the existing canonical `metadata.renma.owner`, the
|
|
877
|
+
result is `suggestedMode: "no-proposal"` with
|
|
878
|
+
`decisionStatus: "no-change-recommended"`; no candidate metadata, canonical
|
|
879
|
+
frontmatter, or patch instruction is emitted.
|
|
880
|
+
|
|
881
|
+
Ordinary Skill-local support returns `suggestedMode: "no-proposal"` and
|
|
882
|
+
`decisionStatus: "no-change-recommended"` when it can inherit governance from
|
|
883
|
+
one resolved parent Skill. Its `candidateMetadata` is empty. A missing or
|
|
884
|
+
ambiguous parent returns `decisionStatus: "blocked"`, leaves governance
|
|
885
|
+
unowned or unresolved, and provides a scan/layout action instead of claiming
|
|
886
|
+
inheritance. Existing explicit local owner or policy metadata is preserved
|
|
887
|
+
under `skill-local-existing-metadata-preserved`; an explicit `--owner` can still
|
|
888
|
+
request a supported intentional override after the parent resolves. Prompt and
|
|
889
|
+
JSON output both distinguish the observed path fact, deterministic
|
|
890
|
+
interpretation, recommendation, and remaining human decision. Repository tools
|
|
891
|
+
and unknown paths never receive fabricated Context metadata candidates.
|
|
892
|
+
|
|
893
|
+
`decisionStatus` is authoritative: `blocked` never authorizes a patch,
|
|
894
|
+
`no-change-recommended` stops without a patch, `human-confirmation-required`
|
|
895
|
+
identifies what must be confirmed before applying only the candidate fields,
|
|
896
|
+
and `deterministic` permits the reviewed candidate. Consumers should include a
|
|
897
|
+
conservative default for unknown future `suggestedMode` values rather than
|
|
898
|
+
assuming every non-`no-proposal` value is applicable.
|
|
777
899
|
|
|
778
900
|
### `suggest-semantic-split`
|
|
779
901
|
|
|
@@ -15,9 +15,11 @@ It includes:
|
|
|
15
15
|
[`SKILL.md`](skills/testing/spec-review/SKILL.md) with static required and
|
|
16
16
|
optional Lens relationships.
|
|
17
17
|
|
|
18
|
-
The Skill is a
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
The Skill is a complete focused workflow entrypoint: it defines selection
|
|
19
|
+
boundaries, inputs, ordered review steps, output, validation, and completion.
|
|
20
|
+
The Context Asset owns reusable boundary-value knowledge. Each Lens explains
|
|
21
|
+
how to interpret that knowledge for a particular purpose without copying it
|
|
22
|
+
into the Skill.
|
|
21
23
|
|
|
22
24
|
```text
|
|
23
25
|
Skill -> Context Lens -> Context Asset
|
|
@@ -71,6 +73,9 @@ Review the boundary-value Context for ambiguity and missing limits.
|
|
|
71
73
|
```
|
|
72
74
|
|
|
73
75
|
The supported Lens schema version is `1`; the supported scope is `context`.
|
|
76
|
+
Structural validity is only the starting point. A useful Lens also defines
|
|
77
|
+
concrete questions, risks, checks, evidence, and expected outputs. Persona-only
|
|
78
|
+
wording such as “Act as a senior QA engineer” is not sufficient by itself.
|
|
74
79
|
|
|
75
80
|
## Diagnostic Illustration
|
|
76
81
|
|
|
@@ -18,6 +18,10 @@ requires_human_approval: false
|
|
|
18
18
|
---
|
|
19
19
|
# Boundary Value Analysis
|
|
20
20
|
|
|
21
|
-
Boundary value analysis is reusable testing knowledge. It should stay as a base
|
|
21
|
+
Boundary value analysis is reusable testing knowledge. It should stay as a base
|
|
22
|
+
Context Asset because it can support spec review, test design, regression
|
|
23
|
+
planning, onboarding, and other Skills.
|
|
22
24
|
|
|
23
|
-
|
|
25
|
+
When several workflows need reusable purpose-specific interpretation, keep that
|
|
26
|
+
interpretation in Context Lenses instead of copying this knowledge into each
|
|
27
|
+
Skill. A Skill may reference this Context directly when no Lens adds value.
|
|
@@ -11,8 +11,15 @@ tags:
|
|
|
11
11
|
purpose: spec_review
|
|
12
12
|
applies_to:
|
|
13
13
|
- context.testing.boundary-value-analysis
|
|
14
|
-
focus:
|
|
15
|
-
|
|
14
|
+
focus:
|
|
15
|
+
- ambiguity
|
|
16
|
+
- missing boundary
|
|
17
|
+
- source of truth
|
|
18
|
+
- confirmation questions
|
|
19
|
+
expected_outputs:
|
|
20
|
+
- unresolved questions
|
|
21
|
+
- risk notes
|
|
22
|
+
- spec clarification suggestions
|
|
16
23
|
allowed_data:
|
|
17
24
|
- repo-local-files
|
|
18
25
|
network_allowed: false
|
|
@@ -22,8 +29,23 @@ requires_human_approval: false
|
|
|
22
29
|
---
|
|
23
30
|
# Spec Review Lens for Boundary Values
|
|
24
31
|
|
|
25
|
-
|
|
32
|
+
Interpret the applied boundary-value Context from the perspective of an
|
|
33
|
+
experienced QA reviewer responsible for finding specification risk before
|
|
34
|
+
implementation.
|
|
26
35
|
|
|
27
|
-
|
|
36
|
+
## Interpretation Criteria
|
|
28
37
|
|
|
29
|
-
|
|
38
|
+
- Determine whether each material limit has an exact value and an identified
|
|
39
|
+
source of truth.
|
|
40
|
+
- Check whether lower and upper bounds are inclusive or exclusive and whether
|
|
41
|
+
empty, zero, overflow, and retry-limit behavior is specified.
|
|
42
|
+
- Identify conflicting requirements, undefined ownership, and assumptions that
|
|
43
|
+
could lead implementations or tests to disagree.
|
|
44
|
+
- Distinguish documented facts from inferred behavior and unresolved decisions.
|
|
45
|
+
|
|
46
|
+
## Evidence And Output
|
|
47
|
+
|
|
48
|
+
Cite the specification section or repository source behind every conclusion.
|
|
49
|
+
Produce prioritized unresolved questions, risk notes, and clarification
|
|
50
|
+
suggestions. Do not duplicate the base Context, define the Skill workflow, or
|
|
51
|
+
turn this Lens into a prompt template.
|
|
@@ -11,8 +11,15 @@ tags:
|
|
|
11
11
|
purpose: test_design
|
|
12
12
|
applies_to:
|
|
13
13
|
- context.testing.boundary-value-analysis
|
|
14
|
-
focus:
|
|
15
|
-
|
|
14
|
+
focus:
|
|
15
|
+
- inclusive limits
|
|
16
|
+
- empty and zero values
|
|
17
|
+
- overflow behavior
|
|
18
|
+
- retry limits
|
|
19
|
+
expected_outputs:
|
|
20
|
+
- test cases
|
|
21
|
+
- edge-case checklist
|
|
22
|
+
- coverage notes
|
|
16
23
|
allowed_data:
|
|
17
24
|
- repo-local-files
|
|
18
25
|
network_allowed: false
|
|
@@ -22,8 +29,23 @@ requires_human_approval: false
|
|
|
22
29
|
---
|
|
23
30
|
# Test Design Lens for Boundary Values
|
|
24
31
|
|
|
25
|
-
|
|
32
|
+
Interpret the applied boundary-value Context for test design that provides
|
|
33
|
+
reviewable evidence of behavior at and around material limits.
|
|
26
34
|
|
|
27
|
-
|
|
35
|
+
## Interpretation Criteria
|
|
28
36
|
|
|
29
|
-
|
|
37
|
+
- Map each declared limit to cases below, at, and above the boundary when those
|
|
38
|
+
states are valid for the system.
|
|
39
|
+
- Distinguish inclusive from exclusive behavior and cover empty input, zero
|
|
40
|
+
values, overflow, maximum retries, and expected failure modes when applicable.
|
|
41
|
+
- Trace each proposed case to a stated requirement and identify any expected
|
|
42
|
+
result that the specification leaves unresolved.
|
|
43
|
+
- Prefer deterministic cases whose setup, assertion, and failure evidence can
|
|
44
|
+
distinguish product behavior from a test defect.
|
|
45
|
+
|
|
46
|
+
## Evidence And Output
|
|
47
|
+
|
|
48
|
+
Produce test cases, an edge-case checklist, and coverage notes with requirement
|
|
49
|
+
citations. Keep unresolved expected results explicit. Do not select runtime
|
|
50
|
+
Context, assemble a prompt, define the Skill workflow, or duplicate the base
|
|
51
|
+
Context.
|
|
@@ -19,7 +19,15 @@ metadata:
|
|
|
19
19
|
|
|
20
20
|
Use this skill to review a specification before implementation or test design.
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
This Skill owns the focused review workflow. The declared Context Asset owns
|
|
23
|
+
reusable boundary-value knowledge, and the declared Lenses own purpose-specific
|
|
24
|
+
interpretation of that knowledge.
|
|
25
|
+
|
|
26
|
+
## Selection Boundaries
|
|
27
|
+
|
|
28
|
+
Use this workflow when a specification needs evidence-backed analysis of
|
|
29
|
+
implementation or test-design boundaries. Do not use it to implement the
|
|
30
|
+
change, approve product decisions, or perform unrelated editorial review.
|
|
23
31
|
|
|
24
32
|
## Required Inputs
|
|
25
33
|
|
|
@@ -28,9 +36,28 @@ The skill stays thin. It declares the reusable base context and the purpose-orie
|
|
|
28
36
|
|
|
29
37
|
## Instructions
|
|
30
38
|
|
|
31
|
-
1.
|
|
32
|
-
|
|
33
|
-
|
|
39
|
+
1. Confirm that the supplied specification and its sources are available. If a
|
|
40
|
+
required source is missing, record the gap rather than inventing behavior.
|
|
41
|
+
2. Read the declared boundary-value Context Asset and the required spec-review
|
|
42
|
+
Lens. Apply the optional test-design Lens only when test coverage is also in
|
|
43
|
+
scope for the requested review.
|
|
44
|
+
3. Extract stated behavior, limits, assumptions, and sources from the supplied
|
|
45
|
+
specification. Keep facts separate from inferences and unresolved questions.
|
|
46
|
+
4. Apply the required Lens's interpretation criteria to the reusable Context.
|
|
47
|
+
Cite the reusable guidance where relevant instead of reproducing it in this
|
|
48
|
+
Skill or output.
|
|
49
|
+
5. Prioritize findings by implementation or release risk. Cite the relevant
|
|
50
|
+
specification section or repository evidence for every finding.
|
|
51
|
+
6. Produce the expected output below and leave decisions with the accountable
|
|
52
|
+
human owner.
|
|
53
|
+
|
|
54
|
+
## Expected Output
|
|
55
|
+
|
|
56
|
+
- A short scope and evidence summary.
|
|
57
|
+
- Prioritized unresolved questions and risk notes.
|
|
58
|
+
- Clarification suggestions tied to cited source gaps.
|
|
59
|
+
- The Context and Lens IDs applied, including why the optional Lens was or was
|
|
60
|
+
not used.
|
|
34
61
|
|
|
35
62
|
## When Not To Use
|
|
36
63
|
|
|
@@ -41,6 +68,8 @@ approval, or an editorial workflow for copy-only review.
|
|
|
41
68
|
|
|
42
69
|
- The output distinguishes known facts from open questions.
|
|
43
70
|
- The output cites the source-of-truth gaps it found.
|
|
71
|
+
- Each finding has an impact or risk and an evidence-backed rationale.
|
|
72
|
+
- Use of the optional Lens matches the requested review scope.
|
|
44
73
|
- The skill does not copy reusable testing guidance into this file.
|
|
45
74
|
|
|
46
75
|
## Completion Criteria
|