@journeykit/canon 0.36.0 → 0.38.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.
Files changed (118) hide show
  1. package/dist/skills/SKILL.src.md +35 -13
  2. package/dist/skills/reference/canon-gate.md +41 -1
  3. package/dist/skills/reference/canon-learn.md +7 -2
  4. package/dist/skills/reference/canon-review.md +15 -4
  5. package/dist/skills/reference/canon-storage.md +31 -5
  6. package/dist/skills/reference/canon-subject.md +5 -4
  7. package/dist/skills/reference/role-implementer.md +7 -4
  8. package/dist/skills/reference/role-orchestrator.md +20 -10
  9. package/dist/skills/reference/role-planner.md +1 -1
  10. package/dist/skills/reference/role-reviewer.md +5 -2
  11. package/man/canon-adapter-authorize.1 +2 -2
  12. package/man/canon-adapter-validate.1 +2 -2
  13. package/man/canon-adapter.1 +2 -2
  14. package/man/canon-artifacts-move.1 +2 -2
  15. package/man/canon-artifacts-prune.1 +75 -0
  16. package/man/canon-artifacts-store.1 +2 -2
  17. package/man/canon-artifacts-verify.1 +2 -2
  18. package/man/canon-artifacts.1 +5 -2
  19. package/man/canon-brief-approve.1 +6 -4
  20. package/man/canon-brief-check.1 +2 -2
  21. package/man/canon-brief-show.1 +2 -2
  22. package/man/canon-brief.1 +2 -2
  23. package/man/canon-change-new.1 +2 -2
  24. package/man/canon-change.1 +2 -2
  25. package/man/canon-completion.1 +2 -2
  26. package/man/canon-context-pack-add.1 +2 -2
  27. package/man/canon-context-pack-show.1 +2 -2
  28. package/man/canon-context-pack-verify.1 +2 -2
  29. package/man/canon-context-pack.1 +2 -2
  30. package/man/canon-context.1 +2 -2
  31. package/man/canon-dashboard.1 +2 -2
  32. package/man/canon-demo-init.1 +2 -2
  33. package/man/canon-demo-review.1 +2 -2
  34. package/man/canon-demo.1 +2 -2
  35. package/man/canon-dispatch-begin.1 +3 -3
  36. package/man/canon-dispatch-diff.1 +2 -2
  37. package/man/canon-dispatch-end.1 +2 -2
  38. package/man/canon-dispatch.1 +2 -2
  39. package/man/canon-divergence-accept.1 +3 -3
  40. package/man/canon-divergence-add.1 +3 -3
  41. package/man/canon-divergence-defer.1 +3 -3
  42. package/man/canon-divergence-list.1 +3 -3
  43. package/man/canon-divergence-resolve.1 +2 -2
  44. package/man/canon-divergence.1 +2 -2
  45. package/man/canon-evidence-add.1 +6 -6
  46. package/man/canon-evidence-approval-payload.1 +3 -3
  47. package/man/canon-evidence-audit.1 +6 -6
  48. package/man/canon-evidence.1 +2 -2
  49. package/man/canon-export.1 +4 -4
  50. package/man/canon-feature-new.1 +2 -2
  51. package/man/canon-feature.1 +2 -2
  52. package/man/canon-finding-add.1 +4 -4
  53. package/man/canon-finding-close.1 +6 -8
  54. package/man/canon-finding-list.1 +3 -3
  55. package/man/canon-finding.1 +2 -2
  56. package/man/canon-format.1 +2 -2
  57. package/man/canon-gate-check.1 +2 -2
  58. package/man/canon-gate-install-hooks.1 +2 -2
  59. package/man/canon-gate-promote.1 +2 -2
  60. package/man/canon-gate.1 +2 -2
  61. package/man/canon-ingest-plans.1 +2 -2
  62. package/man/canon-ingest-records.1 +2 -2
  63. package/man/canon-ingest-sessions.1 +2 -2
  64. package/man/canon-ingest.1 +2 -2
  65. package/man/canon-init.1 +28 -9
  66. package/man/canon-inventory-sync.1 +2 -2
  67. package/man/canon-inventory.1 +2 -2
  68. package/man/canon-ledger-compact.1 +2 -2
  69. package/man/canon-ledger.1 +2 -2
  70. package/man/canon-migrate.1 +2 -2
  71. package/man/canon-plugin-sync.1 +2 -2
  72. package/man/canon-plugin.1 +2 -2
  73. package/man/canon-policy-approve.1 +2 -2
  74. package/man/canon-policy-show.1 +2 -2
  75. package/man/canon-policy.1 +2 -2
  76. package/man/canon-prompt-add.1 +2 -2
  77. package/man/canon-prompt-show.1 +2 -2
  78. package/man/canon-prompt.1 +2 -2
  79. package/man/canon-purge.1 +3 -3
  80. package/man/canon-query.1 +3 -3
  81. package/man/canon-regime-show.1 +2 -2
  82. package/man/canon-regime.1 +2 -2
  83. package/man/canon-report-build.1 +2 -2
  84. package/man/canon-report-check.1 +2 -2
  85. package/man/canon-report-snapshot.1 +2 -2
  86. package/man/canon-report.1 +2 -2
  87. package/man/canon-retrieve.1 +2 -2
  88. package/man/canon-review-change.1 +3 -3
  89. package/man/canon-review-scenario.1 +3 -3
  90. package/man/canon-review.1 +2 -2
  91. package/man/canon-scenario-new.1 +2 -2
  92. package/man/canon-scenario.1 +2 -2
  93. package/man/canon-schema.1 +2 -2
  94. package/man/canon-search.1 +2 -2
  95. package/man/canon-selftest.1 +2 -2
  96. package/man/canon-skills-check.1 +22 -5
  97. package/man/canon-skills-doctor.1 +24 -7
  98. package/man/canon-skills-install.1 +22 -5
  99. package/man/canon-skills-show.1 +2 -2
  100. package/man/canon-skills.1 +3 -3
  101. package/man/canon-status.1 +2 -2
  102. package/man/canon-strategy-approval-payload.1 +3 -3
  103. package/man/canon-strategy-promote.1 +2 -2
  104. package/man/canon-strategy-rollback.1 +4 -4
  105. package/man/canon-strategy.1 +2 -2
  106. package/man/canon-subject-adopt.1 +2 -2
  107. package/man/canon-subject-move.1 +2 -2
  108. package/man/canon-subject-new.1 +2 -2
  109. package/man/canon-subject-show.1 +2 -2
  110. package/man/canon-subject-unadopt.1 +2 -2
  111. package/man/canon-subject.1 +2 -2
  112. package/man/canon-task-done.1 +2 -2
  113. package/man/canon-task.1 +2 -2
  114. package/man/canon-tier-age.1 +2 -2
  115. package/man/canon-tier.1 +2 -2
  116. package/man/canon-trace.1 +4 -4
  117. package/man/canon.1 +3 -3
  118. package/package.json +4 -4
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-evidence-audit 1 "audit 0.36.0"
3
+ .TH canon-evidence-audit 1 "audit 0.38.0"
4
4
  .SH NAME
