@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
@@ -0,0 +1,75 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-artifacts-prune 1 "prune 0.38.0"
4
+ .SH NAME
5
+ canon\-artifacts\-prune \- Delete the artifact blobs no record binds any more (the bare run previews; \-\-commit \-\-plan\-digest deletes)
6
+ .SH SYNOPSIS
7
+ \fBcanon artifacts prune\fR [\fB\-\-as\fR] [\fB\-\-keep\-days\fR] [\fB\-\-limit\fR] [\fB\-\-cursor\fR] [\fB\-\-all\fR] [\fB\-\-commit\fR] [\fB\-\-plan\-digest\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR]
8
+ .SH DESCRIPTION
9
+ Delete the artifact blobs no record binds any more (the bare run previews; \-\-commit \-\-plan\-digest deletes)
10
+ .SH OPTIONS
11
+ .TP
12
+ \fB\-\-as\fR \fI<ROLE>\fR
13
+ The role you act as: planner, implementer, reviewer or orchestrator. Overrides `CANON_ROLE`. `schema` and `context` list only the role\*(Aqs commands, `status` keeps its steps, and `\-\-role` on `evidence add` / `evidence audit` / `review scenario` / `review change` is this role unless given
14
+ .br
15
+
16
+ .br
17
+ \fIPossible values:\fR
18
+ .RS 14
19
+ .IP \(bu 2
20
+ planner
21
+ .IP \(bu 2
22
+ implementer
23
+ .IP \(bu 2
24
+ reviewer
25
+ .IP \(bu 2
26
+ orchestrator
27
+ .RE
28
+ .TP
29
+ \fB\-\-keep\-days\fR \fI<N>\fR
30
+ Also keep the blobs that evidence and reviews written in the last N days bind
31
+ .TP
32
+ \fB\-\-limit\fR \fI<N>\fR [default: 100]
33
+ Return at most this many records per page
34
+ .TP
35
+ \fB\-\-cursor\fR \fI<CURSOR>\fR
36
+ Resume after the last record of the previous page (the `nextCursor` it reported)
37
+ .TP
38
+ \fB\-\-all\fR
39
+ Return every record from the cursor on, not one page
40
+ .TP
41
+ \fB\-\-commit\fR
42
+ Make the change; without it the command only previews.
43
+ .TP
44
+ \fB\-\-plan\-digest\fR \fI<PLAN_DIGEST>\fR
45
+ The digest of the preview this commit carries out.
46
+ .TP
47
+ \fB\-\-repo\fR \fI<DIR>\fR
48
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
49
+ .TP
50
+ \fB\-\-json\fR
51
+ Output JSON instead of the human\-readable form
52
+ .TP
53
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
54
+ The arguments as JSON: an object (one run) or an array / NDJSON file or `\-` (a batch); keys are the option names in camelCase, `operands` an array
55
+ .TP
56
+ \fB\-h\fR, \fB\-\-help\fR
57
+ Print help
58
+ .TP
59
+ \fB\-V\fR, \fB\-\-version\fR
60
+ Print version
61
+ .SH EXTRA
62
+ Examples:
63
+ canon artifacts prune
64
+ canon artifacts prune \-\-keep\-days 30
65
+ canon artifacts prune \-\-commit \-\-plan\-digest <PLAN_DIGEST>
66
+
67
+ The store only grows: a report written anew on every run adds a blob per run. A blob stays while a record binds it: the latest evidence of a task or of a scenario and the reviews still in effect (what `canon gate check` and `canon artifacts verify` read), a record not promoted yet, and, with \-\-keep\-days N, any evidence or review written in the last N days. Every other blob of the configured store is deleted: the local directory .canon/artifacts/sha256, or the objects of the object\-store tier `artifact_store:` names (the same rule; a copy left in the local directory of such a repo is judged by it too).
68
+
69
+ The bare run previews: it says how many blobs and bytes go and stay, why each kept blob stays, lists the blobs to delete a page at a time (\-\-limit, \-\-cursor, \-\-all; the totals are the whole\*(Aqs) and writes nothing. With nothing to delete it says so and offers no \-\-commit. \-\-commit \-\-plan\-digest deletes exactly that plan (PLAN_STALE, exit 2, nothing deleted, when evidence or a record changed since). A repo whose records or staging cannot be read in full is refused: a blob is never deleted on a guess. After a prune, `canon artifacts verify` and `canon gate check` answer as before.
70
+
71
+ A deleted local blob leaves the working tree, so commit the removal with the ledger; it stays in git history, and shrinking that history is the repo owner\*(Aqs call, not this command\*(Aqs. A deleted object of a tier cannot be undone: the tier keeps no other copy. A delete that fails stops the run (ARTIFACTS_PRUNE_INCOMPLETE says what was deleted); a new preview lists what remains.
72
+
73
+ Exit 0 for a preview or a commit, 1 when a delete failed, 2 when the plan is stale or the records or the store cannot be read.
74
+ .SH VERSION
75
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-artifacts-store 1 "store 0.36.0"
3
+ .TH canon-artifacts-store 1 "store 0.38.0"
4
4
  .SH NAME
5
5
  canon\-artifacts\-store \- Store the bound files of existing evidence records and current reviews in the artifact store (.canon/artifacts/sha256/)
6
6
  .SH SYNOPSIS
@@ -51,4 +51,4 @@ For records written before canon stored bound bytes (0.11\-0.13), and for any ev
51
51
 
52
52
  Exit 0 when the pass ran (the gate decides whether an unstored file matters), 2 when the ledger cannot be read or a write fails.
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-artifacts-verify 1 "verify 0.36.0"
3
+ .TH canon-artifacts-verify 1 "verify 0.38.0"
4
4
  .SH NAME
5
5
  canon\-artifacts\-verify \- Check that the artifact store holds every file the latest evidence and current reviews bind (\-\-full re\-hashes the stored bytes)
6
6
  .SH SYNOPSIS
@@ -45,4 +45,4 @@ Asks the store canon.yaml\*(Aqs `artifacts:` block selects (default: local, .can
45
45
 
46
46
  Exit 0 when every file is stored, 1 when one is missing or altered (data.problems names each), 2 when the store cannot be used or reached: an unreachable store is a refusal, never a pass.
47
47
  .SH VERSION
48
- v0.36.0
48
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-artifacts 1 "artifacts 0.36.0"
3
+ .TH canon-artifacts 1 "artifacts 0.38.0"
4
4
  .SH NAME
5
5
  canon\-artifacts \- Check or move the evidence artifact store (local, or an object\-store tier)
6
6
  .SH SYNOPSIS
@@ -41,5 +41,8 @@ Store the bound files of existing evidence records and current reviews in the ar
41
41
  .TP
42
42
  canon\-artifacts\-move(1)
43
43
  Move the local artifact blobs to an object\-store tier, verify them, and remove the local copies
44
+ .TP
45
+ canon\-artifacts\-prune(1)
46
+ Delete the artifact blobs no record binds any more (the bare run previews; \-\-commit \-\-plan\-digest deletes)
44
47
  .SH VERSION
45
- v0.36.0
48
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-brief-approve 1 "approve 0.36.0"
3
+ .TH canon-brief-approve 1 "approve 0.38.0"
4
4
  .SH NAME
5
5
  canon\-brief\-approve \- Record the human\*(Aqs approval of the brief, bound to its text; refused while `brief check` has blockers
6
6
  .SH SYNOPSIS
@@ -66,10 +66,12 @@ Examples:
66
66
  Several ids take one name, one answer and one timestamp. Every id is checked
67
67
  first; one refused id refuses the call (the first refused id\*(Aqs code, with a
68
68
  detail for each) and nothing is
69
- written. Writes `Approved: <who> <when> — "<words>" (brief sha256:<digest>)` into the
70
- brief (the digest covers the brief without its `Approved:` lines) and records
69
+ written. Writes `Approved: <who> <when> — "<words>" (code tree <id>) (brief sha256:<digest>)` into the
70
+ brief (the digest covers the brief without its `Approved:` lines; the code tree is the work
71
+ tree\*(Aqs as it is now, uncommitted code included, and is left out outside git or with no commit: a
72
+ chore whose approval saw the code tree that is still the current one asks for no evidence) and records
71
73
  `canon policy approve` in the same call. Edit the brief afterwards and it reads as
72
74
  not approved (BRIEF_APPROVAL_STALE) until a human answers again and this
73
75
  runs again. Run it only from the human\*(Aqs answer, with their words as \-\-note.
74
76
  .SH VERSION
75
- v0.36.0
77
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-brief-check 1 "check 0.36.0"
3
+ .TH canon-brief-check 1 "check 0.38.0"
4
4
  .SH NAME
5
5
  canon\-brief\-check \- Read the brief against the rules: blocker and advisory findings (exit 0 clean, 1 blockers, 2 refused)
6
6
  .SH SYNOPSIS
@@ -41,4 +41,4 @@ Print version
41
41
  [\fICHANGE_ID\fR]
42
42
  The change to read (default: the repo\*(Aqs only live change)
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-brief-show 1 "show 0.36.0"
3
+ .TH canon-brief-show 1 "show 0.38.0"
4
4
  .SH NAME
5
5
  canon\-brief\-show \- Show where the change stands and the next one to three steps; never edits
6
6
  .SH SYNOPSIS
@@ -50,4 +50,4 @@ Examples:
50
50
 
51
51
  The operand names the change; without it the repo\*(Aqs only live change is read.
52
52
  .SH VERSION
53
- v0.36.0
53
+ v0.38.0
package/man/canon-brief.1 CHANGED
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-brief 1 "brief 0.36.0"
3
+ .TH canon-brief 1 "brief 0.38.0"
4
4
  .SH NAME
5
5
  canon\-brief \- Check a change\*(Aqs brief (PRD format) and see the next steps; never edits
6
6
  .SH SYNOPSIS
@@ -61,4 +61,4 @@ gets one blocker, `brief.old\-format`: `canon migrate` rewrites it. A brief
61
61
  with fewer than two known headings (written before 0.19) checks as `brief.legacy`, an
62
62
  advisory. Without \-\-change, the repo\*(Aqs only live change is checked.
63
63
  .SH VERSION
64
- v0.36.0
64
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-change-new 1 "new 0.36.0"
3
+ .TH canon-change-new 1 "new 0.38.0"
4
4
  .SH NAME
5
5
  canon\-change\-new \- Write .canon/changes/<slug>/brief.md, import it, and adopt it into a subject
6
6
  .SH SYNOPSIS
@@ -63,4 +63,4 @@ Print version
63
63
  <\fICHANGE_ID\fR>
64
64
  The change\*(Aqs slug (its change_id)
65
65
  .SH VERSION
66
- v0.36.0
66
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-change 1 "change 0.36.0"
3
+ .TH canon-change 1 "change 0.38.0"
4
4
  .SH NAME
5
5
  canon\-change \- Write a plan change (.canon/changes/<slug>/brief.md) and adopt it into a subject
6
6
  .SH SYNOPSIS
@@ -39,4 +39,4 @@ Write .canon/changes/<slug>/brief.md, import it, and adopt it into a subject
39
39
  Examples:
40
40
  canon change new add\-login \-\-subject auth \-\-title \*(AqAdd login\*(Aq
41
41
  .SH VERSION
42
- v0.36.0
42
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-completion 1 "completion 0.36.0"
3
+ .TH canon-completion 1 "completion 0.38.0"
4
4
  .SH NAME
5
5
  canon\-completion \- Write the shell completion script for canon (bash, zsh or fish)
6
6
  .SH SYNOPSIS
@@ -57,4 +57,4 @@ Examples:
57
57
 
58
58
  The script is generated from the command tree, so it completes exactly what the parser accepts. It needs no repo and no network.
59
59
  .SH VERSION
60
- v0.36.0
60
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-context-pack-add 1 "add 0.36.0"
3
+ .TH canon-context-pack-add 1 "add 0.38.0"
4
4
  .SH NAME
5
5
  canon\-context\-pack\-add \- Create an immutable context pack from a repository\-local JSON manifest
6
6
  .SH SYNOPSIS
@@ -44,4 +44,4 @@ Print help
44
44
  \fB\-V\fR, \fB\-\-version\fR
45
45
  Print 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-context-pack-show 1 "show 0.36.0"
3
+ .TH canon-context-pack-show 1 "show 0.38.0"
4
4
  .SH NAME
5
5
  canon\-context\-pack\-show \- Show a context pack after verifying its manifest and content objects
6
6
  .SH SYNOPSIS
@@ -41,4 +41,4 @@ Print version
41
41
  <\fIPACK_ID\fR>
42
42
  Context pack id (sha256:<64 hex digits>)
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-context-pack-verify 1 "verify 0.36.0"
3
+ .TH canon-context-pack-verify 1 "verify 0.38.0"
4
4
  .SH NAME
5
5
  canon\-context\-pack\-verify \- Verify a context pack\*(Aqs manifest and immutable content objects
6
6
  .SH SYNOPSIS
@@ -41,4 +41,4 @@ Print version
41
41
  <\fIPACK_ID\fR>
42
42
  Context pack id (sha256:<64 hex digits>)
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-context-pack 1 "context-pack 0.36.0"
3
+ .TH canon-context-pack 1 "context-pack 0.38.0"
4
4
  .SH NAME
5
5
  canon\-context\-pack \- Create, inspect, and verify reproducible context packs
6
6
  .SH SYNOPSIS
@@ -47,4 +47,4 @@ Examples:
47
47
  canon context\-pack show sha256:<pack\-digest> \-\-repo . \-\-json
48
48
  canon context\-pack verify sha256:<pack\-digest>
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-context 1 "context 0.36.0"
3
+ .TH canon-context 1 "context 0.38.0"
4
4
  .SH NAME
5
5
  canon\-context \- Show what you can author here: record kinds, fields, enums, policies
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-dashboard 1 "dashboard 0.36.0"
3
+ .TH canon-dashboard 1 "dashboard 0.38.0"
4
4
  .SH NAME
5
5
  canon\-dashboard \- Serve the local status dashboard
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-demo-init 1 "init 0.36.0"
3
+ .TH canon-demo-init 1 "init 0.38.0"
4
4
  .SH NAME
5
5
  canon\-demo\-init \- Scaffold the demo repo (gate starts RED)
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-demo-review 1 "review 0.36.0"
3
+ .TH canon-demo-review 1 "review 0.38.0"
4
4
  .SH NAME
5
5
  canon\-demo\-review \- Record the missing reviewer evidence (gate turns GREEN)
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
package/man/canon-demo.1 CHANGED
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-demo 1 "demo 0.36.0"
3
+ .TH canon-demo 1 "demo 0.38.0"
4
4
  .SH NAME
5
5
  canon\-demo \- Try the evidence loop end\-to\-end in a throwaway demo repo
6
6
  .SH SYNOPSIS
@@ -44,4 +44,4 @@ Examples:
44
44
  canon gate check # RED
45
45
  canon demo review && canon gate check # GREEN
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-dispatch-begin 1 "begin 0.36.0"
3
+ .TH canon-dispatch-begin 1 "begin 0.38.0"
4
4
  .SH NAME
5
5
  canon\-dispatch\-begin \- Mint a Run manifest with retrieved guidance and context/policy lineage
6
6
  .SH SYNOPSIS
@@ -44,7 +44,7 @@ Declared provider metadata (copied verbatim; never inferred from \-\-actor)
44
44
  \fB\-\-model\fR \fI<NAME>\fR
45
45
  Declared model metadata (copied verbatim)
46
46
  .TP
47
- \fB\-\-skill\fR \fI<ID>\fR
47
+ \fB\-\-skill\fR \fI<SKILL_ID>\fR
48
48
  Skill that contributed to this run
49
49
  .TP
50
50
  \fB\-\-skill\-digest\fR \fI<DIGEST>\fR
@@ -77,4 +77,4 @@ Print help
77
77
  \fB\-V\fR, \fB\-\-version\fR
78
78
  Print version
79
79
  .SH VERSION
80
- v0.36.0
80
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-dispatch-diff 1 "diff 0.36.0"
3
+ .TH canon-dispatch-diff 1 "diff 0.38.0"
4
4
  .SH NAME
5
5
  canon\-dispatch\-diff \- Diff the declared plan DAG against the observed execution graph
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-dispatch-end 1 "end 0.36.0"
3
+ .TH canon-dispatch-end 1 "end 0.38.0"
4
4
  .SH NAME
5
5
  canon\-dispatch\-end \- Close a dispatched run with a terminal status and an ended_at
6
6
  .SH SYNOPSIS
@@ -57,4 +57,4 @@ Print version
57
57
  <\fIRUN_ID\fR>
58
58
  The RunId (ULID) minted by `canon dispatch begin`
59
59
  .SH VERSION
60
- v0.36.0
60
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-dispatch 1 "dispatch 0.36.0"
3
+ .TH canon-dispatch 1 "dispatch 0.38.0"
4
4
  .SH NAME
5
5
  canon\-dispatch \- Begin an agent run with retrieved guidance recorded
6
6
  .SH SYNOPSIS
@@ -42,4 +42,4 @@ Close a dispatched run with a terminal status and an ended_at
42
42
  canon\-dispatch\-diff(1)
43
43
  Diff the declared plan DAG against the observed execution graph
44
44
  .SH VERSION
45
- v0.36.0
45
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-divergence-accept 1 "accept 0.36.0"
3
+ .TH canon-divergence-accept 1 "accept 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence\-accept \- Accept a divergent scenario as a tracked known gap (a reviewer step): its latest evidence must be divergent and not the accepting actor\*(Aqs or session\*(Aqs. The acceptance pins that evidence, so new evidence ends it, and lapses at \-\-expiry; until then the ship guard counts the cell as covered while `status` and `gate check` list it as `accepted\-divergence`
6
6
  .SH SYNOPSIS
@@ -36,7 +36,7 @@ Why the gap is accepted
36
36
  Where the gap is tracked: an issue URL or reference
37
37
  .TP
38
38
  \fB\-\-expiry\fR \fI<TIMESTAMP>\fR
39
- The date (YYYY\-MM\-DD, UTC) the acceptance stops holding; none means it holds until new evidence
39
+ When the acceptance stops holding: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`); none means it holds until new evidence
40
40
  .TP
41
41
  \fB\-\-actor\fR \fI<ACTOR_ID>\fR
42
42
  The reviewer recording this (recorded as the divergence\*(Aqs reviewer and actor)
@@ -74,4 +74,4 @@ Print version
74
74
  <\fISCENARIO_ID\fR>
75
75
  The accepted scenarios (`<area>.<surface>.<nn>`), one acceptance each, all or nothing
76
76
  .SH VERSION
77
- v0.36.0
77
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-divergence-add 1 "add 0.36.0"
3
+ .TH canon-divergence-add 1 "add 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence\-add \- Add a divergence candidate, staged with no run_seq yet (commit it with `canon gate promote \-\-kind divergence`, or in the same run with \-\-promote / `write: { promote: auto }`)
6
6
  .SH SYNOPSIS
@@ -53,7 +53,7 @@ deferred
53
53
  Why the divergence is recorded; required with `\-\-state deferred`
54
54
  .TP
55
55
  \fB\-\-expiry\fR \fI<TIMESTAMP>\fR
56
- When a deferral lapses (RFC3339 or YYYY\-MM\-DD, UTC); required with `\-\-state deferred`
56
+ When a deferral lapses: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`); required with `\-\-state deferred`
57
57
  .TP
58
58
  \fB\-\-round\fR \fI<N>\fR [default: 1]
59
59
  The review round this version belongs to (1\-based)
@@ -94,4 +94,4 @@ Print version
94
94
  <\fISCENARIO_ID\fR>
95
95
  The scenario (`<area>.<surface>.<nn>`)
96
96
  .SH VERSION
97
- v0.36.0
97
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-divergence-defer 1 "defer 0.36.0"
3
+ .TH canon-divergence-defer 1 "defer 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence\-defer \- Directly record a deferred divergence (requires \-\-reason/\-\-expiry)
6
6
  .SH SYNOPSIS
@@ -45,7 +45,7 @@ The acting session (recorded as actor.session_id); optional
45
45
  Why the divergence is deferred
46
46
  .TP
47
47
  \fB\-\-expiry\fR \fI<TIMESTAMP>\fR
48
- When the deferral lapses (RFC3339 or YYYY\-MM\-DD, UTC)
48
+ When the deferral lapses: an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`)
49
49
  .TP
50
50
  \fB\-\-role\fR \fI<ROLE>\fR
51
51
  The role this record is attributed to (default: the role declared with \-\-as / CANON_ROLE)
@@ -68,4 +68,4 @@ Print version
68
68
  <\fISCENARIO_ID\fR>
69
69
  The scenario (`<area>.<surface>.<nn>`)
70
70
  .SH VERSION
71
- v0.36.0
71
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-divergence-list 1 "list 0.36.0"
3
+ .TH canon-divergence-list 1 "list 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence\-list \- List the current divergence burn\-down state
6
6
  .SH SYNOPSIS
@@ -30,7 +30,7 @@ orchestrator
30
30
  The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
31
31
  .TP
32
32
  \fB\-\-as\-of\fR \fI<TIMESTAMP>\fR
33
- Governs Deferred expiry; defaults to now
33
+ Governs Deferred expiry; an RFC 3339 date (`2030\-01\-01`, UTC midnight) or date\-time (`2030\-01\-01T10:00:00Z`); defaults to now
34
34
  .TP
35
35
  \fB\-\-json\fR
36
36
  Print `{data, meta}` as JSON
@@ -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-divergence-resolve 1 "resolve 0.36.0"
3
+ .TH canon-divergence-resolve 1 "resolve 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence\-resolve \- Directly record a resolved divergence
6
6
  .SH SYNOPSIS
@@ -65,4 +65,4 @@ Print version
65
65
  <\fISCENARIO_ID\fR>
66
66
  The scenario (`<area>.<surface>.<nn>`)
67
67
  .SH VERSION
68
- v0.36.0
68
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-divergence 1 "divergence 0.36.0"
3
+ .TH canon-divergence 1 "divergence 0.38.0"
4
4
  .SH NAME
5
5
  canon\-divergence \- Stage, promote, resolve, and inspect spec divergences
6
6
  .SH SYNOPSIS
@@ -48,4 +48,4 @@ Accept a divergent scenario as a tracked known gap (a reviewer step): its latest
48
48
  canon\-divergence\-list(1)
49
49
  List the current divergence burn\-down state
50
50
  .SH VERSION
51
- v0.36.0
51
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-evidence-add 1 "add 0.36.0"
3
+ .TH canon-evidence-add 1 "add 0.38.0"
4
4
  .SH NAME
5
5
  canon\-evidence\-add \- Record one attributed EvidenceRecord for a task or scenario (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
@@ -54,7 +54,7 @@ divergent
54
54
  .RE
55
55
  .TP
56
56
  \fB\-\-summary\fR \fI<TEXT>\fR
57
- One\-line note, with or without \-\-task; a task\*(Aqs flipped row shows it as the latest summary (scanned for fabrication markers; line breaks refused)
57
+ One line of text, with or without \-\-task; a task\*(Aqs flipped row shows it as the latest summary (scanned for fabrication markers). The white space around it is trimmed; a control character or line break inside it is refused
58
58
  .TP
59
59
  \fB\-\-command\-result\fR \fI<TEXT>\fR
60
60
  The real captured output backing \-\-summary (requires \-\-summary; scanned for fabrication markers)
@@ -69,7 +69,7 @@ RunId (ULID) of the run that produced this evidence
69
69
  Explicit risk binding: repository\-relative path or effect:<kebab\-slug>; persisted as surface_ref
70
70
  .TP
71
71
  \fB\-\-actor\fR \fI<ACTOR_ID>\fR [default: canon]
72
- The attesting actor\*(Aqs id (recorded as the attestation\*(Aqs author; line breaks refused)
72
+ 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
73
73
  .TP
74
74
  \fB\-\-role\fR \fI<ROLE>\fR
75
75
  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
@@ -95,7 +95,7 @@ human
95
95
  Armored SSH detached signature file. Canon never signs on the user\*(Aqs behalf
96
96
  .TP
97
97
  \fB\-\-approval\-at\fR \fI<TIMESTAMP>\fR
98
- Timestamp (RFC3339 or YYYY\-MM\-DD) included in the signed approval payload
98
+ The approval time included in the signed approval payload: an RFC 3339 date\-time (`2030\-01\-01T10:00:00Z`; a date alone is refused), the value the signature was made over
99
99
  .TP
100
100
  \fB\-\-rev\fR \fI<REV>\fR [default: HEAD]
101
101
  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)
@@ -116,7 +116,7 @@ One record per indexed scenario of \-\-project that owns a case in the \-\-repor
116
116
  Per\-file size limit for the artifact store (.canon/artifacts/sha256/), in MiB; a larger bound file is refused
117
117
  .TP
118
118
  \fB\-\-override\-reason\fR \fI<TEXT>\fR
119
- 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)
119
+ 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)
120
120
  .TP
121
121
  \fB\-\-promote\fR
122
122
  Promote the record this run staged, in the same run; records others staged stay staged (the default under canon.yaml `write: { promote: auto }`)
@@ -165,4 +165,4 @@ While a subject this record attests for (the scenario\*(Aqs @subject owner, or a
165
165
  AUDITS.
166
166
  An external evaluator\*(Aqs re\-audit is `canon evidence audit <SCENARIO_ID>`, not `\-\-kind audit`.
167
167
  .SH VERSION
168
- v0.36.0
168
+ v0.38.0
@@ -1,6 +1,6 @@
1
1
  .ie \n(.g .ds Aq \(aq
2
2
  .el .ds Aq '
3
- .TH canon-evidence-approval-payload 1 "approval-payload 0.36.0"
3
+ .TH canon-evidence-approval-payload 1 "approval-payload 0.38.0"
4
4
  .SH NAME
5
5
  canon\-evidence\-approval\-payload \- Emit exact bytes for external `ssh\-keygen \-Y sign \-n canon\-approval\-v1`
6
6
  .SH SYNOPSIS
@@ -48,7 +48,7 @@ The risk surface being approved: a repository\-relative path or `effect:<kebab\-
48
48
  Who approved (the human whose detached signature the payload is for)
49
49
  .TP
50
50
  \fB\-\-approval\-at\fR \fI<TIMESTAMP>\fR
51
- The approval time that is signed into the payload: RFC3339, or YYYY\-MM\-DD (UTC midnight)
51
+ The approval time that is signed into the payload: an RFC 3339 date\-time (`2030\-01\-01T10:00:00Z`; a date alone is refused). Fix it once and give the same value to the signature and to `evidence add`
52
52
  .TP
53
53
  \fB\-\-repo\fR \fI<DIR>\fR
54
54
  The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
@@ -62,4 +62,4 @@ Print help
62
62
  \fB\-V\fR, \fB\-\-version\fR
63
63
  Print version
64
64
  .SH VERSION
65
- v0.36.0
65
+ v0.38.0