@h-rig/contracts 0.0.6-alpha.15 → 0.0.6-alpha.151

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 (92) hide show
  1. package/dist/index.cjs +7456 -0
  2. package/dist/index.mjs +7415 -0
  3. package/dist/src/artifact.d.ts +13 -0
  4. package/dist/src/artifact.js +3 -0
  5. package/dist/src/baseSchemas.d.ts +63 -0
  6. package/dist/src/baseSchemas.js +6 -0
  7. package/dist/src/cli-output.d.ts +324 -0
  8. package/dist/src/cli-output.js +190 -0
  9. package/dist/src/config.d.ts +536 -0
  10. package/dist/src/config.js +1592 -162
  11. package/dist/src/conversation.d.ts +50 -0
  12. package/dist/src/conversation.js +3 -0
  13. package/dist/src/drift.d.ts +28 -0
  14. package/dist/src/drift.js +69 -0
  15. package/dist/src/editor.d.ts +25 -0
  16. package/dist/src/editor.js +3 -0
  17. package/dist/src/engine.d.ts +2789 -0
  18. package/dist/src/engine.js +127 -13
  19. package/dist/src/git.d.ts +144 -0
  20. package/dist/src/git.js +3 -0
  21. package/dist/src/graph.d.ts +323 -0
  22. package/dist/src/graph.js +124 -1
  23. package/dist/src/help-catalog.d.ts +34 -0
  24. package/dist/src/help-catalog.js +655 -0
  25. package/dist/src/index.d.ts +46 -0
  26. package/dist/src/index.js +4095 -1228
  27. package/dist/src/ipc.d.ts +248 -0
  28. package/dist/src/kernel.d.ts +221 -0
  29. package/dist/src/kernel.js +269 -0
  30. package/dist/src/keybindings.d.ts +71 -0
  31. package/dist/src/keybindings.js +3 -0
  32. package/dist/src/model.d.ts +77 -0
  33. package/dist/src/orchestration.d.ts +3695 -0
  34. package/dist/src/orchestration.js +3 -0
  35. package/dist/src/pi-session.d.ts +113 -0
  36. package/dist/src/pi-session.js +1 -0
  37. package/dist/src/planning.d.ts +64 -0
  38. package/dist/src/planning.js +90 -0
  39. package/dist/src/plugin-hooks.d.ts +51 -0
  40. package/dist/src/plugin-hooks.js +375 -0
  41. package/dist/src/plugin.d.ts +416 -0
  42. package/dist/src/plugin.js +332 -64
  43. package/dist/src/policy.d.ts +16 -0
  44. package/dist/src/policy.js +3 -0
  45. package/dist/src/project.d.ts +71 -0
  46. package/dist/src/project.js +3 -0
  47. package/dist/src/protocol-version.d.ts +21 -0
  48. package/dist/src/protocol-version.js +6 -0
  49. package/dist/src/provider.d.ts +105 -0
  50. package/dist/src/provider.js +3 -0
  51. package/dist/src/providerRuntime.d.ts +3949 -0
  52. package/dist/src/providerRuntime.js +3 -0
  53. package/dist/src/remote.d.ts +326 -0
  54. package/dist/src/remote.js +16 -10
  55. package/dist/src/review.d.ts +18 -0
  56. package/dist/src/review.js +3 -0
  57. package/dist/src/rig.d.ts +783 -0
  58. package/dist/src/rig.js +178 -15
  59. package/dist/src/rollups.d.ts +41 -0
  60. package/dist/src/rollups.js +70 -0
  61. package/dist/src/run-journal.d.ts +930 -0
  62. package/dist/src/run-journal.js +1641 -0
  63. package/dist/src/run-record.d.ts +45 -0
  64. package/dist/src/run-record.js +1 -0
  65. package/dist/src/run-session-journal.d.ts +93 -0
  66. package/dist/src/run-session-journal.js +1809 -0
  67. package/dist/src/run-status.d.ts +12 -0
  68. package/dist/src/run-status.js +38 -0
  69. package/dist/src/run-timeline.d.ts +10 -0
  70. package/dist/src/run-timeline.js +1499 -0
  71. package/dist/src/runtime.d.ts +103 -0
  72. package/dist/src/runtime.js +9 -4
  73. package/dist/src/server.d.ts +106 -0
  74. package/dist/src/server.js +3 -0
  75. package/dist/src/serviceFabric.d.ts +62 -0
  76. package/dist/src/serviceFabric.js +5 -2
  77. package/dist/src/stage.d.ts +245 -0
  78. package/dist/src/stage.js +169 -0
  79. package/dist/src/supervisor-journal.d.ts +205 -0
  80. package/dist/src/supervisor-journal.js +1246 -0
  81. package/dist/src/task-source.d.ts +37 -0
  82. package/dist/src/terminal.d.ts +130 -0
  83. package/dist/src/terminal.js +3 -0
  84. package/dist/src/validation.d.ts +14 -0
  85. package/dist/src/validation.js +3 -0
  86. package/dist/src/workflow-journal.d.ts +124 -0
  87. package/dist/src/workflow-journal.js +389 -0
  88. package/dist/src/workspace.d.ts +204 -0
  89. package/dist/src/workspace.js +5 -2
  90. package/dist/src/ws.d.ts +747 -0
  91. package/dist/src/ws.js +172 -14
  92. package/package.json +51 -4