5
5
  canon\-evidence\-audit \- Record an external evaluator\*(Aqs re\-audit of one scenario (class `audit`; the verdict follows \-\-audit\-result; canon never runs the evaluator)
6
6
  .SH SYNOPSIS
@@ -33,7 +33,7 @@ Spec corpus id of the scenario. Required only when canon.yaml configures more th
33
33
  The reference a reader can resolve: a command line, commit sha, or report path. NEVER run or resolved by canon
34
34
  .TP
35
35
  \fB\-\-summary\fR \fI<TEXT>\fR
36
- One\-line note (scanned for fabrication markers; line breaks refused)
36
+ One line of text (scanned for fabrication markers). The white space around it is trimmed; a control character or line break inside it is refused
37
37
  .TP
38
38
  \fB\-\-command\-result\fR \fI<TEXT>\fR
39
39
  The real captured output backing \-\-summary (requires \-\-summary; scanned for fabrication markers)
@@ -42,7 +42,7 @@ The real captured output backing \-\-summary (requires \-\-summary; scanned for
42
42
  RunId (ULID) of the run that produced this evidence
43
43
  .TP
44
44
  \fB\-\-actor\fR \fI<ACTOR_ID>\fR [default: canon]
45
- The attesting actor\*(Aqs id (recorded as the attestation\*(Aqs author; line breaks refused)
45
+ The attesting actor\*(Aqs id (recorded as the attestation\*(Aqs author). One line of text: the white space around it is trimmed; a control character or line break inside it is refused
46
46
  .TP
47
47
  \fB\-\-role\fR \fI<ROLE>\fR
48
48
  The attesting role; `canon gate promote` derives its run_seq partition key from it. Default: the declared role (\-\-as / CANON_ROLE); required when none is declared
@@ -65,7 +65,7 @@ EXPERIMENTAL: also bind this report case (a Rust test: its function name); repea
65
65
  \fB\-\-max\-artifact\-mib\fR \fI<N>\fR [default: 25]
66
66
  Per\-file size limit for the artifact store (.canon/artifacts/sha256/), in MiB; a larger bound file is refused
67
67
  .TP
68
- \fB\-\-evaluator\fR \fI<ID>\fR
68
+ \fB\-\-evaluator\fR \fI<EVALUATOR_ID>\fR
69
69
  The external evaluator that re\-audited the scenario (canon never runs it)
70
70
  .TP
71
71
  \fB\-\-evaluator\-version\fR \fI<TEXT>\fR
@@ -90,7 +90,7 @@ indeterminate
90
90
  .RE
91
91
  .TP
92
92
  \fB\-\-override\-reason\fR \fI<TEXT>\fR
93
- Attest anyway while a subject this record attests for has a brief awaiting the human\*(Aqs answer (one line, recorded on the record with \-\-actor)
93
+ Attest anyway while a subject this record attests for has a brief awaiting the human\*(Aqs answer (one line of text, recorded on the record with \-\-actor)
94
94
  .TP
95
95
  \fB\-\-promote\fR
96
96
  Promote the record this run staged, in the same run; records others staged stay staged (the default under canon.yaml `write: { promote: auto }`)
@@ -118,4 +118,4 @@ The re\-audited scenario (`<area>.<surface>.<nn>`)
118
118
  .SH EXTRA
119
119
  Records an external evaluator\*(Aqs re\-audit of one scenario: \-\-evaluator, \-\-evaluator\-version, \-\-evaluator\-digest <sha256>, \-\-audit\-result confirmed|refuted|indeterminate, and optional \-\-report/\-\-artifact counterexamples, bound and stored like any report. canon never generates or runs the audit. An audit never becomes the scenario\*(Aqs declared verdict; a refuted latest audit is false\-success in canon gate check, whatever the declared verdict says.
120
120
  .SH VERSION
121
- v0.36.0
121
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-evidence 1 "evidence 0.36.0"
3
+ .TH canon-evidence 1 "evidence 0.38.0"
4
4
  .SH NAME
5
5
  canon\-evidence \- Author a staged, attributed evidence attestation for a plan task
6
6
  .SH SYNOPSIS
@@ -54,4 +54,4 @@ each add to commit it (assigns run_seq).
54
54
 
55
55
  See `canon evidence add \-\-help` for exactly what the gate does and does not check.
56
56
  .SH VERSION
57
- v0.36.0
57
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-export 1 "export 0.36.0"
3
+ .TH canon-export 1 "export 0.38.0"
4
4
  .SH NAME
5
5
  canon\-export \- Export a redacted retention manifest without deleting records
6
6
  .SH SYNOPSIS
@@ -64,10 +64,10 @@ finding
64
64
  .RE
65
65
  .TP
66
66
  \fB\-\-before\fR \fI<TIMESTAMP>\fR
67
- Only records strictly before this time (RFC3339 or YYYY\-MM\-DD, UTC)
67
+ Only records strictly before this time: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`)
68
68
  .TP
69
69
  \fB\-\-after\fR \fI<TIMESTAMP>\fR
70
- Only records at or after this time (RFC3339 or YYYY\-MM\-DD, UTC)
70
+ Only records at or after this time: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`)
71
71
  .TP
72
72
  \fB\-o\fR, \fB\-\-output\fR \fI<FILE>\fR
73
73
  Write the manifest to this file (mode 0600) instead of stdout
@@ -105,4 +105,4 @@ Print help
105
105
  \fB\-V\fR, \fB\-\-version\fR
106
106
  Print version
107
107
  .SH VERSION
108
- v0.36.0
108
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-feature-new 1 "new 0.36.0"
3
+ .TH canon-feature-new 1 "new 0.38.0"
4
4
  .SH NAME
5
5
  canon\-feature\-new \- Create a fresh .feature file for a new area.surface
6
6
  .SH SYNOPSIS
@@ -59,4 +59,4 @@ Print version
59
59
  <\fISURFACE\fR>
60
60
  <area>.<surface> the fresh .feature file scaffolds
61
61
  .SH VERSION
62
- v0.36.0
62
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-feature 1 "feature 0.36.0"
3
+ .TH canon-feature 1 "feature 0.38.0"
4
4
  .SH NAME
5
5
  canon\-feature \- Scaffold a new .feature spec file
6
6
  .SH SYNOPSIS
@@ -36,4 +36,4 @@ Print version
36
36
  canon\-feature\-new(1)
37
37
  Create a fresh .feature file for a new area.surface
38
38
  .SH VERSION
39
- v0.36.0
39
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-finding-add 1 "add 0.36.0"
3
+ .TH canon-finding-add 1 "add 0.38.0"
4
4
  .SH NAME
5
5
  canon\-finding\-add \- Record one code\-review finding (promoted in the same run under `write: { promote: auto }` or with \-\-promote; under `write.promote: manual`, commit it with `canon gate promote`)
6
6
  .SH SYNOPSIS
@@ -68,10 +68,10 @@ deferred
68
68
  .RE
69
69
  .TP
70
70
  \fB\-\-actor\fR \fI<ACTOR_ID>\fR
71
- The reviewer who raised it, recorded as the finding\*(Aqs reviewer and author (line breaks refused)
71
+ The reviewer who raised it, recorded as the finding\*(Aqs reviewer and author. One line of text: the white space around it is trimmed; a control character or line break inside it is refused
72
72
  .TP
73
73
  \fB\-\-summary\fR \fI<TEXT>\fR
74
- One line of what the finding IS, in the reviewer\*(Aqs own words. NEVER checked against the code (line breaks refused)
74
+ One line of what the finding IS, in the reviewer\*(Aqs own words. NEVER checked against the code. The white space around it is trimmed; a control character or line break inside it is refused
75
75
  .TP
76
76
  \fB\-\-rev\fR \fI<REV>\fR [default: HEAD]
77
77
  The commit this record is about: any git revision (`HEAD~1`, a branch, a tag, a short sha); the full sha is recorded with the code tree it saw. The default HEAD records the working tree as it stands (uncommitted code included), and a commit made from it has the same code tree. Outside git, or with no commit, the command refuses (COMMIT_REQUIRED)
@@ -205,4 +205,4 @@ The loop:
205
205
  Under `write.promote: manual` (no `write:` key), run `canon gate promote` to
206
206
  commit it.
207
207
  .SH VERSION
208
- v0.36.0
208
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-finding-close 1 "close 0.36.0"
3
+ .TH canon-finding-close 1 "close 0.38.0"
4
4
  .SH NAME
5
5
  canon\-finding\-close \- Move an already\-committed finding\*(Aqs disposition (promoted in the same run under `write: { promote: auto }` or with \-\-promote; under `write.promote: manual`, commit it with `canon gate promote`)
6
6
  .SH SYNOPSIS
@@ -33,15 +33,13 @@ Which review round raised it (1\-based)
33
33
  The finding\*(Aqs index within the round (1\-based)
34
34
  .TP
35
35
  \fB\-\-disposition\fR \fI<DISPOSITION>\fR
36
- Where it lands: fixed / rejected / deferred / open (reopening is a real transition). fixed records \-\-resolution\-rev, default HEAD, and only fixed may carry one
36
+ Where it lands: fixed / rejected / deferred (`open` is refused: a defect that came back is a new finding). fixed records \-\-resolution\-rev, default HEAD, and only fixed may carry one
37
37
  .br
38
38
 
39
39
  .br
40
40
  \fIPossible values:\fR
41
41
  .RS 14
42
42
  .IP \(bu 2
43
- open
44
- .IP \(bu 2
45
43
  fixed
46
44
  .IP \(bu 2
47
45
  rejected
@@ -53,13 +51,13 @@ deferred
53
51
  The commit that closed it, any git revision (resolved to the full sha, with the code tree it saw). Permitted only with \-\-disposition fixed, where it defaults to HEAD. Existence only; canon never reads the commit\*(Aqs message or diff
54
52
  .TP
55
53
  \fB\-\-reason\fR \fI<TEXT>\fR
56
- Why it was closed, one line. Required for rejected and deferred, optional for fixed and open; stored on the closing version and shown by `finding list`
54
+ Why it was closed, one line. Required for rejected and deferred, optional for fixed; stored on the closing version and shown by `finding list`
57
55
  .TP
58
56
  \fB\-\-actor\fR \fI<ACTOR_ID>\fR [default: canon]
59
57
  The actor recorded as authoring the TRANSITION — not the original finding\*(Aqs author, which is preserved on the record this supersedes
60
58
  .TP
61
- \fB\-\-role\fR \fI<ROLE>\fR [default: reviewer]
62
- Attribution only — no partition key derives from it
59
+ \fB\-\-role\fR \fI<ROLE>\fR
60
+ The role the close is recorded under: the declared one (\-\-as, CANON_ROLE), and \-\-role only when it names that role or none is declared; no role is recorded when neither is given. Only a reviewer closes as rejected or deferred
63
61
  .TP
64
62
  \fB\-\-session\fR \fI<SESSION_ID>\fR
65
63
  The session that authored the TRANSITION (recorded as actor.session_id)
@@ -114,4 +112,4 @@ Examples:
114
112
  canon finding close s44\-spec\-derived\-worklist \-\-round 1 \-\-seq 9 \\
115
113
  \-\-disposition rejected \-\-reason "not a defect"
116
114
  .SH VERSION
117
- v0.36.0
115
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-finding-list 1 "list 0.36.0"
3
+ .TH canon-finding-list 1 "list 0.38.0"
4
4
  .SH NAME
5
5
  canon\-finding\-list \- List a change\*(Aqs committed findings at their latest version: round, seq, severity, disposition, reviewer and summary
6
6
  .SH SYNOPSIS
@@ -48,7 +48,7 @@ Resume after the last record of the previous page (the `nextCursor` it reported)
48
48
  Return every record from the cursor on, not one page
49
49
  .TP
50
50
  \fB\-\-fields\fR \fI<FIELDS>\fR
51
- With \-\-json, keep only these members of each finding (comma\-separated field paths: severity, disposition, reviewer, summary, resolutionSha, fileRef, reason; round and seq are always kept)
51
+ With \-\-json, keep only these members of each finding (comma\-separated field paths: severity, disposition, reviewer, summary, resolutionSha, fileRef, reason, closedBy, closedRole; round and seq are always kept)
52
52
  .TP
53
53
  \fB\-h\fR, \fB\-\-help\fR
54
54
  Print help
@@ -56,4 +56,4 @@ Print help
56
56
  \fB\-V\fR, \fB\-\-version\fR
57
57
  Print version
58
58
  .SH VERSION
59
- v0.36.0
59
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-finding 1 "finding 0.36.0"
3
+ .TH canon-finding 1 "finding 0.38.0"
4
4
  .SH NAME
5
5
  canon\-finding \- Record one code\-review finding as a durable record
6
6
  .SH SYNOPSIS
@@ -64,4 +64,4 @@ RECORDED OBSERVATION, NOT PROOF — canon never verifies that the defect
64
64
  existed, that it was fixed, or that \-\-introduced\-rev is the true cause.
65
65
  See `canon finding add \-\-help` for exactly what it does and does not establish.
66
66
  .SH VERSION
67
- v0.36.0
67
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-format 1 "format 0.36.0"
3
+ .TH canon-format 1 "format 0.38.0"
4
4
  .SH NAME
5
5
  canon\-format \- Validate a spec/artifact corpus against canon\*(Aqs format
6
6
  .SH SYNOPSIS
@@ -46,4 +46,4 @@ Examples:
46
46
  canon format spec
47
47
  canon format spec \-\-repo ~/work/myrepo
48
48
  .SH VERSION
49
- v0.36.0
49
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-gate-check 1 "check 0.36.0"
3
+ .TH canon-gate-check 1 "check 0.38.0"
4
4
  .SH NAME
5
5
  canon\-gate\-check \- Run the coverage/ledger/staleness/trust checks (0 clean, 1 red, 2 usage)
6
6
  .SH SYNOPSIS
@@ -41,4 +41,4 @@ Print help
41
41
  \fB\-V\fR, \fB\-\-version\fR
42
42
  Print version
43
43
  .SH VERSION
44
- v0.36.0
44
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-gate-install-hooks 1 "install-hooks 0.36.0"
3
+ .TH canon-gate-install-hooks 1 "install-hooks 0.38.0"
4
4
  .SH NAME
5
5
  canon\-gate\-install\-hooks \- Install the gate hook into .claude/settings.json / .codex/hooks.json
6
6
  .SH SYNOPSIS
@@ -56,4 +56,4 @@ Print help
56
56
  \fB\-V\fR, \fB\-\-version\fR
57
57
  Print version
58
58
  .SH VERSION
59
- v0.36.0
59
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-gate-promote 1 "promote 0.36.0"
3
+ .TH canon-gate-promote 1 "promote 0.38.0"
4
4
  .SH NAME
5
5
  canon\-gate\-promote \- Promote staged records (evidence, findings, divergences) to the committed ledger
6
6
  .SH SYNOPSIS
@@ -59,4 +59,4 @@ Print help
59
59
  \fB\-V\fR, \fB\-\-version\fR
60
60
  Print version
61
61
  .SH VERSION
62
- v0.36.0
62
+ v0.38.0
package/man/canon-gate.1 CHANGED
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-gate 1 "gate 0.36.0"
3
+ .TH canon-gate 1 "gate 0.38.0"
4
4
  .SH NAME
5
5
  canon\-gate \- Run evidence gates, promote staged records, install hooks
6
6
  .SH SYNOPSIS
@@ -47,4 +47,4 @@ Examples:
47
47
  canon task done my\-change#3
48
48
  canon gate install\-hooks
49
49
  .SH VERSION
50
- v0.36.0
50
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ingest-plans 1 "plans 0.36.0"
3
+ .TH canon-ingest-plans 1 "plans 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ingest\-plans \- Import plans as Change/Task records: canon\*(Aqs own .canon/changes, then the configured external sources (openspec, superpowers)
6
6
  .SH SYNOPSIS
@@ -50,4 +50,4 @@ Print help
50
50
  \fB\-V\fR, \fB\-\-version\fR
51
51
  Print version
52
52
  .SH VERSION
53
- v0.36.0
53
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ingest-records 1 "records 0.36.0"
3
+ .TH canon-ingest-records 1 "records 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ingest\-records \- Import review/divergence/task/handoff records and derive verdicts
6
6
  .SH SYNOPSIS
@@ -53,4 +53,4 @@ Print help
53
53
  \fB\-V\fR, \fB\-\-version\fR
54
54
  Print version
55
55
  .SH VERSION
56
- v0.36.0
56
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ingest-sessions 1 "sessions 0.36.0"
3
+ .TH canon-ingest-sessions 1 "sessions 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ingest\-sessions \- Import agent CLI session transcripts (omp/pi, Claude Code, Codex, Hermes)
6
6
  .SH SYNOPSIS
@@ -59,4 +59,4 @@ Print help
59
59
  \fB\-V\fR, \fB\-\-version\fR
60
60
  Print version
61
61
  .SH VERSION
62
- v0.36.0
62
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ingest 1 "ingest 0.36.0"
3
+ .TH canon-ingest 1 "ingest 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ingest \- Import agent sessions, records, and plans into canon\*(Aqs store
6
6
  .SH SYNOPSIS
@@ -47,4 +47,4 @@ Examples:
47
47
  canon ingest records
48
48
  canon ingest plans
49
49
  .SH VERSION
50
- v0.36.0
50
+ v0.38.0
package/man/canon-init.1 CHANGED
@@ -1,10 +1,10 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-init 1 "init 0.36.0"
3
+ .TH canon-init 1 "init 0.38.0"
4
4
  .SH NAME
5
5
  canon\-init \- Set up canon in a repo (canon.yaml, a starter policy, the AGENTS.md block, a plans home)
6
6
  .SH SYNOPSIS
7
- \fBcanon init\fR [\fB\-\-as\fR] [\fB\-\-repo\fR] [\fB\-\-check\fR] [\fB\-\-no\-agents\-md\fR] [\fB\-\-policy\fR] [\fB\-\-no\-policy\fR] [\fB\-\-providers\fR] [\fB\-\-language\fR] [\fB\-\-dry\-run\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR]
7
+ \fBcanon init\fR [\fB\-\-as\fR] [\fB\-\-repo\fR] [\fB\-\-check\fR] [\fB\-\-no\-agents\-md\fR] [\fB\-\-policy\fR] [\fB\-\-no\-policy\fR] [\fB\-\-harness\fR] [\fB\-\-no\-harness\fR] [\fB\-\-language\fR] [\fB\-\-dry\-run\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR]
8
8
  .SH DESCRIPTION
9
9
  Set up canon in a repo (canon.yaml, a starter policy, the AGENTS.md block, a plans home)
10
10
  .SH OPTIONS
@@ -53,8 +53,25 @@ strict: Standard, plus independent review
53
53
  \fB\-\-no\-policy\fR
54
54
  Do not write the starter .canon/policy.yaml
55
55
  .TP
56
- \fB\-\-providers\fR \fI<LIST>\fR
57
- Harnesses to install the canon skill for, without asking (`claude`, `codex`, `omp`, `pi`, comma\-separated; `none` for none)
56
+ \fB\-\-harness\fR \fI<NAME>\fR
57
+ A harness to install the canon skill for, without asking (repeatable, once per name): `claude`, `codex`, `omp` or `pi`. Omitted, and no `\-\-no\-harness`: the detected harnesses
58
+ .br
59
+
60
+ .br
61
+ \fIPossible values:\fR
62
+ .RS 14
63
+ .IP \(bu 2
64
+ claude
65
+ .IP \(bu 2
66
+ codex
67
+ .IP \(bu 2
68
+ omp
69
+ .IP \(bu 2
70
+ pi
71
+ .RE
72
+ .TP
73
+ \fB\-\-no\-harness\fR
74
+ Install the canon skill for no harness: records an empty `skills.providers`
58
75
  .TP
59
76
  \fB\-\-language\fR \fI<TAG>\fR
60
77
  Language the briefs are written in (`en`, `ko`, or any tag: `en` headings, structure rules only); recorded as `language:` in canon.yaml
@@ -77,7 +94,7 @@ Print version
77
94
  Examples:
78
95
  canon init
79
96
  canon init \-\-policy light
80
- canon init \-\-providers claude,codex
97
+ canon init \-\-harness claude \-\-harness codex
81
98
  canon init \-\-no\-agents\-md \-\-no\-policy
82
99
  canon init \-\-check
83
100
 
@@ -86,13 +103,15 @@ scenario; standard adds a `@case:failure` scenario per feature surface; strict
86
103
  adds independent review. The level is the first line of .canon/policy.yaml and
87
104
  `canon status` shows it.
88
105
 
89
- Harnesses (\-\-providers): init never asks. Without \-\-providers it takes the
106
+ Harnesses (\-\-harness, \-\-no\-harness): init never asks. Without either it takes the
90
107
  detected harnesses (.claude, .codex, .omp, .pi directories), on a terminal or
91
108
  not; with none detected it installs nothing and says how to choose. The answer is
92
- recorded as `skills: { providers: [...] }` in canon.yaml (`\-\-providers none`
93
- records `[]`).
109
+ recorded as `skills: { providers: [...] }` in canon.yaml (`\-\-no\-harness`
110
+ records `[]`). `\-\-harness` is given once per name, each one of claude, codex, omp or
111
+ pi in lowercase; a name given twice counts once, and `\-\-harness` with `\-\-no\-harness`
112
+ is refused.
94
113
 
95
114
  Rerunning in a repo that has canon.yaml leaves canon.yaml and .canon/policy.yaml
96
115
  alone and only refreshes the canon block in AGENTS.md.
97
116
  .SH VERSION
98
- v0.36.0
117
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-inventory-sync 1 "sync 0.36.0"
3
+ .TH canon-inventory-sync 1 "sync 0.38.0"
4
4
  .SH NAME
5
5
  canon\-inventory\-sync \- Validate each spec root, then materialize scenario index records
6
6
  .SH SYNOPSIS
@@ -47,4 +47,4 @@ Print help
47
47
  \fB\-V\fR, \fB\-\-version\fR
48
48
  Print version
49
49
  .SH VERSION
50
- v0.36.0
50
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-inventory 1 "inventory 0.36.0"
3
+ .TH canon-inventory 1 "inventory 0.38.0"
4
4
  .SH NAME
5
5
  canon\-inventory \- Index a validated .feature corpus into the scenario ledger
6
6
  .SH SYNOPSIS
@@ -36,4 +36,4 @@ Print version
36
36
  canon\-inventory\-sync(1)
37
37
  Validate each spec root, then materialize scenario index records
38
38
  .SH VERSION
39
- v0.36.0
39
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ledger-compact 1 "compact 0.36.0"
3
+ .TH canon-ledger-compact 1 "compact 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ledger\-compact \- Move superseded versions of every record out of the ledger into the archive
6
6
  .SH SYNOPSIS
@@ -47,4 +47,4 @@ Print help
47
47
  \fB\-V\fR, \fB\-\-version\fR
48
48
  Print version
49
49
  .SH VERSION
50
- v0.36.0
50
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-ledger 1 "ledger 0.36.0"
3
+ .TH canon-ledger 1 "ledger 0.38.0"
4
4
  .SH NAME
5
5
  canon\-ledger \- Keep the ledger to the current version of each record
6
6
  .SH SYNOPSIS
@@ -51,4 +51,4 @@ this is for a ledger written before 0.23, or after an interrupted move. Idempote
51
51
  `canon migrate` runs it. A record that carries a standing claim (a flagged overlay, a
52
52
  brief override, an approval at the current evidence) stays in the ledger.
53
53
  .SH VERSION
54
- v0.36.0
54
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-migrate 1 "migrate 0.36.0"
3
+ .TH canon-migrate 1 "migrate 0.38.0"
4
4
  .SH NAME
5
5
  canon\-migrate \- Bring a repo from an earlier canon up to date: the 0.17 layout (specs, changes, approvals, skills, .gitignore), the 0.28 hooks, scripts and skill stub (backed up under .canon/migrate\-backup/), the 0.23 latest\-only ledger (superseded versions to .canon/archive) and 0.23 review pins
6
6
  .SH SYNOPSIS
@@ -120,4 +120,4 @@ kept. canon.yaml is written atomically.
120
120
  every agent role). `\-\-revert` restores them byte for byte and refuses, naming the file, when one changed
121
121
  since the migrate.
122
122
  .SH VERSION
123
- v0.36.0
123
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-plugin-sync 1 "sync 0.36.0"
3
+ .TH canon-plugin-sync 1 "sync 0.38.0"
4
4
  .SH NAME
5
5
  canon\-plugin\-sync \- Validate and write a plugin\*(Aqs overlay records
6
6
  .SH SYNOPSIS
@@ -50,4 +50,4 @@ Print version
50
50
  <\fIPLUGIN_ID\fR>
51
51
  A .canon/plugins/<id>/plugin.yaml manifest id (e.g. porting)
52
52
  .SH VERSION
53
- v0.36.0
53
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-plugin 1 "plugin 0.36.0"
3
+ .TH canon-plugin 1 "plugin 0.38.0"
4
4
  .SH NAME
5
5
  canon\-plugin \- Sync plugin overlay records onto the ledger
6
6
  .SH SYNOPSIS
@@ -36,4 +36,4 @@ Print version
36
36
  canon\-plugin\-sync(1)
37
37
  Validate and write a plugin\*(Aqs overlay records
38
38
  .SH VERSION
39
- v0.36.0
39
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-policy-approve 1 "approve 0.36.0"
3
+ .TH canon-policy-approve 1 "approve 0.38.0"
4
4
  .SH NAME
5
5
  canon\-policy\-approve \- Approve the current .canon/policy.yaml (written directly; nothing to promote)
6
6
  .SH SYNOPSIS
@@ -53,4 +53,4 @@ Print help
53
53
  \fB\-V\fR, \fB\-\-version\fR
54
54
  Print version
55
55
  .SH VERSION
56
- v0.36.0
56
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-policy-show 1 "show 0.36.0"
3
+ .TH canon-policy-show 1 "show 0.38.0"
4
4
  .SH NAME
5
5
  canon\-policy\-show \- Show the policy\*(Aqs digest and its approval (who, when, which bytes)
6
6
  .SH SYNOPSIS
@@ -38,4 +38,4 @@ Print help
38
38
  \fB\-V\fR, \fB\-\-version\fR
39
39
  Print version
40
40
  .SH VERSION
41
- v0.36.0
41
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-policy 1 "policy 0.36.0"
3
+ .TH canon-policy 1 "policy 0.38.0"
4
4
  .SH NAME
5
5
  canon\-policy \- Record who approved the gate\*(Aqs policy (.canon/policy.yaml) and which bytes
6
6
  .SH SYNOPSIS
@@ -49,4 +49,4 @@ approval (or whose approval cannot be read) fails closed: `gate check` exits 1
49
49
  and `subject move` refuses to ship or reopen; `\-\-override\-reason` does not
50
50
  waive it. `canon policy show` reads the approval back.
51
51
  .SH VERSION
52
- v0.36.0
52
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-prompt-add 1 "add 0.36.0"
3
+ .TH canon-prompt-add 1 "add 0.38.0"
4
4
  .SH NAME
5
5
  canon\-prompt\-add \- Add a prompt bundle from a repository\-local JSON manifest
6
6
  .SH SYNOPSIS
@@ -44,4 +44,4 @@ Print help
44
44
  <\fINAME@VERSION\fR>
45
45
  The bundle to register, `NAME@VERSION`
46
46
  .SH VERSION
47
- v0.36.0
47
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-prompt-show 1 "show 0.36.0"
3
+ .TH canon-prompt-show 1 "show 0.38.0"
4
4
  .SH NAME
5
5
  canon\-prompt\-show \- Select a registered prompt bundle version
6
6
  .SH SYNOPSIS
@@ -38,4 +38,4 @@ Print help
38
38
  <\fINAME@VERSION\fR>
39
39
  The bundle to show, `NAME@VERSION`
40
40
  .SH VERSION
41
- v0.36.0
41
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-prompt 1 "prompt 0.36.0"
3
+ .TH canon-prompt 1 "prompt 0.38.0"
4
4
  .SH NAME
5
5
  canon\-prompt \- Register and select versioned prompt bundles
6
6
  .SH SYNOPSIS
@@ -40,4 +40,4 @@ Examples:
40
40
  canon prompt add reviewer@v1 \-\-manifest .canon/reviewer.json
41
41
  canon prompt show reviewer@v1 \-\-json
42
42
  .SH VERSION
43
- v0.36.0
43
+ v0.38.0
package/man/canon-purge.1 CHANGED
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-purge 1 "purge 0.36.0"
3
+ .TH canon-purge 1 "purge 0.38.0"
4
4
  .SH NAME
5
5
  canon\-purge \- Remove allowlisted records older than a cutoff: the bare run previews the removal set and its planDigest, `\-\-commit \-\-plan\-digest <PLAN_DIGEST>` deletes it
6
6
  .SH SYNOPSIS
@@ -44,7 +44,7 @@ trajectory
44
44
  .RE
45
45
  .TP
46
46
  \fB\-\-before\fR \fI<TIMESTAMP>\fR
47
- Remove records strictly before this time (RFC3339 or YYYY\-MM\-DD, UTC)
47
+ Remove records strictly before this time: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`)
48
48
  .TP
49
49
  \fB\-\-commit\fR
50
50
  Make the change; without it the command only previews.
@@ -67,4 +67,4 @@ Print help
67
67
  \fB\-V\fR, \fB\-\-version\fR
68
68
  Print version
69
69
  .SH VERSION
70
- v0.36.0
70
+ v0.38.0