@overdeck/contracts 0.69.0 → 0.70.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.
- package/dist/index.cjs +36 -12
- package/dist/index.d.ts +144 -62
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +36 -13
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -108,7 +108,8 @@ const IssueAttention = effect.Schema.Literals([
|
|
|
108
108
|
"needs-you",
|
|
109
109
|
"stuck",
|
|
110
110
|
"api-error",
|
|
111
|
-
"work-not-started"
|
|
111
|
+
"work-not-started",
|
|
112
|
+
"pr-outside-pipeline"
|
|
112
113
|
]);
|
|
113
114
|
/** Latest review decision on the PR, as the forge reports it. */
|
|
114
115
|
const PrReviewState = effect.Schema.Literals([
|
|
@@ -151,6 +152,14 @@ const DerivedWorkStart = effect.Schema.Struct({
|
|
|
151
152
|
/** The retry is journaled but not actually running because the Deacon is frozen (PAN-4210). Present only when true. */
|
|
152
153
|
held: effect.Schema.optional(effect.Schema.Literal(true))
|
|
153
154
|
});
|
|
155
|
+
/** An open pull request the pipeline never picked up (PAN-4605). */
|
|
156
|
+
const DerivedPrOutsidePipeline = effect.Schema.Struct({
|
|
157
|
+
prNumber: effect.Schema.Number,
|
|
158
|
+
/** One operator-facing paragraph naming the PR, the reason and the exact commands. */
|
|
159
|
+
fix: effect.Schema.String,
|
|
160
|
+
/** The other worktree that has the branch checked out, when that is the reason. */
|
|
161
|
+
worktreePath: effect.Schema.optional(effect.Schema.String)
|
|
162
|
+
});
|
|
154
163
|
/** Everything the dashboard needs to render an issue's pipeline position. */
|
|
155
164
|
const DerivedIssueState = effect.Schema.Struct({
|
|
156
165
|
issueId: effect.Schema.String,
|
|
@@ -165,7 +174,9 @@ const DerivedIssueState = effect.Schema.Struct({
|
|
|
165
174
|
*/
|
|
166
175
|
trackerUnknown: effect.Schema.optional(effect.Schema.Literal(true)),
|
|
167
176
|
/** A deferred or gave-up post-planning auto-start read from the workspace journal (PAN-4399). */
|
|
168
|
-
workStart: effect.Schema.optional(DerivedWorkStart)
|
|
177
|
+
workStart: effect.Schema.optional(DerivedWorkStart),
|
|
178
|
+
/** An outside PR the pipeline never picked up (PAN-4605). */
|
|
179
|
+
prOutsidePipeline: effect.Schema.optional(DerivedPrOutsidePipeline)
|
|
169
180
|
});
|
|
170
181
|
const ISSUE_STATES = [
|
|
171
182
|
"backlog",
|
|
@@ -194,7 +205,8 @@ const ISSUE_ATTENTIONS = [
|
|
|
194
205
|
"needs-you",
|
|
195
206
|
"stuck",
|
|
196
207
|
"api-error",
|
|
197
|
-
"work-not-started"
|
|
208
|
+
"work-not-started",
|
|
209
|
+
"pr-outside-pipeline"
|
|
198
210
|
];
|
|
199
211
|
function isIssueState(value) {
|
|
200
212
|
return typeof value === "string" && ISSUE_STATES.includes(value);
|
|
@@ -220,6 +232,7 @@ const GITHUB_QUOTA_CALLERS = [
|
|
|
220
232
|
"app-rest",
|
|
221
233
|
"quota-sampler",
|
|
222
234
|
"agent",
|
|
235
|
+
"pr-adoption",
|
|
223
236
|
"other"
|
|
224
237
|
];
|
|
225
238
|
const GitHubQuotaCaller = effect.Schema.Literals(GITHUB_QUOTA_CALLERS);
|
|
@@ -1552,7 +1565,8 @@ const BeadsFreshnessChangedEvent = effect.Schema.Struct({
|
|
|
1552
1565
|
* (PAN-3537).
|
|
1553
1566
|
*
|
|
1554
1567
|
* Emitted by the `check_suite` webhook handler for live updates, only after an
|
|
1555
|
-
* independent
|
|
1568
|
+
* independent lookup verifies the payload SHA is still the current CI head
|
|
1569
|
+
* (the newest push run of the CI workflow, PAN-4618).
|
|
1556
1570
|
* `suiteId` is the check suite id — for GitHub Actions that is one suite per
|
|
1557
1571
|
* workflow run. The webhook payload does not carry `htmlUrl`.
|
|
1558
1572
|
*
|
|
@@ -1575,15 +1589,16 @@ const ProjectCiSuiteObservedEvent = effect.Schema.Struct({
|
|
|
1575
1589
|
conclusion: effect.Schema.NullOr(effect.Schema.String),
|
|
1576
1590
|
htmlUrl: effect.Schema.optional(effect.Schema.String),
|
|
1577
1591
|
observedAt: effect.Schema.String,
|
|
1578
|
-
/** True only after the emitter verified headSha against the
|
|
1592
|
+
/** True only after the emitter verified headSha against the current CI head. */
|
|
1579
1593
|
authoritativeHead: effect.Schema.optional(effect.Schema.Boolean)
|
|
1580
1594
|
})
|
|
1581
1595
|
});
|
|
1582
1596
|
/**
|
|
1583
|
-
* Complete GitHub Actions projection for the verified
|
|
1584
|
-
*
|
|
1585
|
-
*
|
|
1586
|
-
*
|
|
1597
|
+
* Complete GitHub Actions projection for the verified current CI head (the
|
|
1598
|
+
* newest push run of the CI workflow, PAN-4618). The REST seed/repair emits
|
|
1599
|
+
* one event after paginating every run and verifying the CI head a second
|
|
1600
|
+
* time. An empty suites record explicitly clears stale CI when the current
|
|
1601
|
+
* commit has no Actions runs.
|
|
1587
1602
|
*/
|
|
1588
1603
|
const ProjectCiHeadObservedEvent = effect.Schema.Struct({
|
|
1589
1604
|
type: effect.Schema.Literal("project.ci_head_observed"),
|
|
@@ -3575,15 +3590,20 @@ const ReadFileAtPathResult = effect.Schema.Struct({
|
|
|
3575
3590
|
text: effect.Schema.String,
|
|
3576
3591
|
lang: effect.Schema.String,
|
|
3577
3592
|
mtimeMs: effect.Schema.Number,
|
|
3578
|
-
totalLines: effect.Schema.Number
|
|
3593
|
+
totalLines: effect.Schema.Number,
|
|
3594
|
+
/** True when the resolved file is inside a registered project root or OVERDECK_HOME, so writeFileAtPath will accept it (PAN-4583). */
|
|
3595
|
+
writable: effect.Schema.Boolean
|
|
3579
3596
|
});
|
|
3580
3597
|
/**
|
|
3581
3598
|
* 10b-2. Read an allowlisted markdown file by absolute path (PAN-3260).
|
|
3582
3599
|
*
|
|
3583
3600
|
* Unlike ReadWorkspaceFileRpc this takes no issueId — the internal markdown
|
|
3584
3601
|
* editor pane opens files reached from surfaces with no workspace context
|
|
3585
|
-
* (e.g. a repo-root file chip inside a conversation). The server
|
|
3586
|
-
*
|
|
3602
|
+
* (e.g. a repo-root file chip inside a conversation). The server reads any
|
|
3603
|
+
* existing markdown file whose realpath is inside the operator's home
|
|
3604
|
+
* directory or a write root (registered project roots + OVERDECK_HOME), and
|
|
3605
|
+
* sets `writable` to whether it is inside a write root (PAN-4583). Writes
|
|
3606
|
+
* stay limited to the write roots — see WriteFileAtPathRpc.
|
|
3587
3607
|
*/
|
|
3588
3608
|
const ReadFileAtPathRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.readFileAtPath, {
|
|
3589
3609
|
payload: ReadFileAtPathInput,
|
|
@@ -3602,6 +3622,8 @@ const WriteFileAtPathResult = effect.Schema.Struct({ mtimeMs: effect.Schema.Numb
|
|
|
3602
3622
|
* `expectedMtimeMs` enables optimistic concurrency: a stale value is
|
|
3603
3623
|
* rejected with a PanRpcError code of WRITE_CONFLICT and nothing is
|
|
3604
3624
|
* written. Omitting it (e.g. an explicit Overwrite action) skips the check.
|
|
3625
|
+
* The path must resolve inside a registered project root or OVERDECK_HOME;
|
|
3626
|
+
* anything else rejects with PATH_NOT_ALLOWED.
|
|
3605
3627
|
*/
|
|
3606
3628
|
const WriteFileAtPathRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.writeFileAtPath, {
|
|
3607
3629
|
payload: WriteFileAtPathInput,
|
|
@@ -6726,6 +6748,7 @@ const TELEMETRY_PROPERTY_DOMAINS = {
|
|
|
6726
6748
|
"app_rest",
|
|
6727
6749
|
"quota_sampler",
|
|
6728
6750
|
"agent",
|
|
6751
|
+
"pr_adoption",
|
|
6729
6752
|
"other"
|
|
6730
6753
|
],
|
|
6731
6754
|
harness: [
|
|
@@ -16554,6 +16577,7 @@ exports.DeepWipeRpc = DeepWipeRpc;
|
|
|
16554
16577
|
exports.DeployStalenessSnapshot = DeployStalenessSnapshot;
|
|
16555
16578
|
exports.DerivedBranchState = DerivedBranchState;
|
|
16556
16579
|
exports.DerivedIssueState = DerivedIssueState;
|
|
16580
|
+
exports.DerivedPrOutsidePipeline = DerivedPrOutsidePipeline;
|
|
16557
16581
|
exports.DerivedPrState = DerivedPrState;
|
|
16558
16582
|
exports.DerivedWorkStart = DerivedWorkStart;
|
|
16559
16583
|
exports.DirectoryEntry = DirectoryEntry;
|