@@ -16,6 +16,9 @@ var WorkspaceId = makeEntityId("WorkspaceId");
16
16
  var GraphId = makeEntityId("GraphId");
17
17
  var TaskId = makeEntityId("TaskId");
18
18
  var RunId = makeEntityId("RunId");
19
+ var SafePathSegment = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafePathSegment"));
20
+ var SafeRunId = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/)).pipe(Schema.brand("SafeRunId"));
21
+ var SafeGitRefComponent = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafeGitRefComponent"));
19
22
  var EngineRuntimeId = makeEntityId("EngineRuntimeId");
20
23
  var ConversationId = makeEntityId("ConversationId");
21
24
  var ActionId = makeEntityId("ActionId");
@@ -136,6 +139,114 @@ var QueueEntry = Schema3.Struct({
136
139
  unblockCount: NonNegativeInt,
137
140
  position: NonNegativeInt
138
141
  });
142
+ var DependencyEdgeType = Schema3.Literals(["blocks", "parent-child", "related"]);
143
+ var DependencyEdge = Schema3.Struct({
144
+ fromTaskId: TaskId,
145
+ toTaskId: TaskId,
146
+ type: DependencyEdgeType
147
+ });
148
+ var BlockerClass = Schema3.Literals([
149
+ "not-blocked",
150
+ "task-blocked",
151
+ "human-decision",
152
+ "human-approval",
153
+ "external-input",
154
+ "unknown"
155
+ ]);
156
+ var ActionRiskTier = Schema3.Literals(["t1-read", "t2-reversible", "t3-external", "t4-irreversible"]);
157
+ var BlockerClassification = Schema3.Struct({
158
+ taskId: TaskId,
159
+ blockerClass: BlockerClass,
160
+ actionRiskTier: Schema3.NullOr(ActionRiskTier),
161
+ rationale: Schema3.String,
162
+ source: Schema3.Literals(["elimination", "label", "status", "llm"]),
163
+ autoApplied: Schema3.Boolean
164
+ });
165
+ var DependencyNode = Schema3.Struct({
166
+ taskId: TaskId,
167
+ title: TrimmedNonEmptyString,
168
+ status: TaskStatus,
169
+ priority: Schema3.NullOr(PositiveInt),
170
+ assignee: Schema3.NullOr(TrimmedNonEmptyString),
171
+ blockedBy: Schema3.Array(TaskId),
172
+ blocks: Schema3.Array(TaskId),
173
+ blockingDepth: NonNegativeInt,
174
+ blockerClass: Schema3.NullOr(BlockerClass),
175
+ actionRiskTier: Schema3.NullOr(ActionRiskTier),
176
+ epicKey: Schema3.NullOr(TrimmedNonEmptyString),
177
+ groupKey: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
178
+ externalId: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
179
+ sourceIssueId: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
180
+ scope: Schema3.optional(Schema3.Array(TrimmedNonEmptyString)),
181
+ validationKeys: Schema3.optional(Schema3.Array(TrimmedNonEmptyString))
182
+ });
183
+ var TaskGraphLane = Schema3.Struct({
184
+ key: TrimmedNonEmptyString,
185
+ label: TrimmedNonEmptyString,
186
+ rowIndex: NonNegativeInt,
187
+ x: Schema3.Number,
188
+ y: Schema3.Number,
189
+ width: NonNegativeInt,
190
+ height: NonNegativeInt,
191
+ color: Schema3.String,
192
+ taskCount: NonNegativeInt
193
+ });
194
+ var TaskGraphStage = Schema3.Struct({
195
+ index: NonNegativeInt,
196
+ label: TrimmedNonEmptyString,
197
+ x: Schema3.Number,
198
+ width: NonNegativeInt
199
+ });
200
+ var TaskGraphNode = Schema3.Struct({
201
+ id: TrimmedNonEmptyString,
202
+ taskId: TaskId,
203
+ task: Schema3.optional(TaskSummary),
204
+ rowKey: TrimmedNonEmptyString,
205
+ rowLabel: TrimmedNonEmptyString,
206
+ rowIndex: NonNegativeInt,
207
+ stage: NonNegativeInt,
208
+ x: Schema3.Number,
209
+ y: Schema3.Number,
210
+ width: NonNegativeInt,
211
+ height: NonNegativeInt,
212
+ color: Schema3.optional(Schema3.String),
213
+ taskCode: Schema3.optional(Schema3.NullOr(Schema3.String)),
214
+ strippedTitle: Schema3.optional(Schema3.String),
215
+ depsIn: Schema3.optional(NonNegativeInt),
216
+ depsOut: Schema3.optional(NonNegativeInt),
217
+ runCount: Schema3.optional(NonNegativeInt),
218
+ hasApprovals: Schema3.optional(Schema3.Boolean),
219
+ hasPendingUserInput: Schema3.optional(Schema3.Boolean),
220
+ hasRejectedReview: Schema3.optional(Schema3.Boolean),
221
+ hasFailedValidations: Schema3.optional(Schema3.Boolean),
222
+ artifactCount: Schema3.optional(NonNegativeInt)
223
+ });
224
+ var TaskGraphEdge = Schema3.Struct({
225
+ id: TrimmedNonEmptyString,
226
+ sourceId: TrimmedNonEmptyString,
227
+ targetId: TrimmedNonEmptyString,
228
+ color: Schema3.String,
229
+ kind: Schema3.Literals(["blocking", "parent-child"])
230
+ });
231
+ var TaskGraphLayout = Schema3.Struct({
232
+ lanes: Schema3.Array(TaskGraphLane),
233
+ stages: Schema3.Array(TaskGraphStage),
234
+ nodes: Schema3.Array(TaskGraphNode),
235
+ edges: Schema3.Array(TaskGraphEdge),
236
+ totalWidth: NonNegativeInt,
237
+ totalHeight: NonNegativeInt,
238
+ taskCount: NonNegativeInt
239
+ });
240
+ var DependencyGraphModel = Schema3.Struct({
241
+ graphId: GraphId,
242
+ nodes: Schema3.Array(DependencyNode),
243
+ edges: Schema3.Array(DependencyEdge),
244
+ layout: TaskGraphLayout,
245
+ cycles: Schema3.Array(Schema3.Array(TaskId)),
246
+ unresolvedRefs: Schema3.Array(TrimmedNonEmptyString),
247
+ degraded: Schema3.Boolean,
248
+ generatedAt: IsoDateTime
249
+ });
139
250
 
