codexspec 0.7.14__tar.gz → 0.7.16__tar.gz
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.
- {codexspec-0.7.14 → codexspec-0.7.16}/PKG-INFO +1 -1
- {codexspec-0.7.14 → codexspec-0.7.16}/pyproject.toml +1 -1
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/__init__.py +3 -3
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/analyze.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/auto-dev.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/blueprint.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/checklist.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/clarify.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/commit-staged.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/config.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/constitution.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/debug.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/distill.md +18 -7
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/evolve.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/generate-spec.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/implement-tasks.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/onboard.md +12 -1
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/plan-to-tasks.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/pr.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/quick.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/release-notes.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/reverse-spec.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/review-code.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/review-design.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/review-plan.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/review-spec.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/review-tasks.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/spec-to-design.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/spec-to-plan.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/specify.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/commands/tasks-to-issues.md +11 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/.gitignore +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/LICENSE +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/README.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/codexspec-icon.svg +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/codexspec-logo-dark.svg +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/codexspec-logo-light.svg +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/check-i18n-completeness.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/check-i18n-structure.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/check-prerequisites.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/common.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/create-new-feature.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/bash/review-context.sh +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/powershell/check-prerequisites.ps1 +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/powershell/common.ps1 +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/powershell/create-new-feature.ps1 +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/scripts/powershell/review-context.ps1 +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/automation.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/blueprint.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/commands/__init__.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/commands/installer.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/i18n.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/idea.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/integrations/__init__.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/integrations/base.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/integrations/claude.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/integrations/codex.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/profile.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/src/codexspec/translator.py +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/checklist-template.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/constitution-template.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/design-template.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/plan-template-detailed.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/plan-template-simple.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/requirements-template.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/spec-template-detailed.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/spec-template-simple.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/tasks-template-detailed.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/docs/tasks-template-simple.md +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/de.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/en.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/es.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/fr.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/ja.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/ko.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/pt-BR.json +0 -0
- {codexspec-0.7.14 → codexspec-0.7.16}/templates/translations/zh-CN.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: codexspec
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.16
|
|
4
4
|
Summary: CodexSpec - A Requirements-First SDD toolkit for Claude Code
|
|
5
5
|
Project-URL: Homepage, https://github.com/Zts0hg/codexspec
|
|
6
6
|
Project-URL: Repository, https://github.com/Zts0hg/codexspec
|
|
@@ -58,7 +58,7 @@ from .profile import ensure_profile_scaffold, inject_profile_block
|
|
|
58
58
|
from .translator import SUPPORTED_LANGUAGES, translate
|
|
59
59
|
|
|
60
60
|
# Version info
|
|
61
|
-
__version__ = "0.7.
|
|
61
|
+
__version__ = "0.7.16"
|
|
62
62
|
__author__ = "CodexSpec Team"
|
|
63
63
|
|
|
64
64
|
# Constitution file path constants
|
|
@@ -895,7 +895,7 @@ def init(
|
|
|
895
895
|
if ps_scripts.exists():
|
|
896
896
|
for script_file in ps_scripts.glob("*.ps1"):
|
|
897
897
|
dest_file = codexspec_dir / "scripts" / script_file.name
|
|
898
|
-
dest_file.
|
|
898
|
+
dest_file.write_bytes(script_file.read_bytes())
|
|
899
899
|
console.print(f"[green]Copied script:[/green] {script_file.name}")
|
|
900
900
|
else:
|
|
901
901
|
console.print("[yellow]Warning: PowerShell scripts directory not found[/yellow]")
|
|
@@ -905,7 +905,7 @@ def init(
|
|
|
905
905
|
if bash_scripts.exists():
|
|
906
906
|
for script_file in bash_scripts.glob("*.sh"):
|
|
907
907
|
dest_file = codexspec_dir / "scripts" / script_file.name
|
|
908
|
-
dest_file.
|
|
908
|
+
dest_file.write_bytes(script_file.read_bytes())
|
|
909
909
|
console.print(f"[green]Copied script:[/green] {script_file.name}")
|
|
910
910
|
else:
|
|
911
911
|
console.print("[yellow]Warning: Bash scripts directory not found[/yellow]")
|
|
@@ -14,6 +14,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
14
14
|
|
|
15
15
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
16
16
|
|
|
17
|
+
## Expression Standard
|
|
18
|
+
|
|
19
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
20
|
+
|
|
21
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
22
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
23
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
24
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
25
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
26
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
27
|
+
|
|
17
28
|
## User Input
|
|
18
29
|
|
|
19
30
|
`$ARGUMENTS`
|
|
@@ -10,6 +10,17 @@ argument-hint: ""
|
|
|
10
10
|
Read `.codexspec/config.yml`. Converse in `language.interaction` and author SDD artifacts in
|
|
11
11
|
`language.document`, each falling back to `language.output`, then English.
|
|
12
12
|
|
|
13
|
+
## Expression Standard
|
|
14
|
+
|
|
15
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
16
|
+
|
|
17
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
18
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
19
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
20
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
21
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
22
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
23
|
+
|
|
13
24
|
## Goal
|
|
14
25
|
|
|
15
26
|
Continuously run the complete Requirements-First SDD flow for the shared blueprint in document
|
|
@@ -16,6 +16,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
16
16
|
Converse in the interaction language and author requirement content in the document language. Use
|
|
17
17
|
clear, standard software-development terminology; do not invent abbreviations to summarize concepts.
|
|
18
18
|
|
|
19
|
+
## Expression Standard
|
|
20
|
+
|
|
21
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
22
|
+
|
|
23
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
24
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
25
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
26
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
27
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
28
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
29
|
+
|
|
19
30
|
## User Input
|
|
20
31
|
|
|
21
32
|
`$ARGUMENTS`
|
|
@@ -27,6 +27,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
27
27
|
|
|
28
28
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
29
29
|
|
|
30
|
+
## Expression Standard
|
|
31
|
+
|
|
32
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
33
|
+
|
|
34
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
35
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
36
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
37
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
38
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
39
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
40
|
+
|
|
30
41
|
## Checklist Purpose: "Unit Tests for Requirements"
|
|
31
42
|
|
|
32
43
|
**CRITICAL CONCEPT**: Checklists are **UNIT TESTS FOR REQUIREMENTS WRITING** - they validate the quality, clarity, and completeness of requirements.
|
|
@@ -14,6 +14,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
14
14
|
|
|
15
15
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
16
16
|
|
|
17
|
+
## Expression Standard
|
|
18
|
+
|
|
19
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
20
|
+
|
|
21
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
22
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
23
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
24
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
25
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
26
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
27
|
+
|
|
17
28
|
## User Input
|
|
18
29
|
|
|
19
30
|
`$ARGUMENTS`
|
|
@@ -64,6 +64,17 @@ forbidden-tools: Bash(git add:*), Bash(git reset:*), Bash(git checkout:*), Bash(
|
|
|
64
64
|
- Only the description part should use the configured language
|
|
65
65
|
- Technical terms (e.g., API, JWT, OAuth) may remain in English when appropriate
|
|
66
66
|
|
|
67
|
+
## Expression Standard
|
|
68
|
+
|
|
69
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
70
|
+
|
|
71
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
72
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
73
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
74
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
75
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
76
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
77
|
+
|
|
67
78
|
## Parameter Check
|
|
68
79
|
|
|
69
80
|
Check if `$ARGUMENTS` contains `-p`:
|
|
@@ -16,6 +16,17 @@ Converse in the interaction language and author artifacts in the document langua
|
|
|
16
16
|
|
|
17
17
|
A fresh or reset config writes only `output`; `interaction` and `document` resolve to it via the fallback above, so an `output`-only config is fully functional (non-blocking). Set `interaction` or `document` individually only to make them differ from `output`. That is why the YAML examples below stay `output`-only.
|
|
18
18
|
|
|
19
|
+
## Expression Standard
|
|
20
|
+
|
|
21
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
22
|
+
|
|
23
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
24
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
25
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
26
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
27
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
28
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
29
|
+
|
|
19
30
|
## Parameter Check
|
|
20
31
|
|
|
21
32
|
Check if `$ARGUMENTS` contains `--view`:
|
|
@@ -30,6 +30,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
30
30
|
|
|
31
31
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
32
32
|
|
|
33
|
+
## Expression Standard
|
|
34
|
+
|
|
35
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
36
|
+
|
|
37
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
38
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
39
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
40
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
41
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
42
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
43
|
+
|
|
33
44
|
## User Input
|
|
34
45
|
|
|
35
46
|
```text
|
|
@@ -15,6 +15,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
15
15
|
|
|
16
16
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
17
17
|
|
|
18
|
+
## Expression Standard
|
|
19
|
+
|
|
20
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
21
|
+
|
|
22
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
23
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
24
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
25
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
26
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
27
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
28
|
+
|
|
18
29
|
## User Input
|
|
19
30
|
|
|
20
31
|
`$ARGUMENTS`
|
|
@@ -14,6 +14,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
14
14
|
|
|
15
15
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language. **Exception**: `evidence.facts` quotes the user's original words verbatim and MUST NOT be translated.
|
|
16
16
|
|
|
17
|
+
## Expression Standard
|
|
18
|
+
|
|
19
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
20
|
+
|
|
21
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
22
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
23
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
24
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
25
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
26
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
27
|
+
|
|
17
28
|
## User Input
|
|
18
29
|
|
|
19
30
|
`$ARGUMENTS`
|
|
@@ -44,7 +55,7 @@ Apply this boundary test to every candidate: **"Would a single feature's `requir
|
|
|
44
55
|
|
|
45
56
|
## The profile store: `.codexspec/profile/`
|
|
46
57
|
|
|
47
|
-
Six **category directories**, each holding **one record per file** (`<id>.md`) with **only current-effective** knowledge — dense, with no "retired" section (git history is the ledger). One-file-per-record is deliberate: parallel feature branches each add differently-named files, so distilled knowledge merges without conflict. Create the directory and record file on first write.
|
|
58
|
+
Six **category directories**, each holding **one record per file** (`<id>.md`, or `<id>-<slug>.md` — see the `id` rule below) with **only current-effective** knowledge — dense, with no "retired" section (git history is the ledger). One-file-per-record is deliberate: parallel feature branches each add differently-named files, so distilled knowledge merges without conflict. Create the directory and record file on first write.
|
|
48
59
|
|
|
49
60
|
- `constraints/` — negative constraints (`严禁 / 仅允许`). These carry the **highest** weight and MUST be honored first.
|
|
50
61
|
- `conventions/` — positive cross-feature conventions / steering.
|
|
@@ -59,7 +70,7 @@ There is **no** `facts/` category — a bare fact with no "therefore do X" is ei
|
|
|
59
70
|
|
|
60
71
|
Every record MUST separate the distilled claim from the evidence it rests on:
|
|
61
72
|
|
|
62
|
-
- `id` — **type letter + full source-feature id + local sequence**, e.g. `P-2026-0812-14054p-1` or `Con-2026-0812-14054p-1`.
|
|
73
|
+
- `id` — **type letter + full source-feature id + local sequence**, e.g. `P-2026-0812-14054p-1` or `Con-2026-0812-14054p-1`. The `### <id>: <title>` heading keeps the bare id; the **filename** is `<id>-<slug>.md`, where the **slug** is a semantic suffix derived from the record title: lowercase ASCII letters and digits with hyphens as separators (`^[a-z0-9]+(-[a-z0-9]+)*$`, no leading/trailing hyphen), at most 50 characters, rendered in English when the title is not ASCII. When no meaningful slug can be derived, write the legacy bare form `<id>.md` — both forms are valid store members. The slug never enters the id, the heading, or `[[id]]` links, and never participates in uniqueness. Locating a record from its id stays mechanical: the record's file is exactly the one named `<id>.md` or the one named `<id>-<slug>.md`; because the slug admits only `[a-z0-9-]`, no other filename can begin with `<id>` followed by `-` or `.`, so a lookup by id is unambiguous even when one sequence number is a digit-prefix of another. The **source-feature id** is the distilling feature's full spec-dir id `{YYYY-MMDD-HHMM}{rr}` (e.g. `2026-0812-14054p`); it is globally unique by the timestamp+random scheme spec directories use, so records distilled on parallel feature branches never collide on id **or filename** (they merge with no conflict) — uniqueness is carried entirely by the id. Keep the **full** id (not a short tail) so the record is self-describing: the date supports recency/staleness reading, and the feature id ties the record to its originating change for decision context and scope. When distilling with no feature context, generate a fresh `{YYYY-MMDD-HHMM}{rr}` id now (same convention as create-new-feature). **Never** use a bare sequential id such as `P-001` — those collide across parallel branches.
|
|
63
74
|
- `claim` — one-sentence reusable **summary** (a title line, not the actionable body — for a `pitfall` the usable content lives in the three body parts below, not in this sentence).
|
|
64
75
|
- `type` — `convention` | `constraint` | `pitfall` | `decision` | `strategy` | `runbook` (`constraint` = highest priority).
|
|
65
76
|
- `scope/when` — natural-language applicability condition (e.g. "when editing Python code"); omit for global. **No formal syntax.**
|
|
@@ -94,7 +105,7 @@ If you cannot state these parts, the strategy or runbook is not yet worth record
|
|
|
94
105
|
|
|
95
106
|
This separation is what makes a later error locatable as **misread** (facts wrong) vs **overreach** (claim over-generalized) vs **stale** (state no longer holds).
|
|
96
107
|
|
|
97
|
-
Example — a `convention` (claim + evidence is enough), file `conventions/Con-2026-0809-2219gg-1.md`:
|
|
108
|
+
Example — a `convention` (claim + evidence is enough), file `conventions/Con-2026-0809-2219gg-1-prefer-absolute-imports.md`:
|
|
98
109
|
|
|
99
110
|
```markdown
|
|
100
111
|
### Con-2026-0809-2219gg-1: Prefer absolute imports
|
|
@@ -107,7 +118,7 @@ Example — a `convention` (claim + evidence is enough), file `conventions/Con-2
|
|
|
107
118
|
- status: vetted
|
|
108
119
|
```
|
|
109
120
|
|
|
110
|
-
Example — a `pitfall` (note the required `root-cause` / `workaround` / `lesson` body), file `pitfalls/P-2026-0810-1330ab-1.md`:
|
|
121
|
+
Example — a `pitfall` (note the required `root-cause` / `workaround` / `lesson` body), file `pitfalls/P-2026-0810-1330ab-1-re-sub-string-replacement-corruption.md`:
|
|
111
122
|
|
|
112
123
|
```markdown
|
|
113
124
|
### P-2026-0810-1330ab-1: `re.sub` with a string replacement corrupts blocks containing backslashes
|
|
@@ -123,7 +134,7 @@ Example — a `pitfall` (note the required `root-cause` / `workaround` / `lesson
|
|
|
123
134
|
- status: candidate
|
|
124
135
|
```
|
|
125
136
|
|
|
126
|
-
Example — a `strategy` (note the `trigger` / `action` body), file `strategies/S-2026-0813-1606fz-1.md`:
|
|
137
|
+
Example — a `strategy` (note the `trigger` / `action` body), file `strategies/S-2026-0813-1606fz-1-suspect-markdown-emphasis-first.md`:
|
|
127
138
|
|
|
128
139
|
```markdown
|
|
129
140
|
### S-2026-0813-1606fz-1: When a substring contract test fails, suspect markdown emphasis first
|
|
@@ -138,7 +149,7 @@ Example — a `strategy` (note the `trigger` / `action` body), file `strategies/
|
|
|
138
149
|
- status: candidate
|
|
139
150
|
```
|
|
140
151
|
|
|
141
|
-
Example — a `runbook` (note the ordered `steps` + `failure-recovery` body), file `runbooks/R-2026-0813-1143el-1.md`:
|
|
152
|
+
Example — a `runbook` (note the ordered `steps` + `failure-recovery` body), file `runbooks/R-2026-0813-1143el-1-release-a-new-codexspec-version.md`:
|
|
142
153
|
|
|
143
154
|
```markdown
|
|
144
155
|
### R-2026-0813-1143el-1: Release a new CodexSpec version
|
|
@@ -180,7 +191,7 @@ When a new item conflicts with an existing rule, resolve in this order:
|
|
|
180
191
|
|
|
181
192
|
Change the profile **only** through three conceptual operations (you edit the files directly — these are a discipline, **not** a tool API or matching algorithm):
|
|
182
193
|
|
|
183
|
-
- `add` — create a new record file `<category>/<id>.md` for a verified item.
|
|
194
|
+
- `add` — create a new record file `<category>/<id>-<slug>.md` (bare `<category>/<id>.md` when no meaningful slug applies) for a verified item.
|
|
184
195
|
- `replace` — supersede an outdated/wrong item **in its own file** (keeps records dense).
|
|
185
196
|
- `remove` — delete the record's file when a changed environment invalidates it.
|
|
186
197
|
|
|
@@ -14,6 +14,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
14
14
|
|
|
15
15
|
Converse in the interaction language. **The compiled command/skill draft is a distributed template and MUST be authored in English** (project i18n convention), regardless of `language.document`. PR title/body follow `language.commit`.
|
|
16
16
|
|
|
17
|
+
## Expression Standard
|
|
18
|
+
|
|
19
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
20
|
+
|
|
21
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
22
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
23
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
24
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
25
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
26
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
27
|
+
|
|
17
28
|
## User Input
|
|
18
29
|
|
|
19
30
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## Feature Resolution
|
|
21
32
|
|
|
22
33
|
Resolve the feature in this order:
|
|
@@ -15,6 +15,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
15
15
|
|
|
16
16
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language. **Exception**: `evidence.facts` records a verbatim code observation (path + snippet) and MUST NOT be translated.
|
|
17
17
|
|
|
18
|
+
## Expression Standard
|
|
19
|
+
|
|
20
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
21
|
+
|
|
22
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
23
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
24
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
25
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
26
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
27
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
28
|
+
|
|
18
29
|
## User Input
|
|
19
30
|
|
|
20
31
|
`$ARGUMENTS`
|
|
@@ -54,7 +65,7 @@ onboard **never** extracts `decisions`, `pitfalls`, `strategies`, or `runbooks`.
|
|
|
54
65
|
|
|
55
66
|
## Record Format
|
|
56
67
|
|
|
57
|
-
onboard **reuses `distill`'s profile store and record format verbatim** — one record per file under a category directory (`conventions/<id>.md`, `constraints/<id>.md`), ids namespaced by the source-feature id, and `claim` physically separated from `evidence`. See `distill.md` for the canonical format. onboard writes with these **deltas**:
|
|
68
|
+
onboard **reuses `distill`'s profile store and record format verbatim** — one record per file under a category directory (`conventions/<id>-<slug>.md`, `constraints/<id>-<slug>.md`; bare `<id>.md` when no meaningful slug applies), ids namespaced by the source-feature id, and `claim` physically separated from `evidence`. See `distill.md` for the canonical format. onboard writes with these **deltas**:
|
|
58
69
|
|
|
59
70
|
- `provenance` marks the **onboard scan** as the source (distinct from `distill`), with `derivation: inferred` — always, because the knowledge is inferred from code, never quoted from the user.
|
|
60
71
|
- An onboard record's `status` is always **`candidate`** at write time — onboard **never** writes `vetted` itself. Its `inferred` origin is **not** a permanent barrier: such a record can later be promoted to `vetted` via `/distill review` once it is outcome-verified and the user approves it (the `evolve` gate remains `vetted`). See the `status` rule in `distill.md`.
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -35,6 +35,17 @@ allowed-tools: Bash(git branch:*), Bash(git diff:*), Bash(git log:*), Bash(git r
|
|
|
35
35
|
- `output: "zh-CN"` + `commit: "zh-CN"` → Chinese for both
|
|
36
36
|
- `output: "zh-CN"` + no `commit` setting → Chinese for both (fallback)
|
|
37
37
|
|
|
38
|
+
## Expression Standard
|
|
39
|
+
|
|
40
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
41
|
+
|
|
42
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
43
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
44
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
45
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
46
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
47
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
48
|
+
|
|
38
49
|
## User Input
|
|
39
50
|
|
|
40
51
|
```
|
|
@@ -14,6 +14,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
14
14
|
|
|
15
15
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
16
16
|
|
|
17
|
+
## Expression Standard
|
|
18
|
+
|
|
19
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
20
|
+
|
|
21
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
22
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
23
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
24
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
25
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
26
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
27
|
+
|
|
17
28
|
## User Input
|
|
18
29
|
|
|
19
30
|
`$ARGUMENTS`
|
|
@@ -30,6 +30,17 @@ allowed-tools: Bash(git branch:*), Bash(git tag:*), Bash(git describe:*), Bash(g
|
|
|
30
30
|
- The `## [Unreleased]` / `## [X.Y.Z]` version markers and ISO dates are format, not prose — keep them
|
|
31
31
|
as-is.
|
|
32
32
|
|
|
33
|
+
## Expression Standard
|
|
34
|
+
|
|
35
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
36
|
+
|
|
37
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
38
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
39
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
40
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
41
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
42
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
43
|
+
|
|
33
44
|
## User Input
|
|
34
45
|
|
|
35
46
|
```
|
|
@@ -15,6 +15,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
15
15
|
|
|
16
16
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language. **Exception**: in `reconcile.md`, `location` and `evidence` quote the code and the baseline verbatim — path, line, and the quoted spans on both sides — and MUST NOT be translated. A translated quote can no longer be checked against its source, which is exactly what the both-side evidence rule exists to make possible. Verbatim does not mean secret-bearing: apply the global sensitive-value redaction rule under Instruction and Evidence Trust before persisting or briefing any observation.
|
|
17
17
|
|
|
18
|
+
## Expression Standard
|
|
19
|
+
|
|
20
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
21
|
+
|
|
22
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
23
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
24
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
25
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
26
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
27
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
28
|
+
|
|
18
29
|
## User Input
|
|
19
30
|
|
|
20
31
|
`$ARGUMENTS`
|
|
@@ -45,6 +45,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
45
45
|
|
|
46
46
|
Write the human report in the interaction language. Keep result-envelope field names and enum values in English exactly as specified below.
|
|
47
47
|
|
|
48
|
+
## Expression Standard
|
|
49
|
+
|
|
50
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
51
|
+
|
|
52
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
53
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
54
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
55
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
56
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
57
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
58
|
+
|
|
48
59
|
## User Input
|
|
49
60
|
|
|
50
61
|
```text
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -17,6 +17,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
17
17
|
|
|
18
18
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
19
19
|
|
|
20
|
+
## Expression Standard
|
|
21
|
+
|
|
22
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
23
|
+
|
|
24
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
25
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
26
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
27
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
28
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
29
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
30
|
+
|
|
20
31
|
## User Input
|
|
21
32
|
|
|
22
33
|
`$ARGUMENTS`
|
|
@@ -27,6 +27,17 @@ Read `.codexspec/config.yml`. Two independent language controls apply (each fall
|
|
|
27
27
|
|
|
28
28
|
Converse in the interaction language and author artifacts in the document language. Apply the project's translation standard to both: translate by meaning (not word-for-word), keep English for terms with no good native equivalent, and write as if originally in that language.
|
|
29
29
|
|
|
30
|
+
## Expression Standard
|
|
31
|
+
|
|
32
|
+
**IMPORTANT**: Everything this command produces — documents, reviews, reports, commit messages, diagnostics, and replies — is written for a reader who cannot see your working context. Apply the rules below to every artifact and message you output:
|
|
33
|
+
|
|
34
|
+
- **Write for the reader at hand-off.** Every reference must resolve without access to this session: no session-only identifiers or section numbers, no narration of what changed during the conversation, no arguments with absent reviewers. State current reality and cite committed, reachable sources.
|
|
35
|
+
- **Preserve every proposition.** Before summarizing or trimming, list the facts a passage carries: actors, conditions, ordering, modalities (must, never), negative guarantees, and consequences. Remove only reasoning transcripts, repetition, and decoration. Shorter is not clearer if any fact is lost.
|
|
36
|
+
- **State what the surface requires.** Diagnostics name what failed, which rule was violated, and the correction. Problem reports carry the defect, its location, its impact, and the evidence. Decisions record the alternatives they beat. Rejections give the reason in one line. Shipped work is described in the present tense; plans and open questions are labeled as such.
|
|
37
|
+
- **Define terms before relying on them.** Prefer the concrete rule, field, or behavior over a coined label; give a project-specific term a plain-language definition at first use, then use it consistently.
|
|
38
|
+
- **Be honest, not agreeable.** Verify claims before accepting them; fix or rebut on technical grounds. One substantiated blocker is worth more than a list of nitpicks. When a decision is needed, present only viable options, recommend one, and state the real difference between them.
|
|
39
|
+
- **Declare what is binding.** Say explicitly which instructions are hard requirements and where judgment is required. Keep one explanation in one place and link to it, but keep at the point of use the contract a reader needs there.
|
|
40
|
+
|
|
30
41
|
## User Input
|
|
31
42
|
|
|
32
43
|
```text
|
|
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
|
|
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
|