@overdeck/contracts 0.63.0 → 0.64.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 +790 -15
- package/dist/index.d.ts +350 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +778 -16
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -107,7 +107,8 @@ const IssueState = effect.Schema.Literals([
|
|
|
107
107
|
const IssueAttention = effect.Schema.Literals([
|
|
108
108
|
"needs-you",
|
|
109
109
|
"stuck",
|
|
110
|
-
"api-error"
|
|
110
|
+
"api-error",
|
|
111
|
+
"work-not-started"
|
|
111
112
|
]);
|
|
112
113
|
/** Latest review decision on the PR, as the forge reports it. */
|
|
113
114
|
const PrReviewState = effect.Schema.Literals([
|
|
@@ -140,6 +141,16 @@ const DerivedBranchState = effect.Schema.Struct({
|
|
|
140
141
|
aheadOfMain: effect.Schema.Number,
|
|
141
142
|
pushed: effect.Schema.Boolean
|
|
142
143
|
});
|
|
144
|
+
/** The workspace journal's read on a post-planning auto-start (PAN-4399). */
|
|
145
|
+
const DerivedWorkStart = effect.Schema.Struct({
|
|
146
|
+
status: effect.Schema.Literals(["retrying", "not-started"]),
|
|
147
|
+
/** ISO time of the journal entry the status was read from. */
|
|
148
|
+
at: effect.Schema.String,
|
|
149
|
+
error: effect.Schema.optional(effect.Schema.String),
|
|
150
|
+
nextRetryAt: effect.Schema.optional(effect.Schema.String),
|
|
151
|
+
/** The retry is journaled but not actually running because the Deacon is frozen (PAN-4210). Present only when true. */
|
|
152
|
+
held: effect.Schema.optional(effect.Schema.Literal(true))
|
|
153
|
+
});
|
|
143
154
|
/** Everything the dashboard needs to render an issue's pipeline position. */
|
|
144
155
|
const DerivedIssueState = effect.Schema.Struct({
|
|
145
156
|
issueId: effect.Schema.String,
|
|
@@ -152,7 +163,9 @@ const DerivedIssueState = effect.Schema.Struct({
|
|
|
152
163
|
* precedence — could not be ruled in or out. Present only in that case; an
|
|
153
164
|
* unresolved tracker read is never reported as an open issue.
|
|
154
165
|
*/
|
|
155
|
-
trackerUnknown: effect.Schema.optional(effect.Schema.Literal(true))
|
|
166
|
+
trackerUnknown: effect.Schema.optional(effect.Schema.Literal(true)),
|
|
167
|
+
/** A deferred or gave-up post-planning auto-start read from the workspace journal (PAN-4399). */
|
|
168
|
+
workStart: effect.Schema.optional(DerivedWorkStart)
|
|
156
169
|
});
|
|
157
170
|
const ISSUE_STATES = [
|
|
158
171
|
"backlog",
|
|
@@ -180,7 +193,8 @@ const ISSUE_STATE_PRECEDENCE = [
|
|
|
180
193
|
const ISSUE_ATTENTIONS = [
|
|
181
194
|
"needs-you",
|
|
182
195
|
"stuck",
|
|
183
|
-
"api-error"
|
|
196
|
+
"api-error",
|
|
197
|
+
"work-not-started"
|
|
184
198
|
];
|
|
185
199
|
function isIssueState(value) {
|
|
186
200
|
return typeof value === "string" && ISSUE_STATES.includes(value);
|
|
@@ -483,6 +497,13 @@ const ChannelPermissionRequestSnapshot = effect.Schema.Struct({
|
|
|
483
497
|
inputPreview: effect.Schema.String,
|
|
484
498
|
createdAt: effect.Schema.String
|
|
485
499
|
});
|
|
500
|
+
/** PAN-4371 — advisory Jev reading of why an idle agent ended its turn. kind is a string (append-only store). */
|
|
501
|
+
const TurnEndAssessment = effect.Schema.Struct({
|
|
502
|
+
kind: effect.Schema.String,
|
|
503
|
+
confidence: effect.Schema.Number,
|
|
504
|
+
needsAnswer: effect.Schema.Boolean,
|
|
505
|
+
model: effect.Schema.String
|
|
506
|
+
});
|
|
486
507
|
const AgentSnapshot = effect.Schema.Struct({
|
|
487
508
|
id: AgentId,
|
|
488
509
|
issueId: IssueId,
|
|
@@ -545,6 +566,7 @@ const AgentSnapshot = effect.Schema.Struct({
|
|
|
545
566
|
})),
|
|
546
567
|
resolution: effect.Schema.optional(AgentResolution),
|
|
547
568
|
resolutionCount: effect.Schema.optional(effect.Schema.Number),
|
|
569
|
+
turnEndAssessment: effect.Schema.optional(TurnEndAssessment),
|
|
548
570
|
runtimeSnapshotSequence: effect.Schema.optional(SequenceNumber)
|
|
549
571
|
});
|
|
550
572
|
/** PAN-3151: A recorded cycle in the review convergence tracking series */
|
|
@@ -1802,7 +1824,8 @@ const AgentEnrichmentChangedEvent = effect.Schema.Struct({
|
|
|
1802
1824
|
plan: effect.Schema.String
|
|
1803
1825
|
})),
|
|
1804
1826
|
resolution: effect.Schema.optional(AgentResolution),
|
|
1805
|
-
resolutionCount: effect.Schema.optional(effect.Schema.Number)
|
|
1827
|
+
resolutionCount: effect.Schema.optional(effect.Schema.Number),
|
|
1828
|
+
turnEndAssessment: effect.Schema.optional(TurnEndAssessment)
|
|
1806
1829
|
})
|
|
1807
1830
|
});
|
|
1808
1831
|
/** New — agent created in database */
|
|
@@ -4056,7 +4079,8 @@ function applyEvent(state, event) {
|
|
|
4056
4079
|
pendingAskUserQuestion: event.payload.pendingAskUserQuestion,
|
|
4057
4080
|
pendingProposedPlan: event.payload.pendingProposedPlan,
|
|
4058
4081
|
resolution: event.payload.resolution,
|
|
4059
|
-
resolutionCount: event.payload.resolutionCount
|
|
4082
|
+
resolutionCount: event.payload.resolutionCount,
|
|
4083
|
+
turnEndAssessment: event.payload.turnEndAssessment
|
|
4060
4084
|
}
|
|
4061
4085
|
}
|
|
4062
4086
|
};
|
|
@@ -4194,6 +4218,7 @@ function applyEvent(state, event) {
|
|
|
4194
4218
|
delete base["pendingInputKinds"];
|
|
4195
4219
|
delete base["pendingAskUserQuestion"];
|
|
4196
4220
|
delete base["pendingProposedPlan"];
|
|
4221
|
+
delete base["turnEndAssessment"];
|
|
4197
4222
|
}
|
|
4198
4223
|
return base;
|
|
4199
4224
|
})();
|
|
@@ -6911,30 +6936,261 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
6911
6936
|
"id": "pan-skills-set",
|
|
6912
6937
|
"path": ["skills", "set"],
|
|
6913
6938
|
"display": "/pan skills set",
|
|
6914
|
-
"description": "Set a skill on, off, or inherit
|
|
6939
|
+
"description": "Set a skill (<skill> <state>) or a pack (--pack <id> <state>) on, off, or inherit",
|
|
6940
|
+
"args": [{
|
|
6941
|
+
"name": "args",
|
|
6942
|
+
"required": true,
|
|
6943
|
+
"variadic": true
|
|
6944
|
+
}],
|
|
6945
|
+
"options": [
|
|
6946
|
+
{
|
|
6947
|
+
"flags": "--project <key>",
|
|
6948
|
+
"description": "Project override",
|
|
6949
|
+
"required": true,
|
|
6950
|
+
"valueHint": "key"
|
|
6951
|
+
},
|
|
6952
|
+
{
|
|
6953
|
+
"flags": "--issue <id>",
|
|
6954
|
+
"description": "Issue override",
|
|
6955
|
+
"required": true,
|
|
6956
|
+
"valueHint": "id"
|
|
6957
|
+
},
|
|
6958
|
+
{
|
|
6959
|
+
"flags": "--pack <id>",
|
|
6960
|
+
"description": "Set a whole skill pack instead of one skill",
|
|
6961
|
+
"required": true,
|
|
6962
|
+
"valueHint": "id"
|
|
6963
|
+
}
|
|
6964
|
+
],
|
|
6965
|
+
"aliases": [],
|
|
6966
|
+
"category": "Core"
|
|
6967
|
+
},
|
|
6968
|
+
{
|
|
6969
|
+
"id": "pan-skills-pack",
|
|
6970
|
+
"path": ["skills", "pack"],
|
|
6971
|
+
"display": "/pan skills pack",
|
|
6972
|
+
"description": "Register, update, and cache external skill packs pinned to a commit",
|
|
6973
|
+
"args": [],
|
|
6974
|
+
"options": [],
|
|
6975
|
+
"aliases": [],
|
|
6976
|
+
"category": "Core"
|
|
6977
|
+
},
|
|
6978
|
+
{
|
|
6979
|
+
"id": "pan-skills-pack-add",
|
|
6980
|
+
"path": [
|
|
6981
|
+
"skills",
|
|
6982
|
+
"pack",
|
|
6983
|
+
"add"
|
|
6984
|
+
],
|
|
6985
|
+
"display": "/pan skills pack add",
|
|
6986
|
+
"description": "Register a git skill pack at the commit a ref resolves to (enables nothing)",
|
|
6915
6987
|
"args": [{
|
|
6916
|
-
"name": "
|
|
6988
|
+
"name": "id",
|
|
6917
6989
|
"required": true,
|
|
6918
6990
|
"variadic": false
|
|
6919
6991
|
}, {
|
|
6920
|
-
"name": "
|
|
6992
|
+
"name": "url",
|
|
6993
|
+
"required": true,
|
|
6994
|
+
"variadic": false
|
|
6995
|
+
}],
|
|
6996
|
+
"options": [
|
|
6997
|
+
{
|
|
6998
|
+
"flags": "--ref <ref>",
|
|
6999
|
+
"description": "Tag or branch to pin",
|
|
7000
|
+
"required": true,
|
|
7001
|
+
"valueHint": "ref"
|
|
7002
|
+
},
|
|
7003
|
+
{
|
|
7004
|
+
"flags": "--adapter <adapter>",
|
|
7005
|
+
"description": "plain or claude-plugin",
|
|
7006
|
+
"required": true,
|
|
7007
|
+
"valueHint": "adapter"
|
|
7008
|
+
},
|
|
7009
|
+
{
|
|
7010
|
+
"flags": "--yes",
|
|
7011
|
+
"description": "Trust the resolved commit without asking",
|
|
7012
|
+
"required": false,
|
|
7013
|
+
"valueHint": null
|
|
7014
|
+
}
|
|
7015
|
+
],
|
|
7016
|
+
"aliases": [],
|
|
7017
|
+
"category": "Core"
|
|
7018
|
+
},
|
|
7019
|
+
{
|
|
7020
|
+
"id": "pan-skills-pack-update",
|
|
7021
|
+
"path": [
|
|
7022
|
+
"skills",
|
|
7023
|
+
"pack",
|
|
7024
|
+
"update"
|
|
7025
|
+
],
|
|
7026
|
+
"display": "/pan skills pack update",
|
|
7027
|
+
"description": "Move a pack to the commit its ref (or --ref) now resolves to",
|
|
7028
|
+
"args": [{
|
|
7029
|
+
"name": "id",
|
|
6921
7030
|
"required": true,
|
|
6922
7031
|
"variadic": false
|
|
6923
7032
|
}],
|
|
6924
7033
|
"options": [{
|
|
6925
|
-
"flags": "--
|
|
6926
|
-
"description": "
|
|
7034
|
+
"flags": "--ref <ref>",
|
|
7035
|
+
"description": "Switch to a different tag or branch",
|
|
6927
7036
|
"required": true,
|
|
6928
|
-
"valueHint": "
|
|
7037
|
+
"valueHint": "ref"
|
|
6929
7038
|
}, {
|
|
6930
|
-
"flags": "--
|
|
6931
|
-
"description": "
|
|
7039
|
+
"flags": "--yes",
|
|
7040
|
+
"description": "Trust the new commit without asking",
|
|
7041
|
+
"required": false,
|
|
7042
|
+
"valueHint": null
|
|
7043
|
+
}],
|
|
7044
|
+
"aliases": [],
|
|
7045
|
+
"category": "Core"
|
|
7046
|
+
},
|
|
7047
|
+
{
|
|
7048
|
+
"id": "pan-skills-pack-list",
|
|
7049
|
+
"path": [
|
|
7050
|
+
"skills",
|
|
7051
|
+
"pack",
|
|
7052
|
+
"list"
|
|
7053
|
+
],
|
|
7054
|
+
"display": "/pan skills pack list",
|
|
7055
|
+
"description": "List registered skill packs",
|
|
7056
|
+
"args": [],
|
|
7057
|
+
"options": [{
|
|
7058
|
+
"flags": "--json",
|
|
7059
|
+
"description": "Output as JSON",
|
|
7060
|
+
"required": false,
|
|
7061
|
+
"valueHint": null
|
|
7062
|
+
}, {
|
|
7063
|
+
"flags": "--offline",
|
|
7064
|
+
"description": "Skip the update check (no network)",
|
|
7065
|
+
"required": false,
|
|
7066
|
+
"valueHint": null
|
|
7067
|
+
}],
|
|
7068
|
+
"aliases": [],
|
|
7069
|
+
"category": "Core"
|
|
7070
|
+
},
|
|
7071
|
+
{
|
|
7072
|
+
"id": "pan-skills-pack-remove",
|
|
7073
|
+
"path": [
|
|
7074
|
+
"skills",
|
|
7075
|
+
"pack",
|
|
7076
|
+
"remove"
|
|
7077
|
+
],
|
|
7078
|
+
"display": "/pan skills pack remove",
|
|
7079
|
+
"description": "Unregister a pack, clear its global toggles, and delete its cache",
|
|
7080
|
+
"args": [{
|
|
7081
|
+
"name": "id",
|
|
6932
7082
|
"required": true,
|
|
6933
|
-
"
|
|
7083
|
+
"variadic": false
|
|
7084
|
+
}],
|
|
7085
|
+
"options": [],
|
|
7086
|
+
"aliases": [],
|
|
7087
|
+
"category": "Core"
|
|
7088
|
+
},
|
|
7089
|
+
{
|
|
7090
|
+
"id": "pan-skills-pack-sync",
|
|
7091
|
+
"path": [
|
|
7092
|
+
"skills",
|
|
7093
|
+
"pack",
|
|
7094
|
+
"sync"
|
|
7095
|
+
],
|
|
7096
|
+
"display": "/pan skills pack sync",
|
|
7097
|
+
"description": "Re-fetch packs and extract their trusted commits (all packs when omitted)",
|
|
7098
|
+
"args": [{
|
|
7099
|
+
"name": "id",
|
|
7100
|
+
"required": false,
|
|
7101
|
+
"variadic": false
|
|
7102
|
+
}],
|
|
7103
|
+
"options": [],
|
|
7104
|
+
"aliases": [],
|
|
7105
|
+
"category": "Core"
|
|
7106
|
+
},
|
|
7107
|
+
{
|
|
7108
|
+
"id": "pan-skills-pack-gc",
|
|
7109
|
+
"path": [
|
|
7110
|
+
"skills",
|
|
7111
|
+
"pack",
|
|
7112
|
+
"gc"
|
|
7113
|
+
],
|
|
7114
|
+
"display": "/pan skills pack gc",
|
|
7115
|
+
"description": "Remove unused skill pack mounts and dangling launch links",
|
|
7116
|
+
"args": [],
|
|
7117
|
+
"options": [{
|
|
7118
|
+
"flags": "--max-age-days <n>",
|
|
7119
|
+
"description": "Keep unused mounts younger than this",
|
|
7120
|
+
"required": true,
|
|
7121
|
+
"valueHint": "n"
|
|
6934
7122
|
}],
|
|
6935
7123
|
"aliases": [],
|
|
6936
7124
|
"category": "Core"
|
|
6937
7125
|
},
|
|
7126
|
+
{
|
|
7127
|
+
"id": "pan-pair",
|
|
7128
|
+
"path": ["pair"],
|
|
7129
|
+
"display": "/pan pair",
|
|
7130
|
+
"description": "Print a one-time URL that pairs another device with this dashboard (see configuration/remote-access.mdx)",
|
|
7131
|
+
"args": [],
|
|
7132
|
+
"options": [
|
|
7133
|
+
{
|
|
7134
|
+
"flags": "--label <name>",
|
|
7135
|
+
"description": "Name to record for the pairing in the activity log",
|
|
7136
|
+
"required": true,
|
|
7137
|
+
"valueHint": "name"
|
|
7138
|
+
},
|
|
7139
|
+
{
|
|
7140
|
+
"flags": "--url <base>",
|
|
7141
|
+
"description": "Base URL the other device can reach (default: this dashboard's API URL)",
|
|
7142
|
+
"required": true,
|
|
7143
|
+
"valueHint": "base"
|
|
7144
|
+
},
|
|
7145
|
+
{
|
|
7146
|
+
"flags": "--json",
|
|
7147
|
+
"description": "Print { url, credential, expiresAt } as JSON",
|
|
7148
|
+
"required": false,
|
|
7149
|
+
"valueHint": null
|
|
7150
|
+
}
|
|
7151
|
+
],
|
|
7152
|
+
"aliases": [],
|
|
7153
|
+
"category": "CLI"
|
|
7154
|
+
},
|
|
7155
|
+
{
|
|
7156
|
+
"id": "pan-devices",
|
|
7157
|
+
"path": ["devices"],
|
|
7158
|
+
"display": "/pan devices",
|
|
7159
|
+
"description": "List or revoke paired devices (see configuration/remote-access.mdx)",
|
|
7160
|
+
"args": [],
|
|
7161
|
+
"options": [],
|
|
7162
|
+
"aliases": [],
|
|
7163
|
+
"category": "CLI"
|
|
7164
|
+
},
|
|
7165
|
+
{
|
|
7166
|
+
"id": "pan-devices-list",
|
|
7167
|
+
"path": ["devices", "list"],
|
|
7168
|
+
"display": "/pan devices list",
|
|
7169
|
+
"description": "List paired devices with created, last-used and revoked times",
|
|
7170
|
+
"args": [],
|
|
7171
|
+
"options": [{
|
|
7172
|
+
"flags": "--json",
|
|
7173
|
+
"description": "Print the devices as JSON",
|
|
7174
|
+
"required": false,
|
|
7175
|
+
"valueHint": null
|
|
7176
|
+
}],
|
|
7177
|
+
"aliases": [],
|
|
7178
|
+
"category": "CLI"
|
|
7179
|
+
},
|
|
7180
|
+
{
|
|
7181
|
+
"id": "pan-devices-revoke",
|
|
7182
|
+
"path": ["devices", "revoke"],
|
|
7183
|
+
"display": "/pan devices revoke",
|
|
7184
|
+
"description": "Revoke a paired device and close its live connections",
|
|
7185
|
+
"args": [{
|
|
7186
|
+
"name": "id",
|
|
7187
|
+
"required": true,
|
|
7188
|
+
"variadic": false
|
|
7189
|
+
}],
|
|
7190
|
+
"options": [],
|
|
7191
|
+
"aliases": [],
|
|
7192
|
+
"category": "CLI"
|
|
7193
|
+
},
|
|
6938
7194
|
{
|
|
6939
7195
|
"id": "pan-issues",
|
|
6940
7196
|
"path": ["issues"],
|
|
@@ -7249,6 +7505,12 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
7249
7505
|
"description": "Bypass the PRD-first gate for a genuinely trivial issue (loud; prefer writing the PRD)",
|
|
7250
7506
|
"required": false,
|
|
7251
7507
|
"valueHint": null
|
|
7508
|
+
},
|
|
7509
|
+
{
|
|
7510
|
+
"flags": "--critic",
|
|
7511
|
+
"description": "Require an independent different-family plan critique before promotion (automatic for architecture, substrate-improvement and security labels)",
|
|
7512
|
+
"required": false,
|
|
7513
|
+
"valueHint": null
|
|
7252
7514
|
}
|
|
7253
7515
|
],
|
|
7254
7516
|
"aliases": [],
|
|
@@ -7455,6 +7717,12 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
7455
7717
|
"required": true,
|
|
7456
7718
|
"valueHint": "path"
|
|
7457
7719
|
},
|
|
7720
|
+
{
|
|
7721
|
+
"flags": "--allow-primary",
|
|
7722
|
+
"description": "Operator only: allow --cwd to be a project's primary checkout (refused for agent sessions)",
|
|
7723
|
+
"required": false,
|
|
7724
|
+
"valueHint": null
|
|
7725
|
+
},
|
|
7458
7726
|
{
|
|
7459
7727
|
"flags": "--project <key>",
|
|
7460
7728
|
"description": "Project (yaml key or display name) for the new conversation; defaults to inheriting the source conversation's project",
|
|
@@ -7504,6 +7772,12 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
7504
7772
|
"required": true,
|
|
7505
7773
|
"valueHint": "path"
|
|
7506
7774
|
},
|
|
7775
|
+
{
|
|
7776
|
+
"flags": "--allow-primary",
|
|
7777
|
+
"description": "Operator only: allow --cwd to be a project's primary checkout (refused for agent sessions)",
|
|
7778
|
+
"required": false,
|
|
7779
|
+
"valueHint": null
|
|
7780
|
+
},
|
|
7507
7781
|
{
|
|
7508
7782
|
"flags": "--project <key>",
|
|
7509
7783
|
"description": "Project (yaml key or display name) for the new conversation; defaults to inheriting the source conversation's project",
|
|
@@ -8334,6 +8608,11 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
8334
8608
|
"description": "Print JSON",
|
|
8335
8609
|
"required": false,
|
|
8336
8610
|
"valueHint": null
|
|
8611
|
+
}, {
|
|
8612
|
+
"flags": "--steal",
|
|
8613
|
+
"description": "Claim even when a running agent holds this item or an overlapping one (foreman/operator override)",
|
|
8614
|
+
"required": false,
|
|
8615
|
+
"valueHint": null
|
|
8337
8616
|
}],
|
|
8338
8617
|
"aliases": [],
|
|
8339
8618
|
"category": "Lifecycle"
|
|
@@ -8991,6 +9270,436 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
8991
9270
|
"aliases": [],
|
|
8992
9271
|
"category": "Workspace"
|
|
8993
9272
|
},
|
|
9273
|
+
{
|
|
9274
|
+
"id": "pan-vault",
|
|
9275
|
+
"path": ["vault"],
|
|
9276
|
+
"display": "/pan vault",
|
|
9277
|
+
"description": "Session Vault: encrypted off-machine storage and cross-machine resume for agent conversations",
|
|
9278
|
+
"args": [],
|
|
9279
|
+
"options": [],
|
|
9280
|
+
"aliases": [],
|
|
9281
|
+
"category": "CLI"
|
|
9282
|
+
},
|
|
9283
|
+
{
|
|
9284
|
+
"id": "pan-vault-setup",
|
|
9285
|
+
"path": ["vault", "setup"],
|
|
9286
|
+
"display": "/pan vault setup",
|
|
9287
|
+
"description": "Enable the vault against your own git remote and print the recovery phrase once",
|
|
9288
|
+
"args": [{
|
|
9289
|
+
"name": "git-url",
|
|
9290
|
+
"required": true,
|
|
9291
|
+
"variadic": false
|
|
9292
|
+
}],
|
|
9293
|
+
"options": [
|
|
9294
|
+
{
|
|
9295
|
+
"flags": "--hooks",
|
|
9296
|
+
"description": "Also register the Claude Code Stop hook that saves after each turn",
|
|
9297
|
+
"required": false,
|
|
9298
|
+
"valueHint": null
|
|
9299
|
+
},
|
|
9300
|
+
{
|
|
9301
|
+
"flags": "--passphrase-file <path>",
|
|
9302
|
+
"description": "Also enable passphrase unlock with the passphrase in this file",
|
|
9303
|
+
"required": true,
|
|
9304
|
+
"valueHint": "path"
|
|
9305
|
+
},
|
|
9306
|
+
{
|
|
9307
|
+
"flags": "--generate-passphrase",
|
|
9308
|
+
"description": "Also enable passphrase unlock with a generated 6-word passphrase, printed once",
|
|
9309
|
+
"required": false,
|
|
9310
|
+
"valueHint": null
|
|
9311
|
+
},
|
|
9312
|
+
{
|
|
9313
|
+
"flags": "--no-passphrase",
|
|
9314
|
+
"description": "Do not offer passphrase unlock",
|
|
9315
|
+
"required": false,
|
|
9316
|
+
"valueHint": null
|
|
9317
|
+
}
|
|
9318
|
+
],
|
|
9319
|
+
"aliases": [],
|
|
9320
|
+
"category": "CLI"
|
|
9321
|
+
},
|
|
9322
|
+
{
|
|
9323
|
+
"id": "pan-vault-join",
|
|
9324
|
+
"path": ["vault", "join"],
|
|
9325
|
+
"display": "/pan vault join",
|
|
9326
|
+
"description": "Join an existing vault from another machine with the vault passphrase or the recovery phrase",
|
|
9327
|
+
"args": [{
|
|
9328
|
+
"name": "git-url",
|
|
9329
|
+
"required": true,
|
|
9330
|
+
"variadic": false
|
|
9331
|
+
}],
|
|
9332
|
+
"options": [{
|
|
9333
|
+
"flags": "--phrase-file <path>",
|
|
9334
|
+
"description": "Read the 24-word recovery phrase from a file instead of prompting",
|
|
9335
|
+
"required": true,
|
|
9336
|
+
"valueHint": "path"
|
|
9337
|
+
}, {
|
|
9338
|
+
"flags": "--passphrase-file <path>",
|
|
9339
|
+
"description": "Read the vault passphrase from a file instead of prompting",
|
|
9340
|
+
"required": true,
|
|
9341
|
+
"valueHint": "path"
|
|
9342
|
+
}],
|
|
9343
|
+
"aliases": [],
|
|
9344
|
+
"category": "CLI"
|
|
9345
|
+
},
|
|
9346
|
+
{
|
|
9347
|
+
"id": "pan-vault-passphrase",
|
|
9348
|
+
"path": ["vault", "passphrase"],
|
|
9349
|
+
"display": "/pan vault passphrase",
|
|
9350
|
+
"description": "Turn passphrase unlock for new machines on (set) or off (remove); the vault key stays the same",
|
|
9351
|
+
"args": [],
|
|
9352
|
+
"options": [],
|
|
9353
|
+
"aliases": [],
|
|
9354
|
+
"category": "CLI"
|
|
9355
|
+
},
|
|
9356
|
+
{
|
|
9357
|
+
"id": "pan-vault-passphrase-set",
|
|
9358
|
+
"path": [
|
|
9359
|
+
"vault",
|
|
9360
|
+
"passphrase",
|
|
9361
|
+
"set"
|
|
9362
|
+
],
|
|
9363
|
+
"display": "/pan vault passphrase set",
|
|
9364
|
+
"description": "Wrap the vault key under a passphrase so a new machine can join without the recovery phrase",
|
|
9365
|
+
"args": [],
|
|
9366
|
+
"options": [{
|
|
9367
|
+
"flags": "--passphrase-file <path>",
|
|
9368
|
+
"description": "Read the passphrase from a file instead of prompting",
|
|
9369
|
+
"required": true,
|
|
9370
|
+
"valueHint": "path"
|
|
9371
|
+
}, {
|
|
9372
|
+
"flags": "--generate",
|
|
9373
|
+
"description": "Generate a 6-word passphrase and print it once",
|
|
9374
|
+
"required": false,
|
|
9375
|
+
"valueHint": null
|
|
9376
|
+
}],
|
|
9377
|
+
"aliases": [],
|
|
9378
|
+
"category": "CLI"
|
|
9379
|
+
},
|
|
9380
|
+
{
|
|
9381
|
+
"id": "pan-vault-passphrase-remove",
|
|
9382
|
+
"path": [
|
|
9383
|
+
"vault",
|
|
9384
|
+
"passphrase",
|
|
9385
|
+
"remove"
|
|
9386
|
+
],
|
|
9387
|
+
"display": "/pan vault passphrase remove",
|
|
9388
|
+
"description": "Delete the passphrase unlock object; joining then needs the recovery phrase",
|
|
9389
|
+
"args": [],
|
|
9390
|
+
"options": [],
|
|
9391
|
+
"aliases": [],
|
|
9392
|
+
"category": "CLI"
|
|
9393
|
+
},
|
|
9394
|
+
{
|
|
9395
|
+
"id": "pan-vault-rotate-key",
|
|
9396
|
+
"path": ["vault", "rotate-key"],
|
|
9397
|
+
"display": "/pan vault rotate-key",
|
|
9398
|
+
"description": "Replace the vault key after losing a device: re-encrypt refs under a new key, keep old chunks readable, print a new recovery phrase",
|
|
9399
|
+
"args": [],
|
|
9400
|
+
"options": [
|
|
9401
|
+
{
|
|
9402
|
+
"flags": "--yes",
|
|
9403
|
+
"description": "Rotate without the confirmation prompt",
|
|
9404
|
+
"required": false,
|
|
9405
|
+
"valueHint": null
|
|
9406
|
+
},
|
|
9407
|
+
{
|
|
9408
|
+
"flags": "--passphrase-file <path>",
|
|
9409
|
+
"description": "Re-wrap passphrase unlock under the new key with the passphrase in this file",
|
|
9410
|
+
"required": true,
|
|
9411
|
+
"valueHint": "path"
|
|
9412
|
+
},
|
|
9413
|
+
{
|
|
9414
|
+
"flags": "--generate-passphrase",
|
|
9415
|
+
"description": "Re-wrap passphrase unlock under the new key with a generated 6-word passphrase, printed once",
|
|
9416
|
+
"required": false,
|
|
9417
|
+
"valueHint": null
|
|
9418
|
+
},
|
|
9419
|
+
{
|
|
9420
|
+
"flags": "--no-passphrase",
|
|
9421
|
+
"description": "Turn passphrase unlock off",
|
|
9422
|
+
"required": false,
|
|
9423
|
+
"valueHint": null
|
|
9424
|
+
}
|
|
9425
|
+
],
|
|
9426
|
+
"aliases": [],
|
|
9427
|
+
"category": "CLI"
|
|
9428
|
+
},
|
|
9429
|
+
{
|
|
9430
|
+
"id": "pan-vault-status",
|
|
9431
|
+
"path": ["vault", "status"],
|
|
9432
|
+
"display": "/pan vault status",
|
|
9433
|
+
"description": "Show backend, this machine, owned records, last sync and the machine list",
|
|
9434
|
+
"args": [],
|
|
9435
|
+
"options": [{
|
|
9436
|
+
"flags": "--json",
|
|
9437
|
+
"description": "Output in JSON format",
|
|
9438
|
+
"required": false,
|
|
9439
|
+
"valueHint": null
|
|
9440
|
+
}],
|
|
9441
|
+
"aliases": [],
|
|
9442
|
+
"category": "CLI"
|
|
9443
|
+
},
|
|
9444
|
+
{
|
|
9445
|
+
"id": "pan-vault-save",
|
|
9446
|
+
"path": ["vault", "save"],
|
|
9447
|
+
"display": "/pan vault save",
|
|
9448
|
+
"description": "Settle one transcript (by session id or path) or many into the vault",
|
|
9449
|
+
"args": [{
|
|
9450
|
+
"name": "session-id-or-path",
|
|
9451
|
+
"required": false,
|
|
9452
|
+
"variadic": false
|
|
9453
|
+
}],
|
|
9454
|
+
"options": [
|
|
9455
|
+
{
|
|
9456
|
+
"flags": "--all",
|
|
9457
|
+
"description": "Settle every discovered transcript",
|
|
9458
|
+
"required": false,
|
|
9459
|
+
"valueHint": null
|
|
9460
|
+
},
|
|
9461
|
+
{
|
|
9462
|
+
"flags": "--since <date>",
|
|
9463
|
+
"description": "With --all: only transcripts modified on or after this date",
|
|
9464
|
+
"required": true,
|
|
9465
|
+
"valueHint": "date"
|
|
9466
|
+
},
|
|
9467
|
+
{
|
|
9468
|
+
"flags": "--harness <harness>",
|
|
9469
|
+
"description": "With --all: only this harness (claude-code, codex, ...)",
|
|
9470
|
+
"required": true,
|
|
9471
|
+
"valueHint": "harness"
|
|
9472
|
+
},
|
|
9473
|
+
{
|
|
9474
|
+
"flags": "--hook",
|
|
9475
|
+
"description": "Claude Code Stop-hook mode: read {session_id, transcript_path} JSON from stdin, print nothing, exit 0",
|
|
9476
|
+
"required": false,
|
|
9477
|
+
"valueHint": null
|
|
9478
|
+
}
|
|
9479
|
+
],
|
|
9480
|
+
"aliases": [],
|
|
9481
|
+
"category": "CLI"
|
|
9482
|
+
},
|
|
9483
|
+
{
|
|
9484
|
+
"id": "pan-vault-sync",
|
|
9485
|
+
"path": ["vault", "sync"],
|
|
9486
|
+
"display": "/pan vault sync",
|
|
9487
|
+
"description": "Settle owned transcripts that grew, register this machine and refresh the list",
|
|
9488
|
+
"args": [],
|
|
9489
|
+
"options": [],
|
|
9490
|
+
"aliases": [],
|
|
9491
|
+
"category": "CLI"
|
|
9492
|
+
},
|
|
9493
|
+
{
|
|
9494
|
+
"id": "pan-vault-list",
|
|
9495
|
+
"path": ["vault", "list"],
|
|
9496
|
+
"display": "/pan vault list",
|
|
9497
|
+
"description": "List saved conversations from the local cache (never contacts the backend)",
|
|
9498
|
+
"args": [],
|
|
9499
|
+
"options": [{
|
|
9500
|
+
"flags": "--json",
|
|
9501
|
+
"description": "Output in JSON format",
|
|
9502
|
+
"required": false,
|
|
9503
|
+
"valueHint": null
|
|
9504
|
+
}],
|
|
9505
|
+
"aliases": [],
|
|
9506
|
+
"category": "CLI"
|
|
9507
|
+
},
|
|
9508
|
+
{
|
|
9509
|
+
"id": "pan-vault-show",
|
|
9510
|
+
"path": ["vault", "show"],
|
|
9511
|
+
"display": "/pan vault show",
|
|
9512
|
+
"description": "Print a saved conversation read-only with its versions",
|
|
9513
|
+
"args": [{
|
|
9514
|
+
"name": "id",
|
|
9515
|
+
"required": true,
|
|
9516
|
+
"variadic": false
|
|
9517
|
+
}],
|
|
9518
|
+
"options": [{
|
|
9519
|
+
"flags": "--json",
|
|
9520
|
+
"description": "Output in JSON format",
|
|
9521
|
+
"required": false,
|
|
9522
|
+
"valueHint": null
|
|
9523
|
+
}],
|
|
9524
|
+
"aliases": [],
|
|
9525
|
+
"category": "CLI"
|
|
9526
|
+
},
|
|
9527
|
+
{
|
|
9528
|
+
"id": "pan-vault-resume",
|
|
9529
|
+
"path": ["vault", "resume"],
|
|
9530
|
+
"display": "/pan vault resume",
|
|
9531
|
+
"description": "Continue a saved conversation here: <id> or <id>@<version>; adopts it and launches the harness",
|
|
9532
|
+
"args": [{
|
|
9533
|
+
"name": "id",
|
|
9534
|
+
"required": true,
|
|
9535
|
+
"variadic": false
|
|
9536
|
+
}],
|
|
9537
|
+
"options": [
|
|
9538
|
+
{
|
|
9539
|
+
"flags": "--cwd <dir>",
|
|
9540
|
+
"description": "Working directory to resume in (default: the saved cwd)",
|
|
9541
|
+
"required": true,
|
|
9542
|
+
"valueHint": "dir"
|
|
9543
|
+
},
|
|
9544
|
+
{
|
|
9545
|
+
"flags": "--no-launch",
|
|
9546
|
+
"description": "Print the launch command instead of running it",
|
|
9547
|
+
"required": false,
|
|
9548
|
+
"valueHint": null
|
|
9549
|
+
},
|
|
9550
|
+
{
|
|
9551
|
+
"flags": "--on-drift <choice>",
|
|
9552
|
+
"description": "When the cwd state differs from the saved state: continue | note | cancel",
|
|
9553
|
+
"required": true,
|
|
9554
|
+
"valueHint": "choice"
|
|
9555
|
+
},
|
|
9556
|
+
{
|
|
9557
|
+
"flags": "--no-code",
|
|
9558
|
+
"description": "Do not apply the saved code snapshot; only continue the conversation",
|
|
9559
|
+
"required": false,
|
|
9560
|
+
"valueHint": null
|
|
9561
|
+
},
|
|
9562
|
+
{
|
|
9563
|
+
"flags": "--worktree <dir>",
|
|
9564
|
+
"description": "Apply the code snapshot into a new git worktree at <dir> instead of the target checkout",
|
|
9565
|
+
"required": true,
|
|
9566
|
+
"valueHint": "dir"
|
|
9567
|
+
}
|
|
9568
|
+
],
|
|
9569
|
+
"aliases": [],
|
|
9570
|
+
"category": "CLI"
|
|
9571
|
+
},
|
|
9572
|
+
{
|
|
9573
|
+
"id": "pan-vault-exclude",
|
|
9574
|
+
"path": ["vault", "exclude"],
|
|
9575
|
+
"display": "/pan vault exclude",
|
|
9576
|
+
"description": "Exclude conversations by cwd path, git origin or session id; an excluded saved record becomes a tombstone",
|
|
9577
|
+
"args": [{
|
|
9578
|
+
"name": "path",
|
|
9579
|
+
"required": false,
|
|
9580
|
+
"variadic": false
|
|
9581
|
+
}],
|
|
9582
|
+
"options": [{
|
|
9583
|
+
"flags": "--origin <url>",
|
|
9584
|
+
"description": "Exclude conversations whose git origin is this URL",
|
|
9585
|
+
"required": true,
|
|
9586
|
+
"valueHint": "url"
|
|
9587
|
+
}, {
|
|
9588
|
+
"flags": "--session <id>",
|
|
9589
|
+
"description": "Exclude one session by native session id or vault id",
|
|
9590
|
+
"required": true,
|
|
9591
|
+
"valueHint": "id"
|
|
9592
|
+
}],
|
|
9593
|
+
"aliases": [],
|
|
9594
|
+
"category": "CLI"
|
|
9595
|
+
},
|
|
9596
|
+
{
|
|
9597
|
+
"id": "pan-vault-include",
|
|
9598
|
+
"path": ["vault", "include"],
|
|
9599
|
+
"display": "/pan vault include",
|
|
9600
|
+
"description": "Remove an exclusion added with pan vault exclude",
|
|
9601
|
+
"args": [{
|
|
9602
|
+
"name": "path",
|
|
9603
|
+
"required": false,
|
|
9604
|
+
"variadic": false
|
|
9605
|
+
}],
|
|
9606
|
+
"options": [{
|
|
9607
|
+
"flags": "--origin <url>",
|
|
9608
|
+
"description": "Include conversations whose git origin is this URL again",
|
|
9609
|
+
"required": true,
|
|
9610
|
+
"valueHint": "url"
|
|
9611
|
+
}, {
|
|
9612
|
+
"flags": "--session <id>",
|
|
9613
|
+
"description": "Include one session again",
|
|
9614
|
+
"required": true,
|
|
9615
|
+
"valueHint": "id"
|
|
9616
|
+
}],
|
|
9617
|
+
"aliases": [],
|
|
9618
|
+
"category": "CLI"
|
|
9619
|
+
},
|
|
9620
|
+
{
|
|
9621
|
+
"id": "pan-vault-allow-secret",
|
|
9622
|
+
"path": ["vault", "allow-secret"],
|
|
9623
|
+
"display": "/pan vault allow-secret",
|
|
9624
|
+
"description": "Allow one blocked transcript line, or the blocked code lines of one file, for that record only",
|
|
9625
|
+
"args": [{
|
|
9626
|
+
"name": "id-or-path",
|
|
9627
|
+
"required": true,
|
|
9628
|
+
"variadic": false
|
|
9629
|
+
}, {
|
|
9630
|
+
"name": "line",
|
|
9631
|
+
"required": false,
|
|
9632
|
+
"variadic": false
|
|
9633
|
+
}],
|
|
9634
|
+
"options": [{
|
|
9635
|
+
"flags": "--file <path>",
|
|
9636
|
+
"description": "Allow the blocked lines of this file in the code snapshot (path relative to the repository root)",
|
|
9637
|
+
"required": true,
|
|
9638
|
+
"valueHint": "path"
|
|
9639
|
+
}],
|
|
9640
|
+
"aliases": [],
|
|
9641
|
+
"category": "CLI"
|
|
9642
|
+
},
|
|
9643
|
+
{
|
|
9644
|
+
"id": "pan-vault-evict",
|
|
9645
|
+
"path": ["vault", "evict"],
|
|
9646
|
+
"display": "/pan vault evict",
|
|
9647
|
+
"description": "Review the pending-deletion batch (default) or act on it; nothing is deleted without --confirm",
|
|
9648
|
+
"args": [],
|
|
9649
|
+
"options": [
|
|
9650
|
+
{
|
|
9651
|
+
"flags": "--review",
|
|
9652
|
+
"description": "Scan and print the batch with its fingerprint (default)",
|
|
9653
|
+
"required": false,
|
|
9654
|
+
"valueHint": null
|
|
9655
|
+
},
|
|
9656
|
+
{
|
|
9657
|
+
"flags": "--confirm <fingerprint>",
|
|
9658
|
+
"description": "Delete the reviewed files if the batch still matches this fingerprint",
|
|
9659
|
+
"required": true,
|
|
9660
|
+
"valueHint": "fingerprint"
|
|
9661
|
+
},
|
|
9662
|
+
{
|
|
9663
|
+
"flags": "--decline <vaultId>",
|
|
9664
|
+
"description": "Remove an entry from the batch and do not offer it again",
|
|
9665
|
+
"required": true,
|
|
9666
|
+
"valueHint": "vaultId"
|
|
9667
|
+
},
|
|
9668
|
+
{
|
|
9669
|
+
"flags": "--reoffer <vaultId>",
|
|
9670
|
+
"description": "Allow a declined entry to be offered again",
|
|
9671
|
+
"required": true,
|
|
9672
|
+
"valueHint": "vaultId"
|
|
9673
|
+
},
|
|
9674
|
+
{
|
|
9675
|
+
"flags": "--clear",
|
|
9676
|
+
"description": "Empty the batch without deleting or declining anything",
|
|
9677
|
+
"required": false,
|
|
9678
|
+
"valueHint": null
|
|
9679
|
+
}
|
|
9680
|
+
],
|
|
9681
|
+
"aliases": [],
|
|
9682
|
+
"category": "CLI"
|
|
9683
|
+
},
|
|
9684
|
+
{
|
|
9685
|
+
"id": "pan-vault-restore",
|
|
9686
|
+
"path": ["vault", "restore"],
|
|
9687
|
+
"display": "/pan vault restore",
|
|
9688
|
+
"description": "Rebuild an evicted transcript byte for byte at its original path",
|
|
9689
|
+
"args": [{
|
|
9690
|
+
"name": "id",
|
|
9691
|
+
"required": true,
|
|
9692
|
+
"variadic": false
|
|
9693
|
+
}],
|
|
9694
|
+
"options": [{
|
|
9695
|
+
"flags": "--to <path>",
|
|
9696
|
+
"description": "Write the rebuilt file here instead of the recorded path",
|
|
9697
|
+
"required": true,
|
|
9698
|
+
"valueHint": "path"
|
|
9699
|
+
}],
|
|
9700
|
+
"aliases": [],
|
|
9701
|
+
"category": "CLI"
|
|
9702
|
+
},
|
|
8994
9703
|
{
|
|
8995
9704
|
"id": "pan-test",
|
|
8996
9705
|
"path": ["test"],
|
|
@@ -12133,7 +12842,7 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
12133
12842
|
"id": "pan-spawn",
|
|
12134
12843
|
"path": ["spawn"],
|
|
12135
12844
|
"display": "/pan spawn",
|
|
12136
|
-
"description": "Create a worker pane for one xBRIEF item in
|
|
12845
|
+
"description": "Create a worker pane for one xBRIEF item in its own item worktree",
|
|
12137
12846
|
"args": [],
|
|
12138
12847
|
"options": [
|
|
12139
12848
|
{
|
|
@@ -12159,6 +12868,12 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
12159
12868
|
"description": "Coding-agent harness (default: claude-code)",
|
|
12160
12869
|
"required": true,
|
|
12161
12870
|
"valueHint": "harness"
|
|
12871
|
+
},
|
|
12872
|
+
{
|
|
12873
|
+
"flags": "--shared",
|
|
12874
|
+
"description": "Run the worker in the issue workspace instead of an item worktree (foreman/operator only; serial use)",
|
|
12875
|
+
"required": false,
|
|
12876
|
+
"valueHint": null
|
|
12162
12877
|
}
|
|
12163
12878
|
],
|
|
12164
12879
|
"aliases": [],
|
|
@@ -12545,6 +13260,12 @@ const COMPOSER_COMMAND_MANIFEST = [
|
|
|
12545
13260
|
"required": false,
|
|
12546
13261
|
"valueHint": null
|
|
12547
13262
|
},
|
|
13263
|
+
{
|
|
13264
|
+
"flags": "--force",
|
|
13265
|
+
"description": "Launch even while the host is CPU-saturated",
|
|
13266
|
+
"required": false,
|
|
13267
|
+
"valueHint": null
|
|
13268
|
+
},
|
|
12548
13269
|
{
|
|
12549
13270
|
"flags": "--no-wait",
|
|
12550
13271
|
"description": "Return without waiting for the lane to start",
|
|
@@ -14627,6 +15348,47 @@ function laneActivityOf(row, now) {
|
|
|
14627
15348
|
return "stopped";
|
|
14628
15349
|
}
|
|
14629
15350
|
//#endregion
|
|
15351
|
+
//#region src/environment.ts
|
|
15352
|
+
/** Wire protocol version a client and server must agree on. */
|
|
15353
|
+
const ENVIRONMENT_PROTOCOL_VERSION = 1;
|
|
15354
|
+
const EnvironmentId = effect.Schema.String.pipe(effect.Schema.brand("EnvironmentId"));
|
|
15355
|
+
const EnvironmentCapabilities = effect.Schema.Struct({
|
|
15356
|
+
/** `POST /api/pairing/*` is available. */
|
|
15357
|
+
pairing: effect.Schema.Boolean,
|
|
15358
|
+
/** `GET/DELETE /api/devices` is available. */
|
|
15359
|
+
deviceSessions: effect.Schema.Boolean,
|
|
15360
|
+
/** `/ws/*` upgrades require a credential (PAN-1166). */
|
|
15361
|
+
terminalAuth: effect.Schema.Boolean
|
|
15362
|
+
});
|
|
15363
|
+
const EnvironmentDescriptor = effect.Schema.Struct({
|
|
15364
|
+
descriptorVersion: effect.Schema.Literal(1),
|
|
15365
|
+
environmentId: EnvironmentId,
|
|
15366
|
+
label: effect.Schema.String,
|
|
15367
|
+
platform: effect.Schema.Struct({
|
|
15368
|
+
os: effect.Schema.String,
|
|
15369
|
+
arch: effect.Schema.String
|
|
15370
|
+
}),
|
|
15371
|
+
/** Exact package version of the serving Overdeck. */
|
|
15372
|
+
serverVersion: effect.Schema.String,
|
|
15373
|
+
/** The server's `ENVIRONMENT_PROTOCOL_VERSION`. */
|
|
15374
|
+
protocolVersion: effect.Schema.Number,
|
|
15375
|
+
capabilities: EnvironmentCapabilities
|
|
15376
|
+
});
|
|
15377
|
+
/** A server-local id qualified by the environment that owns it. */
|
|
15378
|
+
const ScopedRef = (localId) => effect.Schema.Struct({
|
|
15379
|
+
environmentId: EnvironmentId,
|
|
15380
|
+
localId
|
|
15381
|
+
});
|
|
15382
|
+
const ScopedProjectRef = ScopedRef(effect.Schema.String);
|
|
15383
|
+
const ScopedIssueRef = ScopedRef(effect.Schema.String);
|
|
15384
|
+
const ScopedAgentRef = ScopedRef(effect.Schema.String);
|
|
15385
|
+
const ScopedConversationRef = ScopedRef(effect.Schema.String);
|
|
15386
|
+
const ScopedTerminalRef = ScopedRef(effect.Schema.String);
|
|
15387
|
+
/** True only when the server speaks exactly the client's protocol version. */
|
|
15388
|
+
function isProtocolCompatible(descriptor, clientProtocolVersion) {
|
|
15389
|
+
return descriptor.protocolVersion === clientProtocolVersion;
|
|
15390
|
+
}
|
|
15391
|
+
//#endregion
|
|
14630
15392
|
exports.ACP_BEHAVIOR = ACP_BEHAVIOR;
|
|
14631
15393
|
exports.AGENT_ROLES = AGENT_ROLES;
|
|
14632
15394
|
exports.Activity = Activity;
|
|
@@ -14750,6 +15512,7 @@ exports.DeployStalenessSnapshot = DeployStalenessSnapshot;
|
|
|
14750
15512
|
exports.DerivedBranchState = DerivedBranchState;
|
|
14751
15513
|
exports.DerivedIssueState = DerivedIssueState;
|
|
14752
15514
|
exports.DerivedPrState = DerivedPrState;
|
|
15515
|
+
exports.DerivedWorkStart = DerivedWorkStart;
|
|
14753
15516
|
exports.DirectoryEntry = DirectoryEntry;
|
|
14754
15517
|
exports.DirectoryEntryKind = DirectoryEntryKind;
|
|
14755
15518
|
exports.DirectoryEntryLocation = DirectoryEntryLocation;
|
|
@@ -14764,6 +15527,7 @@ exports.DiscoveredSessionSnapshot = DiscoveredSessionSnapshot;
|
|
|
14764
15527
|
exports.DomainEvent = DomainEvent;
|
|
14765
15528
|
exports.EDITORS = EDITORS;
|
|
14766
15529
|
exports.EFFORT_LEVELS = EFFORT_LEVELS;
|
|
15530
|
+
exports.ENVIRONMENT_PROTOCOL_VERSION = ENVIRONMENT_PROTOCOL_VERSION;
|
|
14767
15531
|
exports.EditorIdSchema = EditorIdSchema;
|
|
14768
15532
|
exports.EffortLevelSchema = EffortLevelSchema;
|
|
14769
15533
|
exports.EmbedProgressEvent = EmbedProgressEvent;
|
|
@@ -14774,6 +15538,9 @@ exports.EnrichProgressEvent = EnrichProgressEvent;
|
|
|
14774
15538
|
exports.EnrichProgressSnapshot = EnrichProgressSnapshot;
|
|
14775
15539
|
exports.EnrichSessionsRpc = EnrichSessionsRpc;
|
|
14776
15540
|
exports.EnrichStatsSnapshot = EnrichStatsSnapshot;
|
|
15541
|
+
exports.EnvironmentCapabilities = EnvironmentCapabilities;
|
|
15542
|
+
exports.EnvironmentDescriptor = EnvironmentDescriptor;
|
|
15543
|
+
exports.EnvironmentId = EnvironmentId;
|
|
14777
15544
|
exports.ExtractionProviderConfig = ExtractionProviderConfig;
|
|
14778
15545
|
exports.ExtractionProviderTarget = ExtractionProviderTarget;
|
|
14779
15546
|
exports.FeatureNode = FeatureNode;
|
|
@@ -14984,6 +15751,12 @@ exports.ScanProgressEvent = ScanProgressEvent;
|
|
|
14984
15751
|
exports.ScanProgressSnapshot = ScanProgressSnapshot;
|
|
14985
15752
|
exports.ScanResult = ScanResult;
|
|
14986
15753
|
exports.ScanStartedEvent = ScanStartedEvent;
|
|
15754
|
+
exports.ScopedAgentRef = ScopedAgentRef;
|
|
15755
|
+
exports.ScopedConversationRef = ScopedConversationRef;
|
|
15756
|
+
exports.ScopedIssueRef = ScopedIssueRef;
|
|
15757
|
+
exports.ScopedProjectRef = ScopedProjectRef;
|
|
15758
|
+
exports.ScopedRef = ScopedRef;
|
|
15759
|
+
exports.ScopedTerminalRef = ScopedTerminalRef;
|
|
14987
15760
|
exports.SearchConversationsRpc = SearchConversationsRpc;
|
|
14988
15761
|
exports.SendTerminalInputRpc = SendTerminalInputRpc;
|
|
14989
15762
|
exports.SequenceNumber = SequenceNumber;
|
|
@@ -15036,6 +15809,7 @@ exports.TickMarker = TickMarker;
|
|
|
15036
15809
|
exports.TickMarkerPhase = TickMarkerPhase;
|
|
15037
15810
|
exports.TurnDiffFileChange = TurnDiffFileChange;
|
|
15038
15811
|
exports.TurnDiffSummary = TurnDiffSummary;
|
|
15812
|
+
exports.TurnEndAssessment = TurnEndAssessment;
|
|
15039
15813
|
exports.WIRED_HOOK_INVENTORY = WIRED_HOOK_INVENTORY;
|
|
15040
15814
|
exports.WIRED_HOOK_NAMES = WIRED_HOOK_NAMES;
|
|
15041
15815
|
exports.WS_METHODS = WS_METHODS;
|
|
@@ -15081,6 +15855,7 @@ exports.isConfiguredPullRequestRepo = isConfiguredPullRequestRepo;
|
|
|
15081
15855
|
exports.isEffortLevel = isEffortLevel;
|
|
15082
15856
|
exports.isIssueAttention = isIssueAttention;
|
|
15083
15857
|
exports.isIssueState = isIssueState;
|
|
15858
|
+
exports.isProtocolCompatible = isProtocolCompatible;
|
|
15084
15859
|
exports.isSingletonConversation = isSingletonConversation;
|
|
15085
15860
|
exports.isTerminalBackendName = isTerminalBackendName;
|
|
15086
15861
|
exports.isTerminalTurnDiffSummaryStatus = isTerminalTurnDiffSummaryStatus;
|