140
251
  // packages/contracts/src/policy.ts
141
252
  import { Schema as Schema4 } from "effect";
@@ -1069,12 +1180,14 @@ var RunStatus = Schema9.Literals([
1069
1180
  "running",
1070
1181
  "waiting-approval",
1071
1182
  "waiting-user-input",
1183
+ "paused",
1072
1184
  "validating",
1073
1185
  "reviewing",
1186
+ "closing-out",
1187
+ "needs-attention",
1074
1188
  "completed",
1075
1189
  "failed",
1076
- "cancelled",
1077
- "paused"
1190
+ "stopped"
1078
1191
  ]);
1079
1192
  var EngineSandboxMode = Schema9.Literals([
1080
1193
  "read-only",
@@ -1102,7 +1215,7 @@ var RunSummary = Schema9.Struct({
1102
1215
  runtimeMode: RuntimeMode,
1103
1216
  interactionMode: ProviderInteractionMode,
1104
1217
  status: RunStatus,
1105
- runtimeAdapter: TrimmedNonEmptyString,
1218
+ runtimeAdapter: Schema9.Literal("pi"),
1106
1219
  model: Schema9.NullOr(TrimmedNonEmptyString),
1107
1220
  initialPrompt: Schema9.NullOr(Schema9.String),
1108
1221
  executionTarget: Schema9.optional(RunExecutionTarget),
@@ -1125,7 +1238,7 @@ var RuntimeSummary = Schema9.Struct({
1125
1238
  id: EngineRuntimeId,
1126
1239
  workspaceId: WorkspaceId,
1127
1240
  runId: RunId,
1128
- adapterKind: TrimmedNonEmptyString,
1241
+ adapterKind: Schema9.Literal("pi"),
1129
1242
  executionTarget: Schema9.optional(RunExecutionTarget),
1130
1243
  remoteHostId: Schema9.optional(Schema9.NullOr(TrimmedNonEmptyString)),
1131
1244
  status: RuntimeStatus,
@@ -1252,7 +1365,7 @@ var WorkspaceRemoteHostSummary = Schema11.Struct({
1252
1365
  region: Schema11.NullOr(TrimmedNonEmptyString),
1253
1366
  labels: Schema11.Array(TrimmedNonEmptyString),
1254
1367
  capabilities: Schema11.Array(TrimmedNonEmptyString),
1255
- runtimeAdapters: Schema11.Array(TrimmedNonEmptyString),
1368
+ runtimeAdapters: Schema11.Array(Schema11.Literal("pi")),
1256
1369
  status: WorkspaceRemoteHostStatus,
1257
1370
  currentLeaseCount: Schema11.Number,
1258
1371
  lastHeartbeatAt: Schema11.NullOr(IsoDateTime),
@@ -1293,7 +1406,7 @@ var WorkspaceSummary = Schema11.Struct({
1293
1406
  title: TrimmedNonEmptyString,
1294
1407
  rootPath: TrimmedNonEmptyString,
1295
1408
  sourceKind: WorkspaceSourceKind,
1296
- defaultRuntimeAdapter: Schema11.optional(TrimmedNonEmptyString),
1409
+ defaultRuntimeAdapter: Schema11.optional(Schema11.Literal("pi")),
1297
1410
  defaultProvider: Schema11.optional(ProviderKind),
1298
1411
  defaultModel: Schema11.NullOr(TrimmedNonEmptyString),
1299
1412
  topology: Schema11.optional(WorkspaceTopologySummary),
@@ -1304,6 +1417,7 @@ var WorkspaceSummary = Schema11.Struct({
1304
1417
  });
1305
1418
 
1306
1419
  // packages/contracts/src/remote.ts
1420
+ var RemoteRuntimeAdapter = Schema12.Literal("pi");
1307
1421
  var RemoteEndpoint = Schema12.Struct({
1308
1422
  id: RemoteEndpointId,
1309
1423
  alias: TrimmedNonEmptyString,
@@ -1388,7 +1502,7 @@ var RemoteRunnerRegisterInput = Schema12.Struct({
1388
1502
  region: Schema12.optional(TrimmedNonEmptyString),
1389
1503
  labels: Schema12.optional(Schema12.Array(TrimmedNonEmptyString)),
1390
1504
  capabilities: Schema12.optional(Schema12.Array(TrimmedNonEmptyString)),
1391
- runtimeAdapters: Schema12.optional(Schema12.Array(TrimmedNonEmptyString)),
1505
+ runtimeAdapters: Schema12.optional(Schema12.Array(RemoteRuntimeAdapter)),
1392
1506
  status: Schema12.optional(WorkspaceRemoteHostStatus),
1393
1507
  currentLeaseCount: Schema12.optional(Schema12.Number)
1394
1508
  });
@@ -1409,14 +1523,14 @@ var RemoteRunnerLifecycleResult = Schema12.Struct({
1409
1523
  var RemoteRunClaimInput = Schema12.Struct({
1410
1524
  workspaceId: WorkspaceId,
1411
1525
  hostId: TrimmedNonEmptyString,
1412
- runtimeAdapters: Schema12.optional(Schema12.Array(TrimmedNonEmptyString))
1526
+ runtimeAdapters: Schema12.optional(Schema12.Array(RemoteRuntimeAdapter))
1413
1527
  });
1414
1528
  var RemoteRunLeaseSummary = Schema12.Struct({
1415
1529
  leaseId: TrimmedNonEmptyString,
1416
1530
  runId: TrimmedNonEmptyString,
1417
1531
  workspaceId: WorkspaceId,
1418
1532
  title: TrimmedNonEmptyString,
1419
- runtimeAdapter: TrimmedNonEmptyString,
1533
+ runtimeAdapter: RemoteRuntimeAdapter,
1420
1534
  model: Schema12.NullOr(TrimmedNonEmptyString),
1421
1535
  runtimeMode: RuntimeMode,
1422
1536
  interactionMode: ProviderInteractionMode,
@@ -1434,7 +1548,7 @@ var RemoteRunExecutionBundle = Schema12.Struct({
1434
1548
  runId: TrimmedNonEmptyString,
1435
1549
  leaseId: TrimmedNonEmptyString,
1436
1550
  workspacePath: Schema12.NullOr(TrimmedNonEmptyString),
1437
- runtimeAdapter: TrimmedNonEmptyString,
1551
+ runtimeAdapter: RemoteRuntimeAdapter,
1438
1552
  model: Schema12.NullOr(TrimmedNonEmptyString),
1439
1553
  runtimeMode: RuntimeMode,
1440
1554
  interactionMode: ProviderInteractionMode,
@@ -1595,7 +1709,7 @@ var EngineReadModel = Schema13.Struct({
1595
1709
  remoteOrchestrations: Schema13.Array(RemoteOrchestrationSummary),
1596
1710
  updatedAt: IsoDateTime
1597
1711
  });
1598
- var RuntimeAdapterKind = Schema13.Literals(["codex", "claude-code", "pi"]);
1712
+ var RuntimeAdapterKind = Schema13.Literal("pi");
1599
1713
  var WorkspaceRegisterCommand = Schema13.Struct({
1600
1714
  type: Schema13.Literal("workspace.register"),
1601
1715
  commandId: CommandId,
@@ -1788,7 +1902,7 @@ var WorkspaceRegisterRemoteHostCommand = Schema13.Struct({
1788
1902
  region: Schema13.NullOr(TrimmedNonEmptyString),
1789
1903
  labels: Schema13.Array(TrimmedNonEmptyString),
1790
1904
  capabilities: Schema13.Array(TrimmedNonEmptyString),
1791
- runtimeAdapters: Schema13.Array(TrimmedNonEmptyString),
1905
+ runtimeAdapters: Schema13.Array(RuntimeAdapterKind),
1792
1906
  status: Schema13.Literals([
1793
1907
  "registering",
1794
1908
  "ready",
@@ -2201,7 +2315,7 @@ var EngineRpcSchemas = {
2201
2315
  }
2202
2316
  };
2203
2317
  var EngineRuntimeDefaults = Schema13.Struct({
2204
- runtimeAdapter: TrimmedNonEmptyString,
2318
+ runtimeAdapter: RuntimeAdapterKind,
2205
2319
  runMode: RunMode,
2206
2320
  sandboxMode: EngineSandboxMode,
2207
2321
  isolationMode: IsolationMode
@@ -0,0 +1,144 @@
1
+ import { Schema } from "effect";
2
+ export declare const GitStackedAction: Schema.Literals<readonly ["commit", "commit_push", "commit_push_pr"]>;
3
+ export type GitStackedAction = typeof GitStackedAction.Type;
4
+ export declare const GitBranch: Schema.Struct<{
5
+ readonly name: Schema.Trim;
6
+ readonly isRemote: Schema.optional<Schema.Boolean>;
7
+ readonly remoteName: Schema.optional<Schema.Trim>;
8
+ readonly current: Schema.Boolean;
9
+ readonly isDefault: Schema.Boolean;
10
+ readonly worktreePath: Schema.NullOr<Schema.Trim>;
11
+ }>;
12
+ export type GitBranch = typeof GitBranch.Type;
13
+ export declare const GitStatusInput: Schema.Struct<{
14
+ readonly cwd: Schema.Trim;
15
+ }>;
16
+ export type GitStatusInput = typeof GitStatusInput.Type;
17
+ export declare const GitPullInput: Schema.Struct<{
18
+ readonly cwd: Schema.Trim;
19
+ }>;
20
+ export type GitPullInput = typeof GitPullInput.Type;
21
+ export declare const GitReadWorkingTreePatchInput: Schema.Struct<{
22
+ readonly cwd: Schema.Trim;
23
+ readonly relativePath: Schema.optional<Schema.Trim>;
24
+ }>;
25
+ export type GitReadWorkingTreePatchInput = typeof GitReadWorkingTreePatchInput.Type;
26
+ export declare const GitRunStackedActionInput: Schema.Struct<{
27
+ readonly cwd: Schema.Trim;
28
+ readonly action: Schema.Literals<readonly ["commit", "commit_push", "commit_push_pr"]>;
29
+ readonly commitMessage: Schema.optional<Schema.Trim>;
30
+ readonly featureBranch: Schema.optional<Schema.Boolean>;
31
+ }>;
32
+ export type GitRunStackedActionInput = typeof GitRunStackedActionInput.Type;
33
+ export declare const GitListBranchesInput: Schema.Struct<{
34
+ readonly cwd: Schema.Trim;
35
+ }>;
36
+ export type GitListBranchesInput = typeof GitListBranchesInput.Type;
37
+ export declare const GitCreateWorktreeInput: Schema.Struct<{
38
+ readonly cwd: Schema.Trim;
39
+ readonly branch: Schema.Trim;
40
+ readonly newBranch: Schema.Trim;
41
+ readonly path: Schema.NullOr<Schema.Trim>;
42
+ }>;
43
+ export type GitCreateWorktreeInput = typeof GitCreateWorktreeInput.Type;
44
+ export declare const GitRemoveWorktreeInput: Schema.Struct<{
45
+ readonly cwd: Schema.Trim;
46
+ readonly path: Schema.Trim;
47
+ readonly force: Schema.optional<Schema.Boolean>;
48
+ }>;
49
+ export type GitRemoveWorktreeInput = typeof GitRemoveWorktreeInput.Type;
50
+ export declare const GitCreateBranchInput: Schema.Struct<{
51
+ readonly cwd: Schema.Trim;
52
+ readonly branch: Schema.Trim;
53
+ }>;
54
+ export type GitCreateBranchInput = typeof GitCreateBranchInput.Type;
55
+ export declare const GitCheckoutInput: Schema.Struct<{
56
+ readonly cwd: Schema.Trim;
57
+ readonly branch: Schema.Trim;
58
+ }>;
59
+ export type GitCheckoutInput = typeof GitCheckoutInput.Type;
60
+ export declare const GitInitInput: Schema.Struct<{
61
+ readonly cwd: Schema.Trim;
62
+ }>;
63
+ export type GitInitInput = typeof GitInitInput.Type;
64
+ export declare const GitStatusResult: Schema.Struct<{
65
+ readonly branch: Schema.NullOr<Schema.Trim>;
66
+ readonly hasWorkingTreeChanges: Schema.Boolean;
67
+ readonly workingTree: Schema.Struct<{
68
+ readonly files: Schema.$Array<Schema.Struct<{
69
+ readonly path: Schema.Trim;
70
+ readonly insertions: Schema.Int;
71
+ readonly deletions: Schema.Int;
72
+ }>>;
73
+ readonly insertions: Schema.Int;
74
+ readonly deletions: Schema.Int;
75
+ }>;
76
+ readonly hasUpstream: Schema.Boolean;
77
+ readonly aheadCount: Schema.Int;
78
+ readonly behindCount: Schema.Int;
79
+ readonly pr: Schema.NullOr<Schema.Struct<{
80
+ readonly number: Schema.Int;
81
+ readonly title: Schema.Trim;
82
+ readonly url: Schema.String;
83
+ readonly baseBranch: Schema.Trim;
84
+ readonly headBranch: Schema.Trim;
85
+ readonly state: Schema.Literals<readonly ["open", "closed", "merged"]>;
86
+ }>>;
87
+ }>;
88
+ export type GitStatusResult = typeof GitStatusResult.Type;
89
+ export declare const GitListBranchesResult: Schema.Struct<{
90
+ readonly branches: Schema.$Array<Schema.Struct<{
91
+ readonly name: Schema.Trim;
92
+ readonly isRemote: Schema.optional<Schema.Boolean>;
93
+ readonly remoteName: Schema.optional<Schema.Trim>;
94
+ readonly current: Schema.Boolean;
95
+ readonly isDefault: Schema.Boolean;
96
+ readonly worktreePath: Schema.NullOr<Schema.Trim>;
97
+ }>>;
98
+ readonly isRepo: Schema.Boolean;
99
+ }>;
100
+ export type GitListBranchesResult = typeof GitListBranchesResult.Type;
101
+ export declare const GitCreateWorktreeResult: Schema.Struct<{
102
+ readonly worktree: Schema.Struct<{
103
+ readonly path: Schema.Trim;
104
+ readonly branch: Schema.Trim;
105
+ }>;
106
+ }>;
107
+ export type GitCreateWorktreeResult = typeof GitCreateWorktreeResult.Type;
108
+ export declare const GitRunStackedActionResult: Schema.Struct<{
109
+ readonly action: Schema.Literals<readonly ["commit", "commit_push", "commit_push_pr"]>;
110
+ readonly branch: Schema.Struct<{
111
+ readonly status: Schema.Literals<readonly ["created", "skipped_not_requested"]>;
112
+ readonly name: Schema.optional<Schema.Trim>;
113
+ }>;
114
+ readonly commit: Schema.Struct<{
115
+ readonly status: Schema.Literals<readonly ["created", "skipped_no_changes"]>;
116
+ readonly commitSha: Schema.optional<Schema.Trim>;
117
+ readonly subject: Schema.optional<Schema.Trim>;
118
+ }>;
119
+ readonly push: Schema.Struct<{
120
+ readonly status: Schema.Literals<readonly ["pushed", "skipped_not_requested", "skipped_up_to_date"]>;
121
+ readonly branch: Schema.optional<Schema.Trim>;
122
+ readonly upstreamBranch: Schema.optional<Schema.Trim>;
123
+ readonly setUpstream: Schema.optional<Schema.Boolean>;
124
+ }>;
125
+ readonly pr: Schema.Struct<{
126
+ readonly status: Schema.Literals<readonly ["created", "opened_existing", "skipped_not_requested"]>;
127
+ readonly url: Schema.optional<Schema.String>;
128
+ readonly number: Schema.optional<Schema.Int>;
129
+ readonly baseBranch: Schema.optional<Schema.Trim>;
130
+ readonly headBranch: Schema.optional<Schema.Trim>;
131
+ readonly title: Schema.optional<Schema.Trim>;
132
+ }>;
133
+ }>;
134
+ export type GitRunStackedActionResult = typeof GitRunStackedActionResult.Type;
135
+ export declare const GitPullResult: Schema.Struct<{
136
+ readonly status: Schema.Literals<readonly ["pulled", "skipped_up_to_date"]>;
137
+ readonly branch: Schema.Trim;
138
+ readonly upstreamBranch: Schema.NullOr<Schema.Trim>;
139
+ }>;
140
+ export type GitPullResult = typeof GitPullResult.Type;
141
+ export declare const GitReadWorkingTreePatchResult: Schema.Struct<{
142
+ readonly diff: Schema.String;
143
+ }>;
144
+ export type GitReadWorkingTreePatchResult = typeof GitReadWorkingTreePatchResult.Type;
package/dist/src/git.js CHANGED
@@ -16,6 +16,9 @@ var WorkspaceId = makeEntityId("WorkspaceId");
16
16
  var GraphId = makeEntityId("GraphId");
17
17
  var TaskId = makeEntityId("TaskId");
18
18
  var RunId = makeEntityId("RunId");
19
+ var SafePathSegment = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafePathSegment"));
20
+ var SafeRunId = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/)).pipe(Schema.brand("SafeRunId"));
21
+ var SafeGitRefComponent = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafeGitRefComponent"));
19
22
  var EngineRuntimeId = makeEntityId("EngineRuntimeId");
20
23
  var ConversationId = makeEntityId("ConversationId");
21
24
  var ActionId = makeEntityId("ActionId");