@open-agent-toolkit/cli 0.3.19 → 0.3.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/assets/agents/oat-phase-implementer.md +26 -3
- package/assets/agents/oat-reviewer.md +8 -3
- package/assets/bundle-metadata.json +1 -1
- package/assets/docs/reference/cli-reference.md +12 -7
- package/assets/docs/reference/oat-directory-structure.md +1 -0
- package/assets/docs/reference/project-artifacts.md +56 -1
- package/assets/docs/reference/project-state-machine.md +41 -7
- package/assets/docs/skills/brainstorm.md +3 -2
- package/assets/docs/skills/index.md +13 -10
- package/assets/docs/workflows/advanced/autonomy.md +3 -1
- package/assets/docs/workflows/advanced/dispatch-ceiling.md +2 -2
- package/assets/docs/workflows/advanced/workflow-gates.md +17 -4
- package/assets/docs/workflows/approvals-and-automation.md +21 -10
- package/assets/docs/workflows/choose-workflow.md +17 -9
- package/assets/docs/workflows/ideas/index.md +1 -1
- package/assets/docs/workflows/ideas/lifecycle.md +3 -2
- package/assets/docs/workflows/projects/closeout/closeout-skills.md +80 -7
- package/assets/docs/workflows/projects/closeout/pr-flow.md +7 -1
- package/assets/docs/workflows/projects/execution/execution-skills.md +16 -3
- package/assets/docs/workflows/projects/execution/implementation-execution.md +1 -1
- package/assets/docs/workflows/projects/execution/picking-up-projects.md +11 -1
- package/assets/docs/workflows/projects/lifecycle.md +108 -9
- package/assets/docs/workflows/projects/planning/hill-checkpoints.md +6 -6
- package/assets/docs/workflows/projects/planning/planning-skills.md +9 -7
- package/assets/docs/workflows/projects/planning/starting-projects.md +57 -11
- package/assets/docs/workflows/projects/reviews/index.md +22 -1
- package/assets/docs/workflows/projects/reviews/review-flavors.md +5 -3
- package/assets/public-package-versions.json +4 -4
- package/assets/skills/oat-brainstorm/SKILL.md +34 -9
- package/assets/skills/oat-brainstorm/references/destinations.md +6 -3
- package/assets/skills/oat-dispatch-subagents/SKILL.md +1 -1
- package/assets/skills/oat-dispatch-subagents/references/record-schema.md +6 -0
- package/assets/skills/oat-docs/SKILL.md +7 -3
- package/assets/skills/oat-pjm-review-backlog/SKILL.md +2 -2
- package/assets/skills/oat-project-autonomous/SKILL.md +9 -3
- package/assets/skills/oat-project-autonomous/references/gate-inventory.md +151 -132
- package/assets/skills/oat-project-brief/SKILL.md +1 -1
- package/assets/skills/oat-project-brief/references/brief-contract.md +465 -9
- package/assets/skills/oat-project-brief/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-brief/references/docs/gate-approval-record.md +9 -0
- package/assets/skills/oat-project-capture/SKILL.md +2 -2
- package/assets/skills/oat-project-complete/SKILL.md +14 -5
- package/assets/skills/oat-project-discover/SKILL.md +3 -2
- package/assets/skills/oat-project-document/SKILL.md +12 -6
- package/assets/skills/oat-project-document/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-goal/SKILL.md +697 -0
- package/assets/skills/oat-project-goal/references/docs/autonomy-contract.md +412 -0
- package/assets/skills/oat-project-goal/references/docs/gate-approval-record.md +93 -0
- package/assets/skills/oat-project-implement/SKILL.md +1 -1
- package/assets/skills/oat-project-implement/references/completion-and-closeout.md +67 -0
- package/assets/skills/oat-project-implement/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-implement/references/docs/gate-approval-record.md +9 -0
- package/assets/skills/oat-project-implement/references/phase-execution.md +10 -3
- package/assets/skills/oat-project-implement/references/plan-and-resume.md +28 -1
- package/assets/skills/oat-project-lite/SKILL.md +1 -1
- package/assets/skills/oat-project-lite/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-new/SKILL.md +3 -3
- package/assets/skills/oat-project-next/SKILL.md +45 -15
- package/assets/skills/oat-project-next/references/docs/gate-approval-record.md +9 -0
- package/assets/skills/oat-project-plan/SKILL.md +14 -3
- package/assets/skills/oat-project-plan-writing/SKILL.md +6 -4
- package/assets/skills/oat-project-pr-final/SKILL.md +51 -1
- package/assets/skills/oat-project-pr-final/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-pr-progress/SKILL.md +97 -3
- package/assets/skills/oat-project-progress/SKILL.md +38 -5
- package/assets/skills/oat-project-progress/references/docs/gate-approval-record.md +9 -0
- package/assets/skills/oat-project-quick-start/SKILL.md +14 -9
- package/assets/skills/oat-project-quick-start/references/docs/autonomy-contract.md +151 -132
- package/assets/skills/oat-project-quick-start/references/docs/gate-approval-record.md +9 -0
- package/assets/skills/oat-project-reconcile/SKILL.md +31 -2
- package/assets/skills/oat-project-review-provide/SKILL.md +79 -13
- package/assets/skills/oat-project-review-receive/SKILL.md +70 -1
- package/assets/skills/oat-project-revise/SKILL.md +25 -1
- package/assets/skills/oat-project-summary/SKILL.md +60 -5
- package/assets/skills/oat-wave-execute/SKILL.md +2 -2
- package/assets/templates/state.md +1 -1
- package/dist/commands/project/closeout-check/closeout-invariant.d.ts +119 -3
- package/dist/commands/project/closeout-check/closeout-invariant.d.ts.map +1 -1
- package/dist/commands/project/closeout-check/closeout-invariant.js +454 -2
- package/dist/commands/project/closeout-check/index.d.ts +21 -3
- package/dist/commands/project/closeout-check/index.d.ts.map +1 -1
- package/dist/commands/project/closeout-check/index.js +190 -4
- package/dist/commands/project/complete-state/index.d.ts +2 -1
- package/dist/commands/project/complete-state/index.d.ts.map +1 -1
- package/dist/commands/project/complete-state/index.js +7 -1
- package/dist/commands/project/delivery/check.d.ts +66 -0
- package/dist/commands/project/delivery/check.d.ts.map +1 -0
- package/dist/commands/project/delivery/check.js +232 -0
- package/dist/commands/project/delivery/evidence.d.ts +171 -0
- package/dist/commands/project/delivery/evidence.d.ts.map +1 -0
- package/dist/commands/project/delivery/evidence.js +902 -0
- package/dist/commands/project/delivery/index.d.ts +7 -0
- package/dist/commands/project/delivery/index.d.ts.map +1 -0
- package/dist/commands/project/delivery/index.js +13 -0
- package/dist/commands/project/delivery/refresh.d.ts +110 -0
- package/dist/commands/project/delivery/refresh.d.ts.map +1 -0
- package/dist/commands/project/delivery/refresh.js +441 -0
- package/dist/commands/project/index.d.ts.map +1 -1
- package/dist/commands/project/index.js +2 -0
- package/dist/commands/project/log/append.d.ts +6 -0
- package/dist/commands/project/log/append.d.ts.map +1 -1
- package/dist/commands/project/log/append.js +6 -1
- package/dist/commands/project/new/scaffold.d.ts.map +1 -1
- package/dist/commands/project/new/scaffold.js +47 -1
- package/dist/commands/project/promote/promote.d.ts +15 -1
- package/dist/commands/project/promote/promote.d.ts.map +1 -1
- package/dist/commands/project/promote/promote.js +99 -15
- package/dist/commands/project/validate-plan/index.d.ts.map +1 -1
- package/dist/commands/project/validate-plan/index.js +10 -0
- package/dist/commands/project/validate-plan/profiles.d.ts +19 -4
- package/dist/commands/project/validate-plan/profiles.d.ts.map +1 -1
- package/dist/commands/project/validate-plan/profiles.js +153 -2
- package/dist/commands/shared/frontmatter.d.ts +1 -1
- package/dist/commands/shared/frontmatter.d.ts.map +1 -1
- package/dist/commands/shared/frontmatter.js +1 -0
- package/dist/commands/state/generate.d.ts.map +1 -1
- package/dist/commands/state/generate.js +35 -4
- package/dist/commands/tools/shared/pack-manifest.d.ts.map +1 -1
- package/dist/commands/tools/shared/pack-manifest.js +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { GitRunner } from '../../project/sync/git.js';
|
|
2
|
+
import { type GoalDelivery, type MilestoneGateCarrier, type ReviewStatus } from '@open-agent-toolkit/control-plane';
|
|
3
|
+
/**
|
|
4
|
+
* The shared delivery-evidence evaluator (design "Delivery registry and
|
|
5
|
+
* closeout boundary", bookkeeping-successor freshness, A2). `delivery
|
|
6
|
+
* refresh`, `delivery check` and the closeout boundary all derive freshness
|
|
7
|
+
* here; nothing else compares revisions.
|
|
8
|
+
*
|
|
9
|
+
* Evidence keeps the revision actually reviewed. Evidence reviewed at R covers
|
|
10
|
+
* a published head H when R = H, or when R is an ancestor of H and every
|
|
11
|
+
* intervening commit — merge-introduced changes included — changes only
|
|
12
|
+
* permitted bookkeeping. Each commit is inspected on its own, so a substantive
|
|
13
|
+
* change followed by its revert is never a bookkeeping successor. Missing
|
|
14
|
+
* objects, failed inspection, unknown paths and disallowed edits fail closed.
|
|
15
|
+
*/
|
|
16
|
+
/** Where the evidence lives: the project and the review artifacts it records. */
|
|
17
|
+
export interface EvidenceScope {
|
|
18
|
+
/** Absolute repository root; every Git command runs here. */
|
|
19
|
+
repoRoot: string;
|
|
20
|
+
/** Repository-relative POSIX path of the project directory. */
|
|
21
|
+
projectDir: string;
|
|
22
|
+
/**
|
|
23
|
+
* Project-relative review artifacts belonging to the evidence being
|
|
24
|
+
* recorded or archived (`reviews/…`). Each also permits its archived
|
|
25
|
+
* counterpart (`reviews/archived/<name>`), so receive's archival move is
|
|
26
|
+
* bookkeeping.
|
|
27
|
+
*/
|
|
28
|
+
evidenceArtifacts: readonly string[];
|
|
29
|
+
/**
|
|
30
|
+
* Each delivery's OWN review artifacts: the artifacts its own Reviews rows
|
|
31
|
+
* record (Scope cell = the delivery ID or its milestone), keyed by delivery
|
|
32
|
+
* ID and kept apart from the shared allowlist above. Never derived from the
|
|
33
|
+
* registry's `integrated_review.artifact`, which is the very pointer a
|
|
34
|
+
* judged commit may rewrite. Only a new artifact from this set may replace a
|
|
35
|
+
* delivery's review identity or member revisions, so a sharing sibling's
|
|
36
|
+
* artifact (admitted by the allowlist as bookkeeping) or an artifact no
|
|
37
|
+
* Reviews row records never unlocks them. A delivery with no entry unlocks
|
|
38
|
+
* nothing.
|
|
39
|
+
*/
|
|
40
|
+
ownEvidenceArtifacts?: ReadonlyMap<string, readonly string[]>;
|
|
41
|
+
}
|
|
42
|
+
export type FreshnessFailureCode = 'missing-revision' | 'missing-object' | 'not-ancestor' | 'inspection-failed' | 'disallowed-path' | 'substantive-change' | 'base-changed';
|
|
43
|
+
export type SuccessorResult = {
|
|
44
|
+
fresh: true;
|
|
45
|
+
code: 'identical' | 'bookkeeping-successor';
|
|
46
|
+
reason: string;
|
|
47
|
+
/** Every commit inspected between the reviewed and published heads. */
|
|
48
|
+
inspected: string[];
|
|
49
|
+
} | {
|
|
50
|
+
fresh: false;
|
|
51
|
+
code: FreshnessFailureCode;
|
|
52
|
+
reason: string;
|
|
53
|
+
commit?: string;
|
|
54
|
+
path?: string;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Whether `published` covers evidence reviewed at `reviewed` under the
|
|
58
|
+
* bookkeeping-successor contract.
|
|
59
|
+
*/
|
|
60
|
+
export declare function evaluateSuccessor(git: GitRunner, scope: EvidenceScope, reviewed: string | null | undefined, published: string | null | undefined): Promise<SuccessorResult>;
|
|
61
|
+
export type BookkeepingPathKind = 'state' | 'plan' | 'implementation' | 'project-log' | 'summary' | 'review-artifact';
|
|
62
|
+
/**
|
|
63
|
+
* The bookkeeping kind of a repository-relative path, or `null` when the
|
|
64
|
+
* path is outside the allowlist: this project's `state.md`, `plan.md`,
|
|
65
|
+
* `implementation.md`, `project-log.md`, `summary.md`, and the exact review
|
|
66
|
+
* artifacts of the evidence being recorded or archived (including those of
|
|
67
|
+
* deliveries that share its member pull request).
|
|
68
|
+
*/
|
|
69
|
+
export declare function classifyPath(scope: EvidenceScope, repoPath: string): BookkeepingPathKind | null;
|
|
70
|
+
/**
|
|
71
|
+
* Whether `after` only adds entries to the project log `before`. `oat project
|
|
72
|
+
* log append` writes at the end of the log, or, once the log carries its
|
|
73
|
+
* end-of-run synthesis section, immediately before that section; every byte
|
|
74
|
+
* of the previous log is kept either way. Insertion anywhere else, a change to
|
|
75
|
+
* an existing entry, or a change to the synthesis section is a rewrite.
|
|
76
|
+
*/
|
|
77
|
+
export declare function isProjectLogAppend(before: string, after: string): boolean;
|
|
78
|
+
export interface CarrierExpectation {
|
|
79
|
+
/** The subject kind the carrier must bind. */
|
|
80
|
+
kind: 'plan' | 'code';
|
|
81
|
+
/** The ordered phase set the carrier's resolution must apply to. */
|
|
82
|
+
scope: readonly string[];
|
|
83
|
+
/**
|
|
84
|
+
* `exact` (default): the carrier binds exactly `scope`, as a milestone's
|
|
85
|
+
* scoped closeout records it. `covers`: the carrier binds at least every
|
|
86
|
+
* phase of `scope`, as a delivery's milestone carrier does after a later
|
|
87
|
+
* correction phase joined its milestone.
|
|
88
|
+
*/
|
|
89
|
+
match?: 'exact' | 'covers';
|
|
90
|
+
/** Whether the project override currently disables the carrier's gate. */
|
|
91
|
+
overrideDisabled?: boolean | null;
|
|
92
|
+
/** The current resolution, when the caller resolved configuration. */
|
|
93
|
+
resolution?: string | null;
|
|
94
|
+
/** The current configuration fingerprint, when the caller computed one. */
|
|
95
|
+
configFingerprint?: string | null;
|
|
96
|
+
}
|
|
97
|
+
export interface CarrierEvaluation {
|
|
98
|
+
/** The recorded gate outcome, independent of freshness. */
|
|
99
|
+
outcome: 'allowed' | 'blocked' | 'missing' | 'invalid';
|
|
100
|
+
freshness: 'fresh' | 'stale';
|
|
101
|
+
reason: string | null;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Evaluate one gate carrier (A2). The outcome is the recorded status; the
|
|
105
|
+
* freshness asks whether that resolution still applies: a `no_gate` or
|
|
106
|
+
* `project_disabled` carrier has no reviewed revision and is bound by its
|
|
107
|
+
* subject, so a changed configuration, override or subject makes it stale and
|
|
108
|
+
* a fabricated `reviewed_head` makes it invalid. A configured code carrier
|
|
109
|
+
* keeps its actual reviewed revision and must cover every published head as
|
|
110
|
+
* a bookkeeping successor. A plan carrier binds the approved brief and
|
|
111
|
+
* membership at activation, so implementation commits never stale it.
|
|
112
|
+
*/
|
|
113
|
+
export declare function evaluateGateCarrier(carrier: MilestoneGateCarrier | null, expected: CarrierExpectation, successor?: {
|
|
114
|
+
git: GitRunner;
|
|
115
|
+
scope: EvidenceScope;
|
|
116
|
+
publishedHeads: readonly (string | null)[];
|
|
117
|
+
}): Promise<CarrierEvaluation>;
|
|
118
|
+
export interface ReviewEvaluation {
|
|
119
|
+
artifact: string | null;
|
|
120
|
+
/** The recorded disposition or Reviews-row status, as stored. */
|
|
121
|
+
disposition: string | null;
|
|
122
|
+
fresh: boolean;
|
|
123
|
+
reason: string | null;
|
|
124
|
+
/** Every published head is covered by the reviewed revision. */
|
|
125
|
+
members: {
|
|
126
|
+
member: number;
|
|
127
|
+
fresh: boolean;
|
|
128
|
+
reason: string | null;
|
|
129
|
+
}[];
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Evaluate a registered delivery's integrated review against its observed
|
|
133
|
+
* members (A2): each member's reviewed revision must cover its observed head
|
|
134
|
+
* as a bookkeeping successor, and a member base change invalidates the
|
|
135
|
+
* evidence independently. The review must bind every phase of
|
|
136
|
+
* `requiredScope`. Historical deliveries are judged against their own
|
|
137
|
+
* observed revisions, never the branch's latest head.
|
|
138
|
+
*/
|
|
139
|
+
export declare function evaluateDeliveryReview(git: GitRunner, scope: EvidenceScope, delivery: GoalDelivery, requiredScope: readonly string[]): Promise<ReviewEvaluation>;
|
|
140
|
+
/**
|
|
141
|
+
* Review artifacts a delivery's evidence records, for the bookkeeping
|
|
142
|
+
* allowlist. `sharing` lists the deliveries that share one of its member pull
|
|
143
|
+
* requests (terminal deliveries registered from one head branch, brief
|
|
144
|
+
* contract 12.7 "Shared members"): their review artifacts are recorded on the
|
|
145
|
+
* same member head, so they are bookkeeping for this delivery as well. Each
|
|
146
|
+
* delivery is still judged on its own frozen scope and bound revisions.
|
|
147
|
+
*/
|
|
148
|
+
export declare function deliveryEvidenceArtifacts(delivery: GoalDelivery, reviewRowArtifacts?: readonly string[], sharing?: readonly GoalDelivery[]): string[];
|
|
149
|
+
/** Code review rows whose Scope cell names a label (the bare id or `<id>: …`). */
|
|
150
|
+
export declare function reviewRowsFor(reviews: readonly ReviewStatus[], labels: readonly string[]): ReviewStatus[];
|
|
151
|
+
/** The project facts the evidence scope of a delivery is built from. */
|
|
152
|
+
export interface DeliveryEvidenceProject {
|
|
153
|
+
repoRoot: string;
|
|
154
|
+
projectDir: string;
|
|
155
|
+
state: {
|
|
156
|
+
reviews: readonly ReviewStatus[];
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* The one evidence scope for a registered delivery, shared by `delivery
|
|
161
|
+
* check`, `delivery refresh` and the closeout boundary: the review rows
|
|
162
|
+
* labelled with the delivery, its milestone and every delivery sharing one of
|
|
163
|
+
* its member pull requests, plus their integrated-review artifacts.
|
|
164
|
+
*/
|
|
165
|
+
export declare function deliveryEvidenceScope(project: DeliveryEvidenceProject, deliveries: readonly GoalDelivery[], delivery: GoalDelivery): EvidenceScope;
|
|
166
|
+
/**
|
|
167
|
+
* The other registered deliveries that share at least one member pull request
|
|
168
|
+
* URL with `delivery` (brief contract 12.7 "Shared members").
|
|
169
|
+
*/
|
|
170
|
+
export declare function deliveriesSharingMembers(deliveries: readonly GoalDelivery[], delivery: GoalDelivery): GoalDelivery[];
|
|
171
|
+
//# sourceMappingURL=evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../../../src/commands/project/delivery/evidence.ts"],"names":[],"mappings":"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"}
|