opencode-skills-collection 4.1.2 → 4.1.4
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.
Potentially problematic release.
This version of opencode-skills-collection might be problematic. Click here for more details.
- package/bundled-skills/.antigravity-install-manifest.json +31 -1
- package/bundled-skills/ai-agent-evaluation-benchmarking/SKILL.md +124 -0
- package/bundled-skills/ai-agent-tool-routing/SKILL.md +136 -0
- package/bundled-skills/ai-code-generation-guardrails/SKILL.md +142 -0
- package/bundled-skills/ai-prompt-regression-testing/SKILL.md +130 -0
- package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +26 -8
- package/bundled-skills/cline-pilot/README.md +138 -0
- package/bundled-skills/cline-pilot/SKILL.md +301 -0
- package/bundled-skills/cline-pilot/assets/global-memory-bank-prompt.en.md +66 -0
- package/bundled-skills/cline-pilot/assets/global-memory-bank-prompt.md +56 -0
- package/bundled-skills/cline-pilot/references/cold-start.md +58 -0
- package/bundled-skills/cline-pilot/references/decision-log.example.md +9 -0
- package/bundled-skills/cline-pilot/references/local-config.example.md +26 -0
- package/bundled-skills/cline-pilot/references/project-profiles.example.md +10 -0
- package/bundled-skills/cline-pilot/scripts/session_report.py +151 -0
- package/bundled-skills/cross-chain-relayer-audit/SKILL.md +136 -0
- package/bundled-skills/deep-research-framework/SKILL.md +81 -0
- package/bundled-skills/defi-yield-strategy-allocator/SKILL.md +124 -0
- package/bundled-skills/dropthehassle-publish/SKILL.md +151 -0
- package/bundled-skills/five-axis-code-review/SKILL.md +78 -0
- package/bundled-skills/git-commit-message/SKILL.md +76 -0
- package/bundled-skills/idea-to-blueprint/LICENSE +21 -0
- package/bundled-skills/idea-to-blueprint/SKILL.md +260 -0
- package/bundled-skills/idea-to-blueprint/assets/AGENTS.md.template +38 -0
- package/bundled-skills/idea-to-blueprint/assets/CLAUDE.md.template +38 -0
- package/bundled-skills/idea-to-blueprint/assets/DECISIONS.md.template +14 -0
- package/bundled-skills/idea-to-blueprint/assets/PROGRESS.md.template +47 -0
- package/bundled-skills/idea-to-blueprint/assets/session-prompt.md +23 -0
- package/bundled-skills/idea-to-blueprint/references/architecture-decisions.md +202 -0
- package/bundled-skills/idea-to-blueprint/references/blueprint-template.md +259 -0
- package/bundled-skills/idea-to-blueprint/references/code-quality-and-review.md +216 -0
- package/bundled-skills/idea-to-blueprint/references/design-minimal.md +96 -0
- package/bundled-skills/idea-to-blueprint/references/edge-case-catalog.md +239 -0
- package/bundled-skills/idea-to-blueprint/references/intake-questions.md +105 -0
- package/bundled-skills/idea-to-blueprint/references/research-protocol.md +196 -0
- package/bundled-skills/idea-to-blueprint/references/session-protocol.md +133 -0
- package/bundled-skills/idea-to-blueprint/references/stories-ac-tests.md +194 -0
- package/bundled-skills/idea-to-blueprint/references/ux-writing-guide.md +128 -0
- package/bundled-skills/idea-to-blueprint/scripts/lint_blueprint.py +460 -0
- package/bundled-skills/liuguang-banlan-ui/SKILL.md +22 -18
- package/bundled-skills/liuguang-banlan-ui/assets/starter/launcher.css +2 -2
- package/bundled-skills/liuguang-banlan-ui/assets/starter/obsidian/index.html +5 -4
- package/bundled-skills/liuguang-banlan-ui/assets/starter/obsidian/theme-config.js +3 -10
- package/bundled-skills/liuguang-banlan-ui/assets/starter/obsidian/theme.css +48 -62
- package/bundled-skills/liuguang-banlan-ui/assets/starter/opal/index.html +5 -4
- package/bundled-skills/liuguang-banlan-ui/assets/starter/opal/theme-config.js +27 -35
- package/bundled-skills/liuguang-banlan-ui/assets/starter/opal/theme.css +48 -62
- package/bundled-skills/liuguang-banlan-ui/assets/starter/shared/spectral-field.js +135 -148
- package/bundled-skills/liuguang-banlan-ui/references/style-contract.md +26 -7
- package/bundled-skills/liuguang-banlan-ui/references/verification.md +19 -7
- package/bundled-skills/liuguang-banlan-ui/scripts/measure_preview.py +78 -47
- package/bundled-skills/liuguang-banlan-ui/scripts/serve_preview.py +35 -0
- package/bundled-skills/liuguang-banlan-ui/scripts/validate_manifest.py +34 -3
- package/bundled-skills/liuguang-banlan-ui/tests/test_measure_preview.py +119 -0
- package/bundled-skills/liuguang-banlan-ui/tests/test_serve_preview.py +38 -0
- package/bundled-skills/liuguang-banlan-ui/tests/test_validate_manifest.py +73 -0
- package/bundled-skills/loki-mode/examples/todo-app-generated/frontend/package-lock.json +12 -12
- package/bundled-skills/loki-mode/examples/todo-app-generated/frontend/package.json +1 -1
- package/bundled-skills/meeting-notes/SKILL.md +80 -0
- package/bundled-skills/repo-foundation/SKILL.md +166 -0
- package/bundled-skills/repo-foundation/references/LICENSE.md +21 -0
- package/bundled-skills/repo-foundation/references/bootstrap.md +63 -0
- package/bundled-skills/repo-foundation/references/companion.md +9 -0
- package/bundled-skills/repo-foundation/references/continuity.md +50 -0
- package/bundled-skills/repo-foundation/references/evolution.md +60 -0
- package/bundled-skills/repo-foundation/references/migration-examples.md +53 -0
- package/bundled-skills/repo-foundation/references/shared-contracts.md +48 -0
- package/bundled-skills/repo-foundation/references/verification.md +50 -0
- package/bundled-skills/repo-native-refactor/SKILL.md +225 -0
- package/bundled-skills/repo-native-refactor/references/LICENSE.md +21 -0
- package/bundled-skills/repo-native-refactor/references/deterministic-tooling.md +101 -0
- package/bundled-skills/repo-native-refactor/references/error-reliability.md +117 -0
- package/bundled-skills/repo-native-refactor/references/finding-taxonomy.md +181 -0
- package/bundled-skills/repo-native-refactor/references/refactor-examples.md +77 -0
- package/bundled-skills/repo-native-refactor/references/repository-prose.md +157 -0
- package/bundled-skills/repo-native-refactor/references/repository-rehabilitation.md +94 -0
- package/bundled-skills/repo-native-refactor/references/semantic-risk.md +187 -0
- package/bundled-skills/repo-native-refactor/references/shared-contracts.md +48 -0
- package/bundled-skills/repo-native-refactor/references/testing-integrity.md +103 -0
- package/bundled-skills/smart-contract-formal-verification/SKILL.md +136 -0
- package/bundled-skills/smart-contract-upgrade-governance/SKILL.md +130 -0
- package/bundled-skills/soroban-contract-audit/SKILL.md +136 -0
- package/bundled-skills/soroban-liquidity-pool/SKILL.md +118 -0
- package/bundled-skills/soroban-oracle-data-feed-audit/SKILL.md +118 -0
- package/bundled-skills/soroban-storage-ttl-lifecycle/SKILL.md +118 -0
- package/bundled-skills/soroban-token-minter/SKILL.md +124 -0
- package/bundled-skills/stellar-anchor-integration/SKILL.md +136 -0
- package/bundled-skills/stellar-asset-clawback-compliance/SKILL.md +118 -0
- package/bundled-skills/stellar-escrow-timelock/SKILL.md +118 -0
- package/bundled-skills/stellar-multisig-threshold-coordinator/SKILL.md +112 -0
- package/bundled-skills/tech-writing-proofread/SKILL.md +78 -0
- package/bundled-skills/typescript-expert/scripts/ts_diagnostic.py +40 -19
- package/bundled-skills/waf-setup/SKILL.md +1 -1
- package/bundled-skills/web3-rate-limiting-circuit-breaker/SKILL.md +130 -0
- package/bundled-skills/web3-transaction-relayer-pool/SKILL.md +124 -0
- package/bundled-skills/youtube-summarizer/SKILL.md +3 -3
- package/bundled-skills/zk-proof-verification-pipeline/SKILL.md +124 -0
- package/package.json +1 -1
- package/skills_index.json +1059 -0
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: repo-foundation
|
|
3
|
+
description: "Implement features, fixes, modules, contract migrations, and resumed work while preserving user edits and authorized public contracts."
|
|
4
|
+
category: development
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/Natchannnn/repository-engineering-skills
|
|
7
|
+
source_repo: Natchannnn/repository-engineering-skills
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: "2026-09-30"
|
|
10
|
+
author: Natchannnn
|
|
11
|
+
tags: [repository-engineering, feature-development, contract-migration, continuity]
|
|
12
|
+
tools: [codex]
|
|
13
|
+
license: MIT
|
|
14
|
+
license_source: https://github.com/Natchannnn/repository-engineering-skills/blob/e55b378158d5134a77af3b8dace4a2a1b17e41e2/LICENSE
|
|
15
|
+
metadata:
|
|
16
|
+
version: "0.3.0"
|
|
17
|
+
license: "MIT"
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Repo foundation
|
|
21
|
+
|
|
22
|
+
## When to Use
|
|
23
|
+
|
|
24
|
+
- Use when the user asks to add a feature, fix a bug, or start a module in an existing project.
|
|
25
|
+
- Use when establishing the minimum foundation for a new repository or subsystem.
|
|
26
|
+
- Use when requirements authorize a schema, public-contract, ownership, or architecture migration.
|
|
27
|
+
- Use when resuming unfinished work or reconciling stale notes with repository evidence.
|
|
28
|
+
|
|
29
|
+
Build on a foundation that's just big enough, add features on top of it, and change the architecture only when requirements force it. Aim for the least total rework.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Core principles
|
|
34
|
+
|
|
35
|
+
- **No universal dogma:** don't impose a layout, error pattern, or framework the project doesn't need. Plain standard library is fine.
|
|
36
|
+
- **Scope, baseline, and user work:**
|
|
37
|
+
- Establish a clean baseline before mutating code: use the pre-existing revision/commit when Git exists; use a file inventory or snapshot when uninitialized or greenfield.
|
|
38
|
+
- In a dirty workspace, protect pre-existing uncommitted user modifications. You may edit distinct parts of the same file as long as user work is preserved. Stop and ask only if there is an actual collision or ambiguous intent.
|
|
39
|
+
- Never create commits or force Git initialization solely for handoff or tracking.
|
|
40
|
+
- Reuse conventions only with healthy repository precedent. Don't treat accidental patterns or temporary workarounds as precedent, and don't expand into out-of-scope cleanup.
|
|
41
|
+
- Don't push, publish, deploy, change branch protection, install system hooks, or buy anything unless the user asks.
|
|
42
|
+
- **Prose, naming, and restraint:**
|
|
43
|
+
- Names reflect business domain concepts and ownership.
|
|
44
|
+
- Add comments only for information code cannot express: grounded rationale, non-obvious invariants, units, rounding, ordering, protocol quirks, or compatibility.
|
|
45
|
+
- Do not narrate syntax; do not invent tickets, incidents, owners, or production histories.
|
|
46
|
+
- Treat error and CLI text as contract surface: check callers and parsers before rewording.
|
|
47
|
+
- Never invent ticket, PR, or incident references. An inaccessible or unverified reference is not evidence of fabrication. Preserve existing references unless repository evidence establishes that they are incorrect or obsolete; report material uncertainty instead of deleting them.
|
|
48
|
+
- Do not strip valuable comments merely for cosmetic brevity; do not enforce arbitrary comment ratios.
|
|
49
|
+
- Do not add abstractions, wrappers, or factory layers without concrete ownership, contract, or test seam needs.
|
|
50
|
+
- **Preserve consumed public contracts** as defined in `references/shared-contracts.md` §1: keep documented types, values, errors, and serialization. Change a contract only when the task clearly authorizes it, then update callers, tests, and docs in scope.
|
|
51
|
+
- **Verification rigor & proportionate testing:**
|
|
52
|
+
- Record baseline failures and distinguish: (1) pre-existing failures outside scope, (2) in-scope failures to fix, (3) regressions from current changes, and (4) environment errors.
|
|
53
|
+
- Verify the final code state; never use pre-cleanup test results to certify modified code.
|
|
54
|
+
- Add or update persistent tests when a change introduces behavior, fixes a defect, alters a contract, or exposes a meaningful coverage gap. Prefer the repository's existing test framework and structure. Do not add tests solely for file-count or coverage optics. For documentation-only or mechanically verified changes, use the relevant lightweight checks and explain any material verification gap.
|
|
55
|
+
- Check every requirement before you say you're done. Say what you verified, what you only read, and what you assumed. A command that exits 0 doesn't count if the file it should make isn't there.
|
|
56
|
+
- **Failure invariants & state preservation:** if an operation can fail halfway, decide what must stay untouched. Validate inputs and ownership first, build the replacement on the side, keep the old state until the new one is ready, and test the failure boundary.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Mode selection
|
|
61
|
+
|
|
62
|
+
| Mode | Trigger | Core Actions | Exit Criteria |
|
|
63
|
+
|---|---|---|---|
|
|
64
|
+
| **Bootstrap** | New repository from scratch or an area lacking minimal foundation (no build/test/run commands, conventions, or boundaries). | Elicit critical constraints, choose just-enough design, set up minimal tooling/checks, implement and verify the first representative slice. Read [bootstrap](references/bootstrap.md). | Representative slice works and is verified; run/build commands are documented; repo is stable for subsequent work. |
|
|
65
|
+
| **Continue** | Adding a feature, bugfix, or improvement on an existing, fitting foundation. | Determine owning domain and boundary, implement changes, run proportionate checks, and review diff. Executable directly from core. | Task requirements are met; diff is reviewed; intentional contract changes are verified (or existing contracts preserved); remaining limitations are stated. |
|
|
66
|
+
| **Evolve** | New requirements alter core contracts, ownership, boundaries, or architecture; or adopting a repo with conflicting conventions. | Assess blast radius, execute controlled migration, update evidence, tests, and documentation. Read [evolution](references/evolution.md). | Transition is verified; new contracts are operational; instructions and documentation align with code. |
|
|
67
|
+
|
|
68
|
+
Adopting an existing repository begins with mode selection; do not default to re-bootstrapping. If the repository already has working instructions, tooling, and conventions, reuse them. If a specific subsystem lacks a foundation, establish only what that subsystem requires.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Continue workflow (Core)
|
|
73
|
+
|
|
74
|
+
Routine feature work runs straight from the mode above plus core principles, no extra reference needed:
|
|
75
|
+
|
|
76
|
+
### 1. Scope and baseline
|
|
77
|
+
Confirm the user's objective, observable consequences, affected boundaries, baseline revision/inventory, and any uncommitted user changes to preserve.
|
|
78
|
+
|
|
79
|
+
### 2. Implement just enough
|
|
80
|
+
- **Assumptions vs. product decisions:** choose conventional, reversible defaults (directory layout, helper naming, standard library choices) on your own. Bundle product and architectural decisions (external dependencies, data schema changes, new auth schemes) into one question before breaking anything.
|
|
81
|
+
- **Intentional contract changes** occur when a task explicitly requires changing a contract, so verify that callers and tests reflect the new contract rather than forcing deprecated behavior.
|
|
82
|
+
|
|
83
|
+
### 3. Verify proportionately
|
|
84
|
+
- **Lightweight path (low risk):** routine bug fixes and localized edits inside established boundaries. Keep scope tight and run relevant mechanical checks (syntax, linter, affected unit tests). Skip automatic secondary review passes unless concrete unresolved concerns warrant one; an explicit review request still applies.
|
|
85
|
+
- **High-risk changes:** a single line touching authorization, permissions, data migrations, cryptography, persistence lifecycles, or concurrency can do serious damage. Read [verification](references/verification.md) before designing checks.
|
|
86
|
+
|
|
87
|
+
### 4. Continuity and state
|
|
88
|
+
- **Implementation vs. requirements:** existing code shows current behavior. That is not proof of meeting requirements, and passing tests don't guarantee completeness if acceptance was never tested.
|
|
89
|
+
- **Reconciliation:** use the evidence hierarchy to guide investigation, not to settle contradictions for you. If requirements, docs, callers, and tests disagree, reconcile them before changing the contract. If notes and code disagree, check requirements and tests; don't edit the notes to match the code.
|
|
90
|
+
- **Tracking:** reuse issue trackers and project notes. Don't create handoff files for routine features.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Companion Coordination (`repo-native-refactor`)
|
|
95
|
+
|
|
96
|
+
Use at most one companion pass when the user requests review, concrete unresolved concerns remain, or a substantial contract, ownership, or semantic change warrants a scoped audit. Lightweight fixes do not trigger an automatic pass. Read [references/companion.md](references/companion.md) when a pass is warranted; finish normally if the companion is unavailable. Rerun affected checks after its edits; same-agent self-review is not independent review.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Reference routing
|
|
101
|
+
|
|
102
|
+
Read supporting references only when the corresponding trigger occurs:
|
|
103
|
+
|
|
104
|
+
- **[references/bootstrap.md](references/bootstrap.md):** Read in **Bootstrap mode** to establish a new repository, set up minimal tooling, and build the first representative slice.
|
|
105
|
+
- **[references/evolution.md](references/evolution.md):** Read in **Evolve mode** to assess blast radius, handle breaking contract changes, or reconcile conflicting conventions.
|
|
106
|
+
- **[references/continuity.md](references/continuity.md):** Read when resuming work across sessions, taking over a repository, or reconciling stale notes with code reality.
|
|
107
|
+
- **[references/verification.md](references/verification.md):** Read when designing checks for greenfield code, high-risk boundaries (auth, data loss, concurrency), or weak test suites.
|
|
108
|
+
- **[references/shared-contracts.md](references/shared-contracts.md):** Canonical contract + evidence hierarchy + final-state rule. Read when touching any public interface, reconciling conflicting requirements, or certifying completion.
|
|
109
|
+
- **[references/migration-examples.md](references/migration-examples.md):** Atomic vs transitional migration patterns. Read in Evolve mode before mutating persisted state.
|
|
110
|
+
- **[references/companion.md](references/companion.md):** Full companion coordination (roles, handoff, loop limits). Read when planning a refactor pass with `repo-native-refactor`.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Examples
|
|
115
|
+
|
|
116
|
+
### Add a feature on an existing foundation
|
|
117
|
+
|
|
118
|
+
```text
|
|
119
|
+
Use repo-foundation to add pagination to this project's existing search endpoint.
|
|
120
|
+
Preserve the current default response and my uncommitted changes. Reuse the
|
|
121
|
+
project's conventions, add relevant regression coverage, and verify the final diff.
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Select Continue mode, inspect the endpoint's callers and baseline checks, implement
|
|
125
|
+
the smallest compatible change, and report the checks actually performed.
|
|
126
|
+
|
|
127
|
+
### Migrate an authorized persisted contract
|
|
128
|
+
|
|
129
|
+
```text
|
|
130
|
+
Use repo-foundation to migrate our local JSON store from schema v1 to v2.
|
|
131
|
+
Update the in-scope callers and tests. A failed migration must leave the existing
|
|
132
|
+
store intact; verify that failure boundary before reporting completion.
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Select Evolve mode and read the migration and verification references before
|
|
136
|
+
changing persisted state. Establish the authorized target schema and verify the
|
|
137
|
+
transition, including failure-state preservation.
|
|
138
|
+
|
|
139
|
+
## Limitations
|
|
140
|
+
|
|
141
|
+
- Repository instructions and actual callers are required to establish local contracts; the skill cannot infer missing product requirements reliably.
|
|
142
|
+
- Atomic replacement examples depend on the target filesystem and do not establish crash durability on every platform.
|
|
143
|
+
- Relevant passing checks establish only their exercised scope; they do not prove that all requirements or failure modes are covered.
|
|
144
|
+
- Companion review is optional when unavailable; same-agent self-review is not independent review.
|
|
145
|
+
|
|
146
|
+
## Security & Safety Notes
|
|
147
|
+
|
|
148
|
+
This skill can edit source files and guide state migrations, so its declared risk
|
|
149
|
+
is `critical` under this collection's state-modification classification. Work only
|
|
150
|
+
within the user's authorized repository and task scope, preserve existing user
|
|
151
|
+
changes, and establish failure invariants before changing persisted data. Routine
|
|
152
|
+
implementation authority does not authorize pushing, publishing, deploying,
|
|
153
|
+
changing branch protection, installing system hooks, or purchases.
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## When NOT to Use
|
|
158
|
+
|
|
159
|
+
- **Trivial edits:** Skip this skill for typos, isolated script adjustments, or formatting-only changes: the overhead is not worth it.
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
## Source & License
|
|
163
|
+
|
|
164
|
+
Adapted from [Natchannnn/repository-engineering-skills](https://github.com/Natchannnn/repository-engineering-skills/tree/e55b378158d5134a77af3b8dace4a2a1b17e41e2).
|
|
165
|
+
The original MIT copyright notice and license are retained in [references/LICENSE.md](references/LICENSE.md).
|
|
166
|
+
Collection adaptations add metadata, explicit triggers, interaction examples, limitations, and safety notes; the core workflow and supporting reference instructions are retained.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Natchannnn
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Bootstrap: establishing foundation and initial slice
|
|
2
|
+
|
|
3
|
+
> Field note: I used to scaffold full layered dirs on day one. Deleted most of it. Now I ship one slice first.
|
|
4
|
+
|
|
5
|
+
Use this reference when starting a new repository from scratch or when setting up an area of an existing repository that lacks minimal tooling, conventions, or architecture.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 1. Minimal inputs and scoping
|
|
10
|
+
|
|
11
|
+
Before generating code or directory structures, establish the critical constraints.
|
|
12
|
+
First: what should the software actually do for an outside observer (CLI command, HTTP endpoint, UI component, library export, worker process)? Second: hard constraints (language, runtime, frameworks, persistence, external services, anything operational the user asked for). Third, sort decisions into two piles.
|
|
13
|
+
Reversible assumptions cover directory structure, utility naming, standard library picks, and helper layout. Choose conventionally on your own. Don't ask permission for every folder or variable name.
|
|
14
|
+
Product decisions cover persistence store, auth architecture, vendors, and breaking domain rules. Bundle missing product decisions into one short question before implementing.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 2. The first representative slice
|
|
19
|
+
|
|
20
|
+
Avoid horizontal layering without working behavior. Do not generate empty directories, unused interfaces, speculative repositories, or generic wrappers that serve no active flow.
|
|
21
|
+
|
|
22
|
+
Build a single, real, end-to-end slice that crosses the system's primary architectural boundaries. The shapes below are illustrative examples, not mandatory architectures:
|
|
23
|
+
|
|
24
|
+
| Project Type | Example Slice Shape (Illustrative) |
|
|
25
|
+
|---|---|
|
|
26
|
+
| **CLI Tool** | Input parsing (flags/arguments) → core logic → observable output and exit status. (A simple tool does not require multiple internal layers). |
|
|
27
|
+
| **API / Service** | Request intake → route handler → domain logic/validation → response. (Persistence is included only if the service actually requires state; stateless services, proxies, and aggregators do not need persistence layers). |
|
|
28
|
+
| **Web / UI** | User interaction/event → state transition/store update → observable UI rendering (including empty/loading/error states). |
|
|
29
|
+
| **Library / Package** | Public API export → core implementation → return value / error handling. (Libraries do not need an app server or startup daemon). |
|
|
30
|
+
| **Worker / Job** | Task intake/deserialization → business processing → outcome persistence, acknowledgment, or retry handling. |
|
|
31
|
+
|
|
32
|
+
Verify both the successful path and meaningful domain failure modes (e.g., validation failure, not found, unauthenticated).
|
|
33
|
+
|
|
34
|
+
If external integrations cannot be run locally, simulated stubs are permitted only when explicitly acknowledged; never describe a mock integration as real.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 3. Tooling and instructions setup
|
|
39
|
+
|
|
40
|
+
Establish the minimal commands necessary for an agent or developer to run and verify the project using stack-native configuration:
|
|
41
|
+
|
|
42
|
+
1. **Native configuration:** Place commands in standard stack files (`package.json`, `pyproject.toml`, `Makefile`, `Cargo.toml`, `go.mod`, etc.).
|
|
43
|
+
2. **Commands fit the project type:**
|
|
44
|
+
- Run/start command for local execution (only when applicable; libraries and utility packages do not need a start command).
|
|
45
|
+
- Test command executing automated checks.
|
|
46
|
+
- Lint/format command if idiomatic to the stack.
|
|
47
|
+
3. **Instructions handling:**
|
|
48
|
+
- If the repository already has an instructions file (e.g., `AGENTS.md` or `README.md`), update it minimally only if needed to record new commands or invariants. Never overwrite or recreate existing instructions just because you are in Bootstrap mode.
|
|
49
|
+
- If no instructions file exists and the host/workflow uses one, create a concise file (around 300–700 tokens) pointing to commands and noting key constraints.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## 4. Establishing reference code
|
|
54
|
+
|
|
55
|
+
Code created during bootstrap serves as precedent for future development only when it satisfies all of the following:
|
|
56
|
+
|
|
57
|
+
1. **Traceable:** Directly satisfies a concrete user requirement or contract.
|
|
58
|
+
2. **Observable verification:** Accompanied by automated checks whose expected values reflect business outcomes rather than copying internal implementation details.
|
|
59
|
+
3. **Appropriate ownership and dependencies:** Modules have clear responsibilities and dependency directions suited to the chosen architecture and actual project requirements, without forcing unnecessary layers (e.g., transport/domain/persistence separation is not required for a small CLI, library, or script).
|
|
60
|
+
4. **No unexplained debt:** Contains no unexplained workarounds, commented-out dead code, or temporary hacks.
|
|
61
|
+
5. **Bounded scope:** If a convention applies only to a specific module, document it as module-local rather than an overarching repository standard.
|
|
62
|
+
|
|
63
|
+
No code pattern is permanently "golden." When requirements change or architecture evolves, update reference paths rather than maintaining obsolete conventions.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Companion Coordination (`repo-native-refactor`)
|
|
2
|
+
|
|
3
|
+
Read this when a meaningful checkpoint is done and you consider one cleanup pass.
|
|
4
|
+
|
|
5
|
+
- **Complementary roles:** Foundation builds, implements, and adapts; Refactor audits, tightens prose, removes residue, and aligns conventions within scope. Foundation does not reimplement refactor's taxonomy or risk bands; Refactor does not revert intentional, requested behavioral changes.
|
|
6
|
+
- **Discovery and fallback:** Locate companion through host-supported discovery only; do not hardcode paths, download, or assume mentioning the name triggers execution. Foundation operates fully without companion. Mention its absence only when that leaves a requested review incomplete. Same-agent self-review is not independent review.
|
|
7
|
+
- **Invocation timing:** Use a pass when the user requests review or a substantial contract, ownership, or semantic change warrants a scoped audit. Skip automatic passes for lightweight fixes unless concrete unresolved concerns warrant one; an explicit review request still applies.
|
|
8
|
+
- **Minimal handoff contract:** Transfer objective/scope/intentional changes, baseline & user changes, contracts & precedents, check status & limitations from existing context without creating handoff files.
|
|
9
|
+
- **Post-cleanup and loop limits:** Rerun affected checks on final code state after refactor edits. Perform at most one refactor pass per checkpoint by default; iterate only on concrete findings or failing checks. If a product decision is missing, ask the user; do not guess or unilaterally redesign.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Continuity: session handover and reconciling state
|
|
2
|
+
|
|
3
|
+
Use this reference when resuming work in a new session, taking over a repository, or when recorded notes disagree with the actual codebase.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Reconciling notes with code reality
|
|
8
|
+
|
|
9
|
+
When taking over an ongoing project, compare documented status with the actual state of the working tree.
|
|
10
|
+
|
|
11
|
+
Code shows what the software does right now. That alone doesn't prove it meets the requirements or acceptance criteria.
|
|
12
|
+
|
|
13
|
+
When notes and code conflict, cross-check requirements and tests first.
|
|
14
|
+
Go back to the user's original requirements, preserved contracts, and actual test coverage.
|
|
15
|
+
Passing tests are not a rubber stamp.
|
|
16
|
+
Green tests don't declare a feature complete if acceptance criteria or edge cases were never tested.
|
|
17
|
+
Don't edit notes just to legitimize whatever code happens to be there.
|
|
18
|
+
Investigate before updating.
|
|
19
|
+
Notes say pending but code looks done? Verify against the requirement and run or add acceptance checks.
|
|
20
|
+
If truly complete and verified, update the notes.
|
|
21
|
+
If partial or defective, fix the code.
|
|
22
|
+
Don't rubber-stamp the notes.
|
|
23
|
+
Never do a blind rollback.
|
|
24
|
+
Don't delete working code just because some stale note doesn't mention it.
|
|
25
|
+
If intent is ambiguous, ask the user.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 2. Working in dirty workspaces
|
|
30
|
+
|
|
31
|
+
Users often call agents into workspaces with uncommitted work. Inspect `git status` (or directory state when not using Git) before modifying files; inventory comes first only in the sense that mutation must wait for it.
|
|
32
|
+
Identify uncommitted changes belonging to the user and do not discard or clobber them.
|
|
33
|
+
Protecting user changes does *not* forbid editing the entire file.
|
|
34
|
+
You may modify distinct, relevant parts of the same file as long as the user's uncommitted changes remain intact and functional.
|
|
35
|
+
Only stop and ask if there is an actual conflict or if the user's intent cannot be determined.
|
|
36
|
+
The baseline for verification and diffing includes the base commit plus the pre-existing uncommitted modifications.
|
|
37
|
+
Your changes must stay distinguishable from earlier user changes.
|
|
38
|
+
Never execute `git commit`, `git stash`, or `git reset` automatically to create a clean slate unless the user explicitly commands it.
|
|
39
|
+
No forced commits.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 3. Handing over a session
|
|
44
|
+
|
|
45
|
+
When ending a session or preparing a handoff for another agent or developer, reuse existing channels.
|
|
46
|
+
Record state in existing project tracking mechanisms (e.g., project issue trackers, `TODO` lists, or brief handover notes).
|
|
47
|
+
Do not create ad-hoc handoff files for routine features.
|
|
48
|
+
A concise handoff says what got done and verified, the working tree status, remaining limits or next steps, and which verification commands ran with what outcome.
|
|
49
|
+
Do not append ongoing session logs or raw conversation transcripts to permanent repository instruction files (like `AGENTS.md`).
|
|
50
|
+
Keep instructions focused on lasting architecture and workflows.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Evolution: adapting architecture and contracts
|
|
2
|
+
|
|
3
|
+
Use this reference when a task alters core contracts, architectural boundaries, or domain ownership, or when working in a repository with conflicting conventions.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Intentional contract changes vs. regressions
|
|
8
|
+
|
|
9
|
+
When requirements evolve, contracts must adapt. Tell intent apart from regression: an intentional change alters public API signatures, schemas, data models, or error codes because the user explicitly asked for new behavior. A regression is an unintended break in existing functionality.
|
|
10
|
+
Accept what the user requested. Don't fight explicit requests by forcing compatibility with deprecated behavior. Foundation and refactor work both accommodate authorized changes while preserving untouched contracts.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 2. Blast radius assessment
|
|
15
|
+
|
|
16
|
+
Before mutating shared contracts, determine the blast radius:
|
|
17
|
+
|
|
18
|
+
1. **Identify callers and consumers:** Locate all internal modules, external consumers, database schemas, message queues, or serialized data structures affected by the change.
|
|
19
|
+
2. **Boundary scope:** Confirm whether the change can be completed within the authorized scope or if it requires updating multiple subsystem boundaries.
|
|
20
|
+
3. When all callers reside within the codebase and are under the current task's scope, update the contract, callers, and tests together (the atomic update). When consumers are external, persisted data must be migrated, or callers span multiple independent services, maintain a compatibility bridge, migration script, or dual-read/write strategy as requested (the transitional migration).
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 3. Controlled migration workflow
|
|
25
|
+
|
|
26
|
+
Execute architectural adjustments in logical order:
|
|
27
|
+
|
|
28
|
+
1. **Update contract definitions:** Modify the authoritative interfaces, schemas, or type definitions first.
|
|
29
|
+
2. **Migrate callers:** Update calling code, dependency injection bindings, and data transformations to use the new contract.
|
|
30
|
+
3. **Align tests:** Update existing tests that assert the old contract so they verify the new behavior. Add tests covering edge cases and error semantics of the new contract.
|
|
31
|
+
4. **Synchronize documentation:** Update repository instructions, schema definitions, and API documentation to prevent stale instructions from misleading future agents.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 4. Reconciling conflicting repository conventions
|
|
36
|
+
|
|
37
|
+
In mature repositories, different modules often reflect different architectural eras or styles:
|
|
38
|
+
|
|
39
|
+
When patterns conflict, resolve using evidence hierarchy in order:
|
|
40
|
+
1. User's explicit instruction for the current task.
|
|
41
|
+
2. Documented architecture and repository instructions.
|
|
42
|
+
3. Preserved public contracts and persisted schemas.
|
|
43
|
+
4. Healthy sibling code within the *same* owning domain and runtime boundary.
|
|
44
|
+
5. Relevant tests, schemas, callers, and dependencies.
|
|
45
|
+
6. Local module conventions.
|
|
46
|
+
Do not rewrite healthy sibling code in another module merely to match your current change. Preserve legitimate domain-specific differences unless codebase-wide unification is explicitly requested; premature homogenization helps no one.
|
|
47
|
+
If existing code contains obvious workarounds or defects, do not replicate them in new code. Follow the healthiest precedent within the domain: defects never become precedent.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 5. Multi-pressure checklist
|
|
52
|
+
|
|
53
|
+
When migration, risk, docs, and workspace pressures stack (the usual evolution mess),
|
|
54
|
+
work in this order and do not skip steps:
|
|
55
|
+
|
|
56
|
+
1. Baseline: record revision, failing checks, and uncommitted user work.
|
|
57
|
+
2. Protect user work: distinct-region edits only; stop on real collision.
|
|
58
|
+
3. Reconcile docs against code reality before mutating (code describes behavior, docs get fixed after).
|
|
59
|
+
4. Highest-risk caller first with maximum conservatism; atomic path for the rest.
|
|
60
|
+
5. Rerun affected checks on the final tree; report what remains red and why.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Migration Examples (atomic vs transitional)
|
|
2
|
+
|
|
3
|
+
Read in Evolve mode when changing a public contract or persisted schema.
|
|
4
|
+
|
|
5
|
+
## Atomic replacement (preferred for single-node file state)
|
|
6
|
+
|
|
7
|
+
```python
|
|
8
|
+
import os
|
|
9
|
+
import tempfile
|
|
10
|
+
from pathlib import Path
|
|
11
|
+
|
|
12
|
+
def replace_file(dest: Path, new_bytes: bytes) -> None:
|
|
13
|
+
tmp = None
|
|
14
|
+
try:
|
|
15
|
+
with tempfile.NamedTemporaryFile(
|
|
16
|
+
mode="wb",
|
|
17
|
+
dir=dest.parent,
|
|
18
|
+
prefix=f".{dest.name}.",
|
|
19
|
+
suffix=".tmp",
|
|
20
|
+
delete=False,
|
|
21
|
+
) as file:
|
|
22
|
+
tmp = Path(file.name)
|
|
23
|
+
file.write(new_bytes)
|
|
24
|
+
file.flush()
|
|
25
|
+
os.fsync(file.fileno())
|
|
26
|
+
|
|
27
|
+
os.replace(tmp, dest)
|
|
28
|
+
finally:
|
|
29
|
+
if tmp is not None:
|
|
30
|
+
tmp.unlink(missing_ok=True)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Invariants: validate inputs + destination ownership before mutation; retain last valid
|
|
34
|
+
state until replacement succeeds. Stage on the destination filesystem with a unique
|
|
35
|
+
temporary name; close the file before replacement and clean up the temporary file on
|
|
36
|
+
success or failure. Verify successful replacement and preservation of the old state
|
|
37
|
+
when writing, syncing, or replacement fails.
|
|
38
|
+
This example addresses ordinary I/O failures. Power-loss durability and recovery after
|
|
39
|
+
forced termination require platform-specific guarantees and separate verification.
|
|
40
|
+
|
|
41
|
+
## Transitional compatibility (multi-caller migration)
|
|
42
|
+
|
|
43
|
+
Bad: change producer to `Decimal("5.00")` while callers expect `int 5` → hidden breakage.
|
|
44
|
+
Good:
|
|
45
|
+
1. Keep old readers working (accept `int | str | Decimal`, normalize internally).
|
|
46
|
+
2. Migrate callers one by one while preserving compatibility for remaining consumers.
|
|
47
|
+
3. Add contract and caller tests covering both surfaces during transition.
|
|
48
|
+
4. Remove compat shim only after all callers + docs updated.
|
|
49
|
+
|
|
50
|
+
## Docs sync checklist
|
|
51
|
+
|
|
52
|
+
- Update `README.md` + CLI help in the same diff as the contract change.
|
|
53
|
+
- Document only behavior implemented and verified in the delivered code state.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Shared contracts
|
|
2
|
+
|
|
3
|
+
These rules apply to repository development and review.
|
|
4
|
+
|
|
5
|
+
## 1. Strict contract adherence (canonical wording)
|
|
6
|
+
|
|
7
|
+
Preserve documented or demonstrably consumed public contracts across public interfaces,
|
|
8
|
+
exported parameters, module constants, return types, errors, and serialization.
|
|
9
|
+
|
|
10
|
+
- A requested behavior change may authorize a contract change only when that consequence
|
|
11
|
+
is clear from the task or from an authorized evolution. Then update affected callers,
|
|
12
|
+
tests, and living documentation within scope.
|
|
13
|
+
- Otherwise preserve exact declared types. For example, never substitute or wrap an exposed
|
|
14
|
+
primitive `str` path contract with `pathlib.Path` or custom wrapper objects merely for
|
|
15
|
+
internal convenience or preference.
|
|
16
|
+
- Internal intermediate representations may use appropriate helpers, provided all exposed
|
|
17
|
+
public contracts and types remain exact.
|
|
18
|
+
|
|
19
|
+
## 2. Evidence hierarchy (canonical order)
|
|
20
|
+
|
|
21
|
+
Use to guide investigation, not to auto-resolve material contradictions:
|
|
22
|
+
|
|
23
|
+
1. User requirements and explicitly authorized scope.
|
|
24
|
+
2. Documented architecture and repository guidelines.
|
|
25
|
+
3. Observable public contracts and persisted schemas.
|
|
26
|
+
4. Healthy sibling code within the same domain and runtime boundary.
|
|
27
|
+
5. Relevant tests, schemas, callers, and dependencies.
|
|
28
|
+
6. Dominant local conventions.
|
|
29
|
+
7. Language and runtime idioms.
|
|
30
|
+
8. Conservative, idiomatic defaults.
|
|
31
|
+
|
|
32
|
+
Never treat a temporary workaround, buggy sibling, or accidental pattern as precedent.
|
|
33
|
+
Never rewrite history or rubber-stamp code with stale notes. Reconcile before mutating
|
|
34
|
+
the affected contract.
|
|
35
|
+
|
|
36
|
+
## 3. Verification final-state rule (canonical)
|
|
37
|
+
|
|
38
|
+
- Record baseline failures as: (1) pre-existing outside scope, (2) in-scope to fix,
|
|
39
|
+
(3) regressions from current changes, (4) environment errors.
|
|
40
|
+
- Verify the final code state. Never use pre-cleanup results to certify modified code.
|
|
41
|
+
- Never claim a check ran when it did not. Distinguish verified behavior,
|
|
42
|
+
inspection-only conclusions, and unverified assumptions.
|
|
43
|
+
|
|
44
|
+
## 4. Shared judgment tests (canonical)
|
|
45
|
+
|
|
46
|
+
Two questions that both skills use when the text alone under-determines the answer.
|
|
47
|
+
|
|
48
|
+
A pattern counts as healthy precedent only if three things hold: code outside its original author consumes it, it does not contradict docs or contracts, and you would copy it into a new domain without apology. Popularity proves nothing; a workaround with tests and docs still fails. When two domains overlap, the owner is whoever owns the failure (who gets paged, who fixes the bug, whose reason to change fires first). Consolidate toward that owner, or leave both alone.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Verification: testing in proportion to risk
|
|
2
|
+
|
|
3
|
+
Use this reference when designing checks for greenfield projects, high-risk boundaries (auth, data loss, concurrency, migrations), or weak test suites.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Baseline failures and scope
|
|
8
|
+
|
|
9
|
+
Before or during initial execution, record baseline test failures and sort them:
|
|
10
|
+
|
|
11
|
+
1. Failures outside the current task's scope count as pre-existing. You don't need them green before starting, and don't fix unrelated ones just to green the baseline.
|
|
12
|
+
2. Failures inside the task's scope are in scope, such as a bugfix that starts with a failing test or repro script, and these are yours to resolve.
|
|
13
|
+
3. Regressions are previously passing checks your changes broke. Catch and fix them before declaring completion.
|
|
14
|
+
4. When checks can't run because of missing tools, dependencies, or setup, treat them as environment and tooling failures. Report them as environment limits, not code defects.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 2. Picking checks by risk
|
|
19
|
+
|
|
20
|
+
Match checks to the contract, boundary, and failure consequences. Don't mandate unit plus integration tests for every small helper, or unrelated checks (rollback tests for an auth change):
|
|
21
|
+
|
|
22
|
+
- Mechanical or local changes include typos, formatting, localized helper refactoring, and other non-semantic edits within established boundaries. For those, run stack linters, formatters, and localized unit tests.
|
|
23
|
+
- Contract and boundary changes modify public APIs, data formats, state machines, or subsystem contracts, so run tests that directly verify the updated contract and its callers.
|
|
24
|
+
- Changes touching authorization, permission checks, data migrations, cryptographic routines, concurrency locks, transaction boundaries, or destructive persistence carry high risk even when they touch only a single line, which calls for critical boundary vigilance. Verify the specific critical behavior (e.g., testing both authorized and unauthorized paths for auth changes; testing schema validity and rollback for migration scripts).
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 3. Greenfield and acceptance checks
|
|
29
|
+
|
|
30
|
+
When building new features or starting a repository from scratch:
|
|
31
|
+
|
|
32
|
+
- Keep environment checks separate from acceptance checks:
|
|
33
|
+
- *Environment / pre-existing checks:* toolchain, package manager, and build environment must work. These pass before feature work starts.
|
|
34
|
+
- *Acceptance checks for new capabilities:* the expected observable behavior of the new feature.
|
|
35
|
+
- For pre-build test states:
|
|
36
|
+
- An acceptance check for an unbuilt feature should detect the missing behavior when run in a valid environment.
|
|
37
|
+
- Tell apart a meaningful behavioral failure (endpoint 404s, CLI says unknown command, feature returns null) from an unrunnable test (syntax error, broken import, missing binary).
|
|
38
|
+
- Do not inject bugs, syntax errors, or failing stubs into test code just to force a failure.
|
|
39
|
+
- After implementing, acceptance checks must pass cleanly on the final code state. That is the evidence of completion.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 4. Testing integrity and final state
|
|
44
|
+
|
|
45
|
+
- For defect fixes, reproduce the failure first with a minimal reproduction such as a failing test, repro script, or observed command output, because a fix verified only after the fact is a guess with good lighting. For regression tests, prove red-green by reverting the fix, watching it fail, restoring it, and watching it pass.
|
|
46
|
+
- Check the external consequence of the action to assert observable outcomes, such as HTTP status code and body, database row contents, exit code and stdout/stderr, or rendered DOM elements.
|
|
47
|
+
- Expected values must reflect business requirements to keep outcomes independent, not mirror internal implementation logic.
|
|
48
|
+
- Never weaken tests to achieve a passing run by weakening assertion thresholds, deleting valid assertions, or skipping tests.
|
|
49
|
+
- Always verify the final tree by executing verification commands on the actual code state intended for delivery. If a subsequent refactoring pass or companion skill modifies code, rerun all affected checks on the updated code.
|
|
50
|
+
- Report actual results by stating exactly which commands were run, their outcomes, and any unverified areas.
|