@journeykit/canon 0.26.0 → 0.28.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 (133) hide show
  1. package/dist/skills/SKILL.src.md +245 -89
  2. package/dist/skills/reference/brief-align.md +4 -2
  3. package/dist/skills/reference/brief-clarify.md +7 -5
  4. package/dist/skills/reference/brief-harden.md +4 -2
  5. package/dist/skills/reference/brief-polish.md +7 -5
  6. package/dist/skills/reference/brief-shape.md +4 -2
  7. package/dist/skills/reference/canon-artifact-ingest.md +11 -7
  8. package/dist/skills/reference/canon-authoring.md +16 -2
  9. package/dist/skills/reference/canon-context.md +21 -11
  10. package/dist/skills/reference/canon-fmt.md +10 -2
  11. package/dist/skills/reference/canon-gate.md +119 -83
  12. package/dist/skills/reference/canon-inventory.md +34 -22
  13. package/dist/skills/reference/canon-learn.md +23 -19
  14. package/dist/skills/reference/canon-plan-import.md +10 -7
  15. package/dist/skills/reference/canon-plugins.md +15 -8
  16. package/dist/skills/reference/canon-policy.md +20 -16
  17. package/dist/skills/reference/canon-report-dashboard.md +30 -19
  18. package/dist/skills/reference/canon-retrieve.md +13 -10
  19. package/dist/skills/reference/canon-review.md +96 -68
  20. package/dist/skills/reference/canon-session-ingest.md +7 -3
  21. package/dist/skills/reference/canon-storage.md +82 -51
  22. package/dist/skills/reference/canon-subject.md +123 -84
  23. package/dist/skills/reference/canon-vocab.md +1 -1
  24. package/dist/skills/reference/role-implementer.md +295 -64
  25. package/dist/skills/reference/role-orchestrator.md +547 -55
  26. package/dist/skills/reference/role-planner.md +189 -32
  27. package/dist/skills/reference/role-reviewer.md +257 -58
  28. package/dist/skills/scripts/canon-retrieve-pre-dispatch.sh +10 -5
  29. package/man/canon-adapter-authorize.1 +44 -0
  30. package/man/canon-adapter-validate.1 +44 -0
  31. package/man/canon-adapter.1 +46 -0
  32. package/man/canon-artifacts-move.1 +63 -0
  33. package/man/canon-artifacts-store.1 +54 -0
  34. package/man/canon-artifacts-verify.1 +48 -0
  35. package/man/canon-artifacts.1 +45 -0
  36. package/man/canon-brief-approve.1 +62 -0
  37. package/man/canon-brief-check.1 +44 -0
  38. package/man/canon-brief-show.1 +50 -0
  39. package/man/canon-brief.1 +63 -0
  40. package/man/canon-change-new.1 +66 -0
  41. package/man/canon-change.1 +42 -0
  42. package/man/canon-completion.1 +60 -0
  43. package/man/canon-context-pack-add.1 +47 -0
  44. package/man/canon-context-pack-show.1 +44 -0
  45. package/man/canon-context-pack-verify.1 +44 -0
  46. package/man/canon-context-pack.1 +50 -0
  47. package/man/canon-context.1 +44 -0
  48. package/man/canon-dashboard.1 +50 -0
  49. package/man/canon-demo-init.1 +44 -0
  50. package/man/canon-demo-review.1 +44 -0
  51. package/man/canon-demo.1 +47 -0
  52. package/man/canon-dispatch-begin.1 +80 -0
  53. package/man/canon-dispatch-diff.1 +41 -0
  54. package/man/canon-dispatch-end.1 +60 -0
  55. package/man/canon-dispatch.1 +45 -0
  56. package/man/canon-divergence-accept.1 +68 -0
  57. package/man/canon-divergence-add.1 +97 -0
  58. package/man/canon-divergence-defer.1 +71 -0
  59. package/man/canon-divergence-list.1 +56 -0
  60. package/man/canon-divergence-resolve.1 +68 -0
  61. package/man/canon-divergence.1 +51 -0
  62. package/man/canon-evidence-add.1 +168 -0
  63. package/man/canon-evidence-approval-payload.1 +65 -0
  64. package/man/canon-evidence-audit.1 +121 -0
  65. package/man/canon-evidence.1 +57 -0
  66. package/man/canon-export.1 +108 -0
  67. package/man/canon-feature-new.1 +62 -0
  68. package/man/canon-feature.1 +39 -0
  69. package/man/canon-finding-add.1 +196 -0
  70. package/man/canon-finding-close.1 +117 -0
  71. package/man/canon-finding-list.1 +59 -0
  72. package/man/canon-finding.1 +67 -0
  73. package/man/canon-format.1 +49 -0
  74. package/man/canon-gate-check.1 +44 -0
  75. package/man/canon-gate-install-hooks.1 +59 -0
  76. package/man/canon-gate-promote.1 +62 -0
  77. package/man/canon-gate.1 +50 -0
  78. package/man/canon-ingest-plans.1 +53 -0
  79. package/man/canon-ingest-records.1 +56 -0
  80. package/man/canon-ingest-sessions.1 +62 -0
  81. package/man/canon-ingest.1 +50 -0
  82. package/man/canon-init.1 +98 -0
  83. package/man/canon-inventory-sync.1 +50 -0
  84. package/man/canon-inventory.1 +39 -0
  85. package/man/canon-ledger-compact.1 +50 -0
  86. package/man/canon-ledger.1 +54 -0
  87. package/man/canon-migrate.1 +89 -0
  88. package/man/canon-plugin-sync.1 +53 -0
  89. package/man/canon-plugin.1 +39 -0
  90. package/man/canon-policy-approve.1 +50 -0
  91. package/man/canon-policy-show.1 +41 -0
  92. package/man/canon-policy.1 +52 -0
  93. package/man/canon-prompt-add.1 +47 -0
  94. package/man/canon-prompt-show.1 +41 -0
  95. package/man/canon-prompt.1 +43 -0
  96. package/man/canon-purge.1 +70 -0
  97. package/man/canon-query.1 +111 -0
  98. package/man/canon-regime-show.1 +50 -0
  99. package/man/canon-regime.1 +39 -0
  100. package/man/canon-report-build.1 +44 -0
  101. package/man/canon-report-check.1 +41 -0
  102. package/man/canon-report-snapshot.1 +47 -0
  103. package/man/canon-report.1 +45 -0
  104. package/man/canon-retrieve.1 +56 -0
  105. package/man/canon-review-change.1 +98 -0
  106. package/man/canon-review-scenario.1 +98 -0
  107. package/man/canon-review.1 +42 -0
  108. package/man/canon-scenario-new.1 +80 -0
  109. package/man/canon-scenario.1 +39 -0
  110. package/man/canon-schema.1 +63 -0
  111. package/man/canon-selftest.1 +69 -0
  112. package/man/canon-skills-check.1 +47 -0
  113. package/man/canon-skills-doctor.1 +47 -0
  114. package/man/canon-skills-install.1 +53 -0
  115. package/man/canon-skills-show.1 +104 -0
  116. package/man/canon-skills.1 +48 -0
  117. package/man/canon-status.1 +51 -0
  118. package/man/canon-strategy-approval-payload.1 +53 -0
  119. package/man/canon-strategy-promote.1 +59 -0
  120. package/man/canon-strategy-rollback.1 +62 -0
  121. package/man/canon-strategy.1 +45 -0
  122. package/man/canon-subject-adopt.1 +53 -0
  123. package/man/canon-subject-move.1 +80 -0
  124. package/man/canon-subject-new.1 +65 -0
  125. package/man/canon-subject-show.1 +44 -0
  126. package/man/canon-subject-unadopt.1 +63 -0
  127. package/man/canon-subject.1 +51 -0
  128. package/man/canon-task-done.1 +47 -0
  129. package/man/canon-task.1 +42 -0
  130. package/man/canon-tier-age.1 +50 -0
  131. package/man/canon-tier.1 +39 -0
  132. package/man/canon.1 +169 -0
  133. package/package.json +9 -5
