@erclx/canon 4.123.0 → 4.124.0
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/claude/.claude-plugin/plugin.json +1 -1
- package/claude/skills/auto-ship/SKILL.md +2 -4
- package/claude/skills/codebase-layout/REQUIREMENT.md +1 -1
- package/claude/skills/codebase-layout/SKILL.md +1 -1
- package/claude/skills/create-rule/SKILL.md +5 -2
- package/claude/skills/design-taste/SKILL.md +1 -1
- package/claude/skills/draft-ready/REQUIREMENT.md +1 -1
- package/claude/skills/memory-review/SKILL.md +1 -1
- package/claude/skills/memory-review/references/later-phases.md +1 -1
- package/claude/skills/memory-review/references/receipt-format.md +1 -1
- package/claude/skills/test-first/REQUIREMENT.md +1 -1
- package/docs/agents/counts.md +3 -3
- package/docs/agents/drift-surfaces.md +2 -2
- package/docs/agents/rule-citations.md +4 -4
- package/docs/agents/test-order.md +1 -1
- package/docs/index.md +3 -0
- package/docs/target-migrations.md +93 -0
- package/docs/target-projects.md +4 -216
- package/docs/target-scenarios.md +56 -0
- package/docs/target-sync.md +93 -0
- package/docs/workflow/ai-workflow.md +2 -201
- package/docs/workflow/index.md +2 -0
- package/docs/workflow/operating-model.md +17 -46
- package/docs/workflow/parallel-features.md +77 -0
- package/docs/workflow/skill-map.md +148 -0
- package/governance/renames.toml +34 -0
- package/governance/rules/{claude/560-diagrams.md → canon/660-diagrams.md} +1 -1
- package/governance/rules/{claude/562-session.md → canon/662-session.md} +1 -1
- package/governance/rules/code/000-code.md +21 -0
- package/governance/rules/lib/300-testing-ts.md +0 -4
- package/governance/rules/lib/330-testing-py.md +0 -4
- package/governance/rules/{claude/500-prose.md → writing/800-prose.md} +1 -1
- package/governance/rules/{claude/501-markdown.md → writing/801-markdown.md} +1 -1
- package/governance/rules/{claude/502-mermaid.md → writing/802-mermaid.md} +1 -1
- package/governance/stacks/base.toml +7 -6
- package/governance/stacks/node.toml +1 -1
- package/governance/stacks/python.toml +1 -1
- package/package.json +1 -1
- package/scripts/core/install-check.sh +3 -5
- package/src/claude/routing.ts +1 -1
- package/src/commands/gov.ts +1 -1
- package/src/gate/measures.ts +1 -6
- package/src/gov/citations.ts +1 -1
- package/src/gov/list.ts +1 -1
- package/src/gov/restated.ts +2 -2
- package/src/init/steps.ts +1 -1
- package/src/labels/spelling.ts +1 -1
- package/src/records/prune.ts +1 -1
- package/src/shipped/references.ts +1 -1
- package/standards/rule.md +4 -6
- package/tooling/base/reference.md +1 -1
- package/tooling/claude/seeds/.claude/hooks/path-form.sh +1 -1
- package/tooling/claude/seeds/.claude/hooks/scratch-guard.sh +1 -1
- package/tooling/web/reference.md +1 -1
- package/governance/rules/core/000-constitution.md +0 -30
- package/governance/rules/core/020-concurrency.md +0 -22
- package/governance/rules/core/030-error-handling.md +0 -31
- package/governance/rules/core/040-performance.md +0 -20
- package/governance/rules/core/050-logging.md +0 -20
- package/governance/rules/core/060-naming.md +0 -19
- package/governance/rules/snippets/600-at-references.md +0 -9
- /package/governance/rules/{core/025-indexes.md → canon/601-indexes.md} +0 -0
- /package/governance/rules/{core/035-tasks.md → canon/602-tasks.md} +0 -0
- /package/governance/rules/{core/045-memory.md → canon/603-memory.md} +0 -0
- /package/governance/rules/{core/055-scratch.md → canon/604-scratch.md} +0 -0
- /package/governance/rules/{core/085-worktrees.md → canon/605-worktrees.md} +0 -0
- /package/governance/rules/{core/087-git.md → canon/606-git.md} +0 -0
- /package/governance/rules/{claude/510-context.md → canon/610-context.md} +0 -0
- /package/governance/rules/{claude/511-indexes.md → canon/611-indexes.md} +0 -0
- /package/governance/rules/{claude/520-wireframes.md → canon/620-wireframes.md} +0 -0
- /package/governance/rules/{claude/530-requirements.md → canon/630-requirements.md} +0 -0
- /package/governance/rules/{claude/540-architecture.md → canon/640-architecture.md} +0 -0
- /package/governance/rules/{claude/545-decisions.md → canon/645-decisions.md} +0 -0
- /package/governance/rules/{claude/550-design.md → canon/650-design.md} +0 -0
- /package/governance/rules/{claude/555-tasks.md → canon/655-tasks.md} +0 -0
- /package/governance/rules/{claude/556-groundwork.md → canon/656-groundwork.md} +0 -0
- /package/governance/rules/{claude/557-intake.md → canon/657-intake.md} +0 -0
- /package/governance/rules/{claude/558-plan.md → canon/658-plan.md} +0 -0
- /package/governance/rules/{claude/559-memory.md → canon/659-memory.md} +0 -0
- /package/governance/rules/{claude/561-teach.md → canon/661-teach.md} +0 -0
- /package/governance/rules/{claude/563-ready.md → canon/663-ready.md} +0 -0
- /package/governance/rules/{core/005-behavior.md → claude/565-behavior.md} +0 -0
- /package/governance/rules/{core/015-output.md → claude/566-output.md} +0 -0
- /package/governance/rules/{core/070-planning.md → claude/567-planning.md} +0 -0
- /package/governance/rules/{core → code}/010-testing.md +0 -0
- /package/governance/rules/{ci → tooling}/700-ci-workflow.md +0 -0
- /package/governance/rules/{core/065-spelling.md → tooling/765-spelling.md} +0 -0
- /package/governance/rules/{core/075-dependencies.md → tooling/775-dependencies.md} +0 -0
- /package/governance/rules/{core/080-config-comments.md → tooling/780-config-comments.md} +0 -0
- /package/governance/rules/{core/090-code-comments.md → tooling/790-code-comments.md} +0 -0
- /package/governance/rules/{claude/580-readme.md → writing/880-readme.md} +0 -0
- /package/governance/rules/{claude/591-standard-authoring.md → writing/891-standard-authoring.md} +0 -0
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Enforce consistent error handling patterns
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Error handling standards
|
|
6
|
-
|
|
7
|
-
## Boundary validation
|
|
8
|
-
|
|
9
|
-
- Validate inputs at system boundaries. Reject invalid data immediately.
|
|
10
|
-
- Do not use exceptions for control flow.
|
|
11
|
-
|
|
12
|
-
## Error classification
|
|
13
|
-
|
|
14
|
-
- Distinguish expected failures (validation, not found) from unexpected failures (null reference, network timeout).
|
|
15
|
-
- Return structured error types for recoverable failures.
|
|
16
|
-
- Propagate exceptions for programmer errors.
|
|
17
|
-
|
|
18
|
-
## Error propagation
|
|
19
|
-
|
|
20
|
-
- Handle errors at the layer with enough context to respond meaningfully.
|
|
21
|
-
- Do not catch and rethrow without adding value.
|
|
22
|
-
- Do not silently ignore errors.
|
|
23
|
-
|
|
24
|
-
## Error reporting
|
|
25
|
-
|
|
26
|
-
- Include actionable context in error messages.
|
|
27
|
-
- Never expose internal implementation details in error messages.
|
|
28
|
-
|
|
29
|
-
## Retry behavior
|
|
30
|
-
|
|
31
|
-
- Retry only idempotent operations with bounded attempts and backoff.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Enforce performance constraints and optimization patterns
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Performance standards
|
|
6
|
-
|
|
7
|
-
## Resource loading
|
|
8
|
-
|
|
9
|
-
- Lazy load resources at architectural boundaries, not inline.
|
|
10
|
-
- Do not import entire modules when subsets are sufficient.
|
|
11
|
-
|
|
12
|
-
## Execution efficiency
|
|
13
|
-
|
|
14
|
-
- Defer non-critical work until after primary output completes.
|
|
15
|
-
- Do not fetch data inside loops.
|
|
16
|
-
|
|
17
|
-
## Data handling
|
|
18
|
-
|
|
19
|
-
- Paginate or stream unbounded data sets.
|
|
20
|
-
- Do not optimize without measurement.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Enforce structured logging and observability
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Logging standards
|
|
6
|
-
|
|
7
|
-
## Log coverage
|
|
8
|
-
|
|
9
|
-
- Log state transitions at boundaries (requests received, external calls made, errors encountered).
|
|
10
|
-
- Do not log in performance-critical code paths.
|
|
11
|
-
|
|
12
|
-
## Log format
|
|
13
|
-
|
|
14
|
-
- Use structured formats with consistent metadata (timestamp, severity, correlation ID).
|
|
15
|
-
- Emit logs at appropriate severity: critical for failures, informational for significant events.
|
|
16
|
-
|
|
17
|
-
## Log safety
|
|
18
|
-
|
|
19
|
-
- Do not log credentials, tokens, or personally identifiable information.
|
|
20
|
-
- Log observable behavior, not implementation details.
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Enforce consistent naming semantics across all code
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Naming standards
|
|
6
|
-
|
|
7
|
-
## Semantics
|
|
8
|
-
|
|
9
|
-
- Prefer descriptive names over abbreviations: `getUserProfile` over `getUP`.
|
|
10
|
-
- Name functions as actions describing what they do: `fetchUser`, `calculateTotal`.
|
|
11
|
-
- Prefix booleans with `is`, `has`, `should`, or `can`: `isLoading`, `hasAccess`.
|
|
12
|
-
- Avoid negative boolean names: `isEnabled` over `isNotDisabled`.
|
|
13
|
-
- Prefix event handlers with `handle`: `handleClick`, `handleSubmit`.
|
|
14
|
-
- Name collections as plurals: `users`.
|
|
15
|
-
- Name items as singulars: `user`.
|
|
16
|
-
|
|
17
|
-
## Test naming
|
|
18
|
-
|
|
19
|
-
- Name tests with descriptive phrases that state the expected behavior.
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Execute an @-referenced snippet's instructions immediately using session context
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Snippet reference standards
|
|
6
|
-
|
|
7
|
-
## Execution
|
|
8
|
-
|
|
9
|
-
- When a snippet is referenced with `@`, execute its instructions immediately using available session context
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/governance/rules/{claude/591-standard-authoring.md → writing/891-standard-authoring.md}
RENAMED
|
File without changes
|