@shadowclone/cli 0.0.16 → 0.0.18
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/PRIVACY.md +1 -1
- package/README.md +32 -29
- package/dist/_.._/web/client/index.html +30 -45
- package/dist/shadowclone.js +1198 -527
- package/dist/web/index-25g5ahxa.css +1 -0
- package/dist/web/index-s4mjwgw0.js +134 -0
- package/evals.md +117 -267
- package/package.json +10 -10
- package/plugins/shadowclone/.claude-plugin/plugin.json +1 -1
- package/plugins/shadowclone/.codex-plugin/plugin.json +1 -1
- package/plugins/shadowclone/plugin.json +1 -1
- package/skills/choose-by-consequence/SKILL.md +66 -0
- package/skills/design-deep-modules/SKILL.md +32 -13
- package/skills/diagnose-before-editing/SKILL.md +38 -15
- package/skills/plan-with-review-page/SKILL.md +73 -0
- package/skills/plan-with-review-page/assets/review-page.html +160 -0
- package/skills/plan-with-review-page/scripts/validate-page.mjs +158 -0
- package/skills/research-primary-sources/SKILL.md +32 -12
- package/skills/resolve-conflicts-by-intent/SKILL.md +34 -13
- package/skills/scope-confirmed-changes/SKILL.md +44 -12
- package/skills/shadowclone-work/SKILL.md +29 -20
- package/skills/tests-that-catch-bugs/SKILL.md +73 -0
- package/skills/typescript-type-safety/SKILL.md +32 -14
- package/skills/verify-and-review/SKILL.md +40 -14
- package/skills/verify-review-findings/SKILL.md +59 -0
- package/skills/write-plain-english/SKILL.md +58 -0
- package/skills/write-plain-english/scripts/check-ste.mjs +200 -0
- package/dist/web/index-dzztba9n.css +0 -1
- package/dist/web/index-s1e5043w.js +0 -134
- package/skills/prove-regression-tests/SKILL.md +0 -31
- package/skills/testing-first/SKILL.md +0 -33
- package/skills/testing-risk-based/SKILL.md +0 -32
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: prove-regression-tests
|
|
3
|
-
description: Prove that a regression test detects the defect it claims to guard by temporarily removing or inverting the enforcing change. Use when adding a test for a confirmed bug or review finding.
|
|
4
|
-
metadata:
|
|
5
|
-
shadowclone-category: testing
|
|
6
|
-
shadowclone-section: workflow
|
|
7
|
-
shadowclone-applies-when: adding a regression test for a confirmed defect
|
|
8
|
-
---
|
|
9
|
-
# Prove Regression Tests
|
|
10
|
-
|
|
11
|
-
## Use when
|
|
12
|
-
|
|
13
|
-
A confirmed defect has a focused test and a fix. Verify that the test can detect the original failure.
|
|
14
|
-
|
|
15
|
-
## Process
|
|
16
|
-
|
|
17
|
-
1. Identify the smallest production change that enforces the fix.
|
|
18
|
-
2. Temporarily invert it to restore the defect while keeping the code compilable.
|
|
19
|
-
3. Print the changed lines with file and line numbers. Run the narrow test and confirm its assertion fails on the original symptom.
|
|
20
|
-
4. If it passes or fails for another reason, improve the test before claiming coverage.
|
|
21
|
-
5. Restore and display the enforcing lines, then rerun the same test and affected suite.
|
|
22
|
-
|
|
23
|
-
## Guardrails
|
|
24
|
-
|
|
25
|
-
Keep the mutation local and reversible. Preserve unrelated work and avoid destructive Git operations. Mutate production behavior, not the assertion.
|
|
26
|
-
|
|
27
|
-
A setup error, compilation failure, timeout, or unrelated assertion does not prove the regression. Restore the code before starting other work. Broaden the proof only when the fix covers distinct public behaviors.
|
|
28
|
-
|
|
29
|
-
## Completion
|
|
30
|
-
|
|
31
|
-
The visible inverse fails the intended assertion, restoration passes, and the final diff contains no proof mutation.
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: testing-first
|
|
3
|
-
description: Build observable behavior through a red-green cycle at a stable public seam. Use when the user asks for test-first work, TDD, or a regression test before implementation.
|
|
4
|
-
metadata:
|
|
5
|
-
shadowclone-category: testing
|
|
6
|
-
shadowclone-section: engineering
|
|
7
|
-
shadowclone-applies-when: changing observable behavior with a test-first workflow
|
|
8
|
-
shadowclone-axis: testing-approach
|
|
9
|
-
---
|
|
10
|
-
# Test First Through a Public Seam
|
|
11
|
-
|
|
12
|
-
## Use when
|
|
13
|
-
|
|
14
|
-
Following a test-first workflow for behavior that a caller can observe. Settle the intended interface before choosing test structure.
|
|
15
|
-
|
|
16
|
-
## Process
|
|
17
|
-
|
|
18
|
-
1. State one behavior as concrete input and observable output.
|
|
19
|
-
2. Write a test through the narrowest stable caller interface, using an expected result obtained independently of the implementation.
|
|
20
|
-
3. Run it and confirm it fails because the behavior is missing or wrong.
|
|
21
|
-
4. Implement the smallest complete slice that makes it pass, including every required layer.
|
|
22
|
-
5. Repeat for the next behavior once the current test is green.
|
|
23
|
-
6. Run affected checks and remove code justified only by an unwritten future test.
|
|
24
|
-
|
|
25
|
-
## Guardrails
|
|
26
|
-
|
|
27
|
-
Keep each cycle to one behavioral claim; several assertions can describe that outcome. Prefer real collaborators inside the module and replace dependencies only at established external boundaries.
|
|
28
|
-
|
|
29
|
-
Do not weaken an assertion to make a failing implementation pass. If harmless refactoring breaks a test without changing behavior, move it to a more stable interface. Avoid recreating the production calculation to derive expected values.
|
|
30
|
-
|
|
31
|
-
## Completion
|
|
32
|
-
|
|
33
|
-
Requested behaviors have tests observed failing first, implementation passes through public interfaces, and affected checks pass.
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: testing-risk-based
|
|
3
|
-
description: Select tests from concrete regression risk instead of applying test-first work to every edit. Use for changes where the user wants proportional coverage or where existing behavior may regress.
|
|
4
|
-
metadata:
|
|
5
|
-
shadowclone-category: testing
|
|
6
|
-
shadowclone-section: engineering
|
|
7
|
-
shadowclone-applies-when: changing observable behavior with proportional test coverage
|
|
8
|
-
shadowclone-axis: testing-approach
|
|
9
|
-
---
|
|
10
|
-
# Test Where Behavior Is at Risk
|
|
11
|
-
|
|
12
|
-
## Use when
|
|
13
|
-
|
|
14
|
-
Choosing coverage in proportion to a change's possible consequences.
|
|
15
|
-
|
|
16
|
-
## Process
|
|
17
|
-
|
|
18
|
-
1. Identify affected behavior and callers. Rank risks by consequence, likelihood, and existing coverage.
|
|
19
|
-
2. Read nearby tests for the established public interface and fixture style.
|
|
20
|
-
3. Cover material gaps with the smallest fixture that crosses the real failure boundary.
|
|
21
|
-
4. Run focused tests and the repository checks covering affected consumers.
|
|
22
|
-
5. Define any necessary manual check with its setup, action, and expected result, then report what remains unverified.
|
|
23
|
-
|
|
24
|
-
## Guardrails
|
|
25
|
-
|
|
26
|
-
Prioritize state changes, permissions, persistence, parsing, routing, and public contracts. Reuse existing coverage when it already detects the regression.
|
|
27
|
-
|
|
28
|
-
Skip tests that mirror private branches or assert reversible text and styling changes unless those details are a supported contract. Keep expected results independent of production calculations and avoid redundant cases for the same risk.
|
|
29
|
-
|
|
30
|
-
## Completion
|
|
31
|
-
|
|
32
|
-
Each material risk has a meaningful automated or manual check, selected checks have run, and remaining uncertainty is explicit.
|