@@ -0,0 +1,59 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-strategy-promote 1 "promote 0.28.0"
4
+ .SH NAME
5
+ canon\-strategy\-promote \- Promote a strategy after paired evaluation and signed approval
6
+ .SH SYNOPSIS
7
+ \fBcanon strategy promote\fR [\fB\-\-as\fR] [\fB\-\-repo\fR] [\fB\-\-evaluation\fR] [\fB\-\-approval\fR] [\fB\-\-signature\-file\fR] [\fB\-\-dry\-run\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISTRATEGY_ID\fR>
8
+ .SH DESCRIPTION
9
+ Promote a strategy after paired evaluation and signed approval
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` defaults to it
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\-\-repo\fR \fI<DIR>\fR
30
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
31
+ .TP
32
+ \fB\-\-evaluation\fR \fI<FILE>\fR
33
+ Evaluation bundle produced by the honest promotion adapter
34
+ .TP
35
+ \fB\-\-approval\fR \fI<FILE>\fR
36
+ Approval JSON containing the detached SSH signature
37
+ .TP
38
+ \fB\-\-signature\-file\fR \fI<FILE>\fR
39
+ Detached signature file to attach to the approval JSON
40
+ .TP
41
+ \fB\-\-dry\-run\fR
42
+ Validate fully and report what would be written, without writing anything
43
+ .TP
44
+ \fB\-\-json\fR
45
+ Output JSON instead of the human\-readable form
46
+ .TP
47
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
48
+ 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
49
+ .TP
50
+ \fB\-h\fR, \fB\-\-help\fR
51
+ Print help
52
+ .TP
53
+ \fB\-V\fR, \fB\-\-version\fR
54
+ Print version
55
+ .TP
56
+ <\fISTRATEGY_ID\fR>
57
+ The StrategyId (ULID) to promote
58
+ .SH VERSION
59
+ v0.28.0
@@ -0,0 +1,62 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-strategy-rollback 1 "rollback 0.28.0"
4
+ .SH NAME
5
+ canon\-strategy\-rollback \- Disable an active strategy with durable rollback provenance
6
+ .SH SYNOPSIS
7
+ \fBcanon strategy rollback\fR [\fB\-\-as\fR] <\fB\-\-reason\fR> <\fB\-\-actor\-id\fR> <\fB\-\-signature\-file\fR> <\fB\-\-approval\-at\fR> [\fB\-\-contradicting\-trajectory\-id\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISTRATEGY_ID\fR>
8
+ .SH DESCRIPTION
9
+ Disable an active strategy with durable rollback provenance
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` defaults to it
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\-\-reason\fR \fI<TEXT>\fR
30
+ Why the strategy is rolled back (signed: `strategy:<id>:rollback:<sha256(reason)>`)
31
+ .TP
32
+ \fB\-\-actor\-id\fR \fI<ACTOR_ID>\fR
33
+ The approver; must be a policy\-pinned approver
34
+ .TP
35
+ \fB\-\-signature\-file\fR \fI<FILE>\fR
36
+ Detached signature file over the rollback payload
37
+ .TP
38
+ \fB\-\-approval\-at\fR \fI<TIMESTAMP>\fR
39
+ When the approver signed: RFC3339, or YYYY\-MM\-DD (UTC midnight)
40
+ .TP
41
+ \fB\-\-contradicting\-trajectory\-id\fR \fI<ID>\fR
42
+ A trajectory that contradicts the strategy (must exist in the trajectory store)
43
+ .TP
44
+ \fB\-\-repo\fR \fI<DIR>\fR
45
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
46
+ .TP
47
+ \fB\-\-json\fR
48
+ Output JSON instead of the human\-readable form
49
+ .TP
50
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
51
+ 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
52
+ .TP
53
+ \fB\-h\fR, \fB\-\-help\fR
54
+ Print help
55
+ .TP
56
+ \fB\-V\fR, \fB\-\-version\fR
57
+ Print version
58
+ .TP
59
+ <\fISTRATEGY_ID\fR>
60
+ The StrategyId (ULID) to roll back
61
+ .SH VERSION
62
+ v0.28.0
@@ -0,0 +1,45 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-strategy 1 "strategy 0.28.0"
4
+ .SH NAME
5
+ canon\-strategy \- Promote a proven strategy into the git\-tracked tier
6
+ .SH SYNOPSIS
7
+ \fBcanon strategy\fR [\fB\-\-as\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR>
8
+ .SH DESCRIPTION
9
+ Promote a proven strategy into the git\-tracked tier
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` defaults to it
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\-h\fR, \fB\-\-help\fR
30
+ Print help
31
+ .TP
32
+ \fB\-V\fR, \fB\-\-version\fR
33
+ Print version
34
+ .SH SUBCOMMANDS
35
+ .TP
36
+ canon\-strategy\-promote(1)
37
+ Promote a strategy after paired evaluation and signed approval
38
+ .TP
39
+ canon\-strategy\-approval\-payload(1)
40
+ The unsigned approval payload bytes an external signer signs (a read: identical arguments give identical bytes)
41
+ .TP
42
+ canon\-strategy\-rollback(1)
43
+ Disable an active strategy with durable rollback provenance
44
+ .SH VERSION
45
+ v0.28.0
@@ -0,0 +1,53 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject-adopt 1 "adopt 0.28.0"
4
+ .SH NAME
5
+ canon\-subject\-adopt \- Link an imported plan change to a subject (adopting it under another subject adds that subject; a change may belong to several)
6
+ .SH SYNOPSIS
7
+ \fBcanon subject adopt\fR [\fB\-\-as\fR] <\fB\-\-change\-id\fR> [\fB\-\-repo\fR] [\fB\-\-dry\-run\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISUBJECT_ID\fR>
8
+ .SH DESCRIPTION
9
+ Link an imported plan change to a subject (adopting it under another subject adds that subject; a change may belong to several)
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` defaults to it
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\-\-change\-id\fR \fI<CHANGE_ID>\fR
30
+ The imported Change\*(Aqs id
31
+ .TP
32
+ \fB\-\-repo\fR \fI<DIR>\fR
33
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
34
+ .TP
35
+ \fB\-\-dry\-run\fR
36
+ Validate fully and report what would be written, without writing anything
37
+ .TP
38
+ \fB\-\-json\fR
39
+ Output JSON instead of the human\-readable form
40
+ .TP
41
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
42
+ 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
43
+ .TP
44
+ \fB\-h\fR, \fB\-\-help\fR
45
+ Print help
46
+ .TP
47
+ \fB\-V\fR, \fB\-\-version\fR
48
+ Print version
49
+ .TP
50
+ <\fISUBJECT_ID\fR>
51
+ The subject to adopt the change under
52
+ .SH VERSION
53
+ v0.28.0
@@ -0,0 +1,80 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject-move 1 "move 0.28.0"
4
+ .SH NAME
5
+ canon\-subject\-move \- Move a subject to another lifecycle state (shipping is evidence\-gated; with spec_coverage.require_review, entering its scope is review\-gated; shipped → verifying reopens with \-\-reason)
6
+ .SH SYNOPSIS
7
+ \fBcanon subject move\fR [\fB\-\-as\fR] <\fB\-\-to\fR> [\fB\-\-override\-reason\fR] [\fB\-\-reason\fR] [\fB\-\-actor\-id\fR] [\fB\-\-session\-id\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISUBJECT_ID\fR>
8
+ .SH DESCRIPTION
9
+ Move a subject to another lifecycle state (shipping is evidence\-gated; with spec_coverage.require_review, entering its scope is review\-gated; shipped → verifying reopens with \-\-reason)
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` defaults to it
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\-\-to\fR \fI<STATE>\fR
30
+ The state to move the subject to (proposed/specced/building/verifying/shipped/retired)
31
+ .br
32
+
33
+ .br
34
+ \fIPossible values:\fR
35
+ .RS 14
36
+ .IP \(bu 2
37
+ proposed
38
+ .IP \(bu 2
39
+ specced
40
+ .IP \(bu 2
41
+ building
42
+ .IP \(bu 2
43
+ verifying
44
+ .IP \(bu 2
45
+ shipped
46
+ .IP \(bu 2
47
+ retired
48
+ .RE
49
+ .TP
50
+ \fB\-\-override\-reason\fR \fI<TEXT>\fR
51
+ Move anyway when only the require_review checks (unreviewed\-promotion, open\-blocker) refuse; the reason is recorded on the subject and `canon gate check` lists the gaps as advisories
52
+ .TP
53
+ \fB\-\-reason\fR \fI<TEXT>\fR
54
+ Why the subject moves (required for shipped → verifying, optional on every other transition); recorded on the subject with the actor
55
+ .TP
56
+ \fB\-\-actor\-id\fR \fI<ACTOR_ID>\fR [default: canon]
57
+ The invoking actor\*(Aqs id, recorded with an \-\-override\-reason waiver or a \-\-reason
58
+ .TP
59
+ \fB\-\-session\-id\fR \fI<SESSION_ID>\fR
60
+ The acting session (recorded as actor.session_id); optional
61
+ .TP
62
+ \fB\-\-repo\fR \fI<DIR>\fR
63
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
64
+ .TP
65
+ \fB\-\-json\fR
66
+ Output JSON instead of the human\-readable form
67
+ .TP
68
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
69
+ 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
70
+ .TP
71
+ \fB\-h\fR, \fB\-\-help\fR
72
+ Print help
73
+ .TP
74
+ \fB\-V\fR, \fB\-\-version\fR
75
+ Print version
76
+ .TP
77
+ <\fISUBJECT_ID\fR>
78
+ The subject to move
79
+ .SH VERSION
80
+ v0.28.0
@@ -0,0 +1,65 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject-new 1 "new 0.28.0"
4
+ .SH NAME
5
+ canon\-subject\-new \- Author a new subject at status `proposed`
6
+ .SH SYNOPSIS
7
+ \fBcanon subject new\fR [\fB\-\-as\fR] <\fB\-\-domain\fR> <\fB\-\-title\fR> [\fB\-\-summary\fR] [\fB\-\-owner\-role\fR] [\fB\-\-actor\-id\fR] [\fB\-\-session\-id\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISUBJECT_ID\fR>
8
+ .SH DESCRIPTION
9
+ Author a new subject at status `proposed`
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` defaults to it
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\-\-domain\fR \fI<NAME>\fR
30
+ The subject\*(Aqs domain (kebab slug)
31
+ .TP
32
+ \fB\-\-title\fR \fI<TEXT>\fR
33
+ The subject\*(Aqs title
34
+ .TP
35
+ \fB\-\-summary\fR \fI<TEXT>\fR
36
+ The subject\*(Aqs summary (optional)
37
+ .TP
38
+ \fB\-\-owner\-role\fR \fI<ROLE>\fR [default: implementer]
39
+ The accountable owning role (default: implementer)
40
+ .TP
41
+ \fB\-\-actor\-id\fR \fI<ACTOR_ID>\fR [default: canon]
42
+ The invoking actor\*(Aqs id
43
+ .TP
44
+ \fB\-\-session\-id\fR \fI<SESSION_ID>\fR
45
+ The acting session (recorded as actor.session_id); optional
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
+ .TP
62
+ <\fISUBJECT_ID\fR>
63
+ The subject\*(Aqs kebab\-slug id
64
+ .SH VERSION
65
+ v0.28.0
@@ -0,0 +1,44 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject-show 1 "show 0.28.0"
4
+ .SH NAME
5
+ canon\-subject\-show \- Show a subject (read\-only)
6
+ .SH SYNOPSIS
7
+ \fBcanon subject show\fR [\fB\-\-as\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISUBJECT_ID\fR>
8
+ .SH DESCRIPTION
9
+ Show a subject (read\-only)
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` defaults to it
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\-\-repo\fR \fI<DIR>\fR
30
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
31
+ .TP
32
+ \fB\-\-json\fR
33
+ Output JSON instead of the human\-readable form
34
+ .TP
35
+ \fB\-h\fR, \fB\-\-help\fR
36
+ Print help
37
+ .TP
38
+ \fB\-V\fR, \fB\-\-version\fR
39
+ Print version
40
+ .TP
41
+ <\fISUBJECT_ID\fR>
42
+ The subject to show
43
+ .SH VERSION
44
+ v0.28.0
@@ -0,0 +1,63 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject-unadopt 1 "unadopt 0.28.0"
4
+ .SH NAME
5
+ canon\-subject\-unadopt \- Take a change back out of a subject (the mirror of adopt; refused for a change whose brief is approved)
6
+ .SH SYNOPSIS
7
+ \fBcanon subject unadopt\fR [\fB\-\-as\fR] <\fB\-\-change\-id\fR> [\fB\-\-repo\fR] [\fB\-\-dry\-run\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fISUBJECT_ID\fR>
8
+ .SH DESCRIPTION
9
+ Take a change back out of a subject (the mirror of adopt; refused for a change whose brief is approved)
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` defaults to it
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\-\-change\-id\fR \fI<CHANGE_ID>\fR
30
+ The change to take out of the subject
31
+ .TP
32
+ \fB\-\-repo\fR \fI<DIR>\fR
33
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
34
+ .TP
35
+ \fB\-\-dry\-run\fR
36
+ Validate fully and report what would be written, without writing anything
37
+ .TP
38
+ \fB\-\-json\fR
39
+ Output JSON instead of the human\-readable form
40
+ .TP
41
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
42
+ 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
43
+ .TP
44
+ \fB\-h\fR, \fB\-\-help\fR
45
+ Print help
46
+ .TP
47
+ \fB\-V\fR, \fB\-\-version\fR
48
+ Print version
49
+ .TP
50
+ <\fISUBJECT_ID\fR>
51
+ The subject to take the change out of
52
+ .SH EXTRA
53
+ Examples:
54
+ canon subject unadopt demo \-\-change\-id add\-login
55
+
56
+ Removes the link on both sides (the subject\*(Aqs change list and the change\*(Aqs
57
+ subject list). The change and its brief stay and can be adopted elsewhere, for
58
+ example by a proposed holding subject. Refused (SUBJECT_UNADOPT_REFUSED) for a
59
+ change whose brief carries an `Approved:` line: it is the subject\*(Aqs approved
60
+ scope, and for a change a scenario the subject owns is tagged
61
+ `@flow:<change>.*` for (remove or retag it first). A pair that is not linked writes nothing and exits 0.
62
+ .SH VERSION
63
+ v0.28.0
@@ -0,0 +1,51 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-subject 1 "subject 0.28.0"
4
+ .SH NAME
5
+ canon\-subject \- Create and manage subjects (durable product units)
6
+ .SH SYNOPSIS
7
+ \fBcanon subject\fR [\fB\-\-as\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR>
8
+ .SH DESCRIPTION
9
+ Create and manage subjects (durable product units)
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` defaults to it
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\-h\fR, \fB\-\-help\fR
30
+ Print help
31
+ .TP
32
+ \fB\-V\fR, \fB\-\-version\fR
33
+ Print version
34
+ .SH SUBCOMMANDS
35
+ .TP
36
+ canon\-subject\-new(1)
37
+ Author a new subject at status `proposed`
38
+ .TP
39
+ canon\-subject\-adopt(1)
40
+ Link an imported plan change to a subject (adopting it under another subject adds that subject; a change may belong to several)
41
+ .TP
42
+ canon\-subject\-unadopt(1)
43
+ Take a change back out of a subject (the mirror of adopt; refused for a change whose brief is approved)
44
+ .TP
45
+ canon\-subject\-show(1)
46
+ Show a subject (read\-only)
47
+ .TP
48
+ canon\-subject\-move(1)
49
+ Move a subject to another lifecycle state (shipping is evidence\-gated; with spec_coverage.require_review, entering its scope is review\-gated; shipped → verifying reopens with \-\-reason)
50
+ .SH VERSION
51
+ v0.28.0
@@ -0,0 +1,47 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-task-done 1 "done 0.28.0"
4
+ .SH NAME
5
+ canon\-task\-done \- Flip one task checkbox, gated on real evidence (fails closed)
6
+ .SH SYNOPSIS
7
+ \fBcanon task done\fR [\fB\-\-as\fR] [\fB\-\-repo\fR] [\fB\-\-json\fR] [\fB\-\-input\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fITASK_ID\fR>
8
+ .SH DESCRIPTION
9
+ Flip one task checkbox, gated on real evidence (fails closed)
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` defaults to it
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\-\-repo\fR \fI<DIR>\fR
30
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
31
+ .TP
32
+ \fB\-\-json\fR
33
+ Output JSON instead of the human\-readable form
34
+ .TP
35
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
36
+ 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
37
+ .TP
38
+ \fB\-h\fR, \fB\-\-help\fR
39
+ Print help
40
+ .TP
41
+ \fB\-V\fR, \fB\-\-version\fR
42
+ Print version
43
+ .TP
44
+ <\fITASK_ID\fR>
45
+ The task id (<change_id>#<n>)
46
+ .SH VERSION
47
+ v0.28.0
@@ -0,0 +1,42 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-task 1 "task 0.28.0"
4
+ .SH NAME
5
+ canon\-task \- Flip a plan task\*(Aqs checkbox once committed evidence supports it
6
+ .SH SYNOPSIS
7
+ \fBcanon task\fR [\fB\-\-as\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR>
8
+ .SH DESCRIPTION
9
+ Flip a plan task\*(Aqs checkbox once committed evidence supports it
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` defaults to it
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\-h\fR, \fB\-\-help\fR
30
+ Print help
31
+ .TP
32
+ \fB\-V\fR, \fB\-\-version\fR
33
+ Print version
34
+ .SH SUBCOMMANDS
35
+ .TP
36
+ canon\-task\-done(1)
37
+ Flip one task checkbox, gated on real evidence (fails closed)
38
+ .SH EXTRA
39
+ Examples:
40
+ canon task done my\-change#3
41
+ .SH VERSION
42
+ v0.28.0
@@ -0,0 +1,50 @@
1
+ .ie \n(.g .ds Aq \(aq
2
+ .el .ds Aq '
3
+ .TH canon-tier-age 1 "age 0.28.0"
4
+ .SH NAME
5
+ canon\-tier\-age \- Apply canon.yaml aging rules, moving old records to their destination tier
6
+ .SH SYNOPSIS
7
+ \fBcanon tier age\fR [\fB\-\-as\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
+ Apply canon.yaml aging rules, moving old records to their destination tier
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` defaults to it
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\-\-commit\fR
30
+ Act on the previewed plan; needs \-\-plan\-digest
31
+ .TP
32
+ \fB\-\-plan\-digest\fR \fI<DIGEST>\fR
33
+ The `planDigest` the preview printed; the run acts only if the plan recomputed now has this digest
34
+ .TP
35
+ \fB\-\-repo\fR \fI<DIR>\fR
36
+ The repo to act on (default: the nearest ancestor directory holding a canon.yaml)
37
+ .TP
38
+ \fB\-\-json\fR
39
+ Output JSON instead of the human\-readable form
40
+ .TP
41
+ \fB\-\-input\fR \fI<JSON|FILE|\->\fR
42
+ 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
43
+ .TP
44
+ \fB\-h\fR, \fB\-\-help\fR
45
+ Print help
46
+ .TP
47
+ \fB\-V\fR, \fB\-\-version\fR
48
+ Print version
49
+ .SH VERSION
50
+ v0.28.0