@h-rig/contracts 0.0.6-alpha.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/README.md +14 -0
- package/dist/src/artifact.js +53 -0
- package/dist/src/baseSchemas.js +66 -0
- package/dist/src/config.js +214 -0
- package/dist/src/conversation.js +95 -0
- package/dist/src/editor.js +55 -0
- package/dist/src/engine.js +2278 -0
- package/dist/src/git.js +193 -0
- package/dist/src/graph.js +93 -0
- package/dist/src/index.js +4545 -0
- package/dist/src/ipc.js +1 -0
- package/dist/src/keybindings.js +119 -0
- package/dist/src/model.js +64 -0
- package/dist/src/orchestration.js +1031 -0
- package/dist/src/plugin.js +102 -0
- package/dist/src/policy.js +56 -0
- package/dist/src/project.js +107 -0
- package/dist/src/provider.js +1013 -0
- package/dist/src/providerRuntime.js +1630 -0
- package/dist/src/remote.js +1474 -0
- package/dist/src/review.js +58 -0
- package/dist/src/rig.js +2374 -0
- package/dist/src/runtime.js +1043 -0
- package/dist/src/server.js +1053 -0
- package/dist/src/serviceFabric.js +1066 -0
- package/dist/src/task-source.js +1 -0
- package/dist/src/terminal.js +158 -0
- package/dist/src/validation.js +60 -0
- package/dist/src/workspace.js +1030 -0
- package/dist/src/ws.js +2968 -0
- package/package.json +28 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
// @bun
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
// packages/contracts/src/terminal.ts
|
|
3
|
+
import { Schema as Schema2 } from "effect";
|
|
4
|
+
|
|
5
|
+
// packages/contracts/src/baseSchemas.ts
|
|
6
|
+
import { Schema } from "effect";
|
|
7
|
+
var TrimmedString = Schema.Trim;
|
|
8
|
+
var TrimmedNonEmptyString = TrimmedString.check(Schema.isNonEmpty());
|
|
9
|
+
var NonNegativeInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(0));
|
|
10
|
+
var PositiveInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(1));
|
|
11
|
+
var IsoDateTime = Schema.String;
|
|
12
|
+
var makeEntityId = (brand) => TrimmedNonEmptyString.pipe(Schema.brand(brand));
|
|
13
|
+
var ThreadId = makeEntityId("ThreadId");
|
|
14
|
+
var ProjectId = makeEntityId("ProjectId");
|
|
15
|
+
var WorkspaceId = makeEntityId("WorkspaceId");
|
|
16
|
+
var GraphId = makeEntityId("GraphId");
|
|
17
|
+
var TaskId = makeEntityId("TaskId");
|
|
18
|
+
var RunId = makeEntityId("RunId");
|
|
19
|
+
var EngineRuntimeId = makeEntityId("EngineRuntimeId");
|
|
20
|
+
var ConversationId = makeEntityId("ConversationId");
|
|
21
|
+
var ActionId = makeEntityId("ActionId");
|
|
22
|
+
var ArtifactId = makeEntityId("ArtifactId");
|
|
23
|
+
var WorktreeId = makeEntityId("WorktreeId");
|
|
24
|
+
var ValidationResultId = makeEntityId("ValidationResultId");
|
|
25
|
+
var ReviewResultId = makeEntityId("ReviewResultId");
|
|
26
|
+
var CommandId = makeEntityId("CommandId");
|
|
27
|
+
var EventId = makeEntityId("EventId");
|
|
28
|
+
var MessageId = makeEntityId("MessageId");
|
|
29
|
+
var TurnId = makeEntityId("TurnId");
|
|
30
|
+
var ProviderItemId = makeEntityId("ProviderItemId");
|
|
31
|
+
var RuntimeSessionId = makeEntityId("RuntimeSessionId");
|
|
32
|
+
var RuntimeItemId = makeEntityId("RuntimeItemId");
|
|
33
|
+
var RuntimeRequestId = makeEntityId("RuntimeRequestId");
|
|
34
|
+
var RuntimeTaskId = makeEntityId("RuntimeTaskId");
|
|
35
|
+
var ApprovalRequestId = makeEntityId("ApprovalRequestId");
|
|
36
|
+
var CheckpointRef = makeEntityId("CheckpointRef");
|
|
37
|
+
var RemoteEndpointId = makeEntityId("RemoteEndpointId");
|
|
38
|
+
|
|
39
|
+
// packages/contracts/src/terminal.ts
|
|
40
|
+
var DEFAULT_TERMINAL_ID = "default";
|
|
41
|
+
var TrimmedNonEmptyStringSchema = TrimmedNonEmptyString;
|
|
42
|
+
var TerminalColsSchema = Schema2.Int.check(Schema2.isGreaterThanOrEqualTo(20)).check(Schema2.isLessThanOrEqualTo(400));
|
|
43
|
+
var TerminalRowsSchema = Schema2.Int.check(Schema2.isGreaterThanOrEqualTo(5)).check(Schema2.isLessThanOrEqualTo(200));
|
|
44
|
+
var TerminalIdSchema = TrimmedNonEmptyStringSchema.check(Schema2.isMaxLength(128));
|
|
45
|
+
var TerminalEnvKeySchema = Schema2.String.check(Schema2.isPattern(/^[A-Za-z_][A-Za-z0-9_]*$/)).check(Schema2.isMaxLength(128));
|
|
46
|
+
var TerminalEnvValueSchema = Schema2.String.check(Schema2.isMaxLength(8192));
|
|
47
|
+
var TerminalEnvSchema = Schema2.Record(TerminalEnvKeySchema, TerminalEnvValueSchema).check(Schema2.isMaxProperties(128));
|
|
48
|
+
var TerminalIdWithDefaultSchema = TerminalIdSchema.pipe(Schema2.withDecodingDefault(() => DEFAULT_TERMINAL_ID));
|
|
49
|
+
var TerminalThreadInput = Schema2.Struct({
|
|
50
|
+
threadId: TrimmedNonEmptyStringSchema
|
|
51
|
+
});
|
|
52
|
+
var TerminalSessionInput = Schema2.Struct({
|
|
53
|
+
...TerminalThreadInput.fields,
|
|
54
|
+
terminalId: TerminalIdWithDefaultSchema
|
|
55
|
+
});
|
|
56
|
+
var TerminalOpenInput = Schema2.Struct({
|
|
57
|
+
...TerminalSessionInput.fields,
|
|
58
|
+
cwd: TrimmedNonEmptyStringSchema,
|
|
59
|
+
cols: Schema2.optional(TerminalColsSchema),
|
|
60
|
+
rows: Schema2.optional(TerminalRowsSchema),
|
|
61
|
+
env: Schema2.optional(TerminalEnvSchema)
|
|
62
|
+
});
|
|
63
|
+
var TerminalWriteInput = Schema2.Struct({
|
|
64
|
+
...TerminalSessionInput.fields,
|
|
65
|
+
data: Schema2.String.check(Schema2.isNonEmpty()).check(Schema2.isMaxLength(65536))
|
|
66
|
+
});
|
|
67
|
+
var TerminalResizeInput = Schema2.Struct({
|
|
68
|
+
...TerminalSessionInput.fields,
|
|
69
|
+
cols: TerminalColsSchema,
|
|
70
|
+
rows: TerminalRowsSchema
|
|
71
|
+
});
|
|
72
|
+
var TerminalClearInput = TerminalSessionInput;
|
|
73
|
+
var TerminalRestartInput = Schema2.Struct({
|
|
74
|
+
...TerminalThreadInput.fields,
|
|
75
|
+
cwd: TrimmedNonEmptyStringSchema,
|
|
76
|
+
cols: TerminalColsSchema,
|
|
77
|
+
rows: TerminalRowsSchema,
|
|
78
|
+
env: Schema2.optional(TerminalEnvSchema)
|
|
79
|
+
});
|
|
80
|
+
var TerminalCloseInput = Schema2.Struct({
|
|
81
|
+
...TerminalThreadInput.fields,
|
|
82
|
+
terminalId: Schema2.optional(TerminalIdSchema),
|
|
83
|
+
deleteHistory: Schema2.optional(Schema2.Boolean)
|
|
84
|
+
});
|
|
85
|
+
var TerminalSessionStatus = Schema2.Literals(["starting", "running", "exited", "error"]);
|
|
86
|
+
var TerminalSessionSnapshot = Schema2.Struct({
|
|
87
|
+
threadId: Schema2.String.check(Schema2.isNonEmpty()),
|
|
88
|
+
terminalId: Schema2.String.check(Schema2.isNonEmpty()),
|
|
89
|
+
cwd: Schema2.String.check(Schema2.isNonEmpty()),
|
|
90
|
+
status: TerminalSessionStatus,
|
|
91
|
+
pid: Schema2.NullOr(Schema2.Int.check(Schema2.isGreaterThan(0))),
|
|
92
|
+
history: Schema2.String,
|
|
93
|
+
exitCode: Schema2.NullOr(Schema2.Int),
|
|
94
|
+
exitSignal: Schema2.NullOr(Schema2.String),
|
|
95
|
+
updatedAt: Schema2.String
|
|
96
|
+
});
|
|
97
|
+
var TerminalEventBaseSchema = Schema2.Struct({
|
|
98
|
+
threadId: Schema2.String.check(Schema2.isNonEmpty()),
|
|
99
|
+
terminalId: Schema2.String.check(Schema2.isNonEmpty()),
|
|
100
|
+
createdAt: Schema2.String
|
|
101
|
+
});
|
|
102
|
+
var TerminalStartedEvent = Schema2.Struct({
|
|
103
|
+
...TerminalEventBaseSchema.fields,
|
|
104
|
+
type: Schema2.Literal("started"),
|
|
105
|
+
snapshot: TerminalSessionSnapshot
|
|
106
|
+
});
|
|
107
|
+
var TerminalOutputEvent = Schema2.Struct({
|
|
108
|
+
...TerminalEventBaseSchema.fields,
|
|
109
|
+
type: Schema2.Literal("output"),
|
|
110
|
+
data: Schema2.String
|
|
111
|
+
});
|
|
112
|
+
var TerminalExitedEvent = Schema2.Struct({
|
|
113
|
+
...TerminalEventBaseSchema.fields,
|
|
114
|
+
type: Schema2.Literal("exited"),
|
|
115
|
+
exitCode: Schema2.NullOr(Schema2.Int),
|
|
116
|
+
exitSignal: Schema2.NullOr(Schema2.String)
|
|
117
|
+
});
|
|
118
|
+
var TerminalErrorEvent = Schema2.Struct({
|
|
119
|
+
...TerminalEventBaseSchema.fields,
|
|
120
|
+
type: Schema2.Literal("error"),
|
|
121
|
+
message: Schema2.String.check(Schema2.isNonEmpty())
|
|
122
|
+
});
|
|
123
|
+
var TerminalClearedEvent = Schema2.Struct({
|
|
124
|
+
...TerminalEventBaseSchema.fields,
|
|
125
|
+
type: Schema2.Literal("cleared")
|
|
126
|
+
});
|
|
127
|
+
var TerminalRestartedEvent = Schema2.Struct({
|
|
128
|
+
...TerminalEventBaseSchema.fields,
|
|
129
|
+
type: Schema2.Literal("restarted"),
|
|
130
|
+
snapshot: TerminalSessionSnapshot
|
|
131
|
+
});
|
|
132
|
+
var TerminalActivityEvent = Schema2.Struct({
|
|
133
|
+
...TerminalEventBaseSchema.fields,
|
|
134
|
+
type: Schema2.Literal("activity"),
|
|
135
|
+
hasRunningSubprocess: Schema2.Boolean
|
|
136
|
+
});
|
|
137
|
+
var TerminalEvent = Schema2.Union([
|
|
138
|
+
TerminalStartedEvent,
|
|
139
|
+
TerminalOutputEvent,
|
|
140
|
+
TerminalExitedEvent,
|
|
141
|
+
TerminalErrorEvent,
|
|
142
|
+
TerminalClearedEvent,
|
|
143
|
+
TerminalRestartedEvent,
|
|
144
|
+
TerminalActivityEvent
|
|
145
|
+
]);
|
|
146
|
+
export {
|
|
147
|
+
TerminalWriteInput,
|
|
148
|
+
TerminalThreadInput,
|
|
149
|
+
TerminalSessionStatus,
|
|
150
|
+
TerminalSessionSnapshot,
|
|
151
|
+
TerminalRestartInput,
|
|
152
|
+
TerminalResizeInput,
|
|
153
|
+
TerminalOpenInput,
|
|
154
|
+
TerminalEvent,
|
|
155
|
+
TerminalCloseInput,
|
|
156
|
+
TerminalClearInput,
|
|
157
|
+
DEFAULT_TERMINAL_ID
|
|
158
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
// packages/contracts/src/validation.ts
|
|
3
|
+
import { Schema as Schema2 } from "effect";
|
|
4
|
+
|
|
5
|
+
// packages/contracts/src/baseSchemas.ts
|
|
6
|
+
import { Schema } from "effect";
|
|
7
|
+
var TrimmedString = Schema.Trim;
|
|
8
|
+
var TrimmedNonEmptyString = TrimmedString.check(Schema.isNonEmpty());
|
|
9
|
+
var NonNegativeInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(0));
|
|
10
|
+
var PositiveInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(1));
|
|
11
|
+
var IsoDateTime = Schema.String;
|
|
12
|
+
var makeEntityId = (brand) => TrimmedNonEmptyString.pipe(Schema.brand(brand));
|
|
13
|
+
var ThreadId = makeEntityId("ThreadId");
|
|
14
|
+
var ProjectId = makeEntityId("ProjectId");
|
|
15
|
+
var WorkspaceId = makeEntityId("WorkspaceId");
|
|
16
|
+
var GraphId = makeEntityId("GraphId");
|
|
17
|
+
var TaskId = makeEntityId("TaskId");
|
|
18
|
+
var RunId = makeEntityId("RunId");
|
|
19
|
+
var EngineRuntimeId = makeEntityId("EngineRuntimeId");
|
|
20
|
+
var ConversationId = makeEntityId("ConversationId");
|
|
21
|
+
var ActionId = makeEntityId("ActionId");
|
|
22
|
+
var ArtifactId = makeEntityId("ArtifactId");
|
|
23
|
+
var WorktreeId = makeEntityId("WorktreeId");
|
|
24
|
+
var ValidationResultId = makeEntityId("ValidationResultId");
|
|
25
|
+
var ReviewResultId = makeEntityId("ReviewResultId");
|
|
26
|
+
var CommandId = makeEntityId("CommandId");
|
|
27
|
+
var EventId = makeEntityId("EventId");
|
|
28
|
+
var MessageId = makeEntityId("MessageId");
|
|
29
|
+
var TurnId = makeEntityId("TurnId");
|
|
30
|
+
var ProviderItemId = makeEntityId("ProviderItemId");
|
|
31
|
+
var RuntimeSessionId = makeEntityId("RuntimeSessionId");
|
|
32
|
+
var RuntimeItemId = makeEntityId("RuntimeItemId");
|
|
33
|
+
var RuntimeRequestId = makeEntityId("RuntimeRequestId");
|
|
34
|
+
var RuntimeTaskId = makeEntityId("RuntimeTaskId");
|
|
35
|
+
var ApprovalRequestId = makeEntityId("ApprovalRequestId");
|
|
36
|
+
var CheckpointRef = makeEntityId("CheckpointRef");
|
|
37
|
+
var RemoteEndpointId = makeEntityId("RemoteEndpointId");
|
|
38
|
+
|
|
39
|
+
// packages/contracts/src/validation.ts
|
|
40
|
+
var ValidationStatus = Schema2.Literals([
|
|
41
|
+
"pending",
|
|
42
|
+
"running",
|
|
43
|
+
"passed",
|
|
44
|
+
"failed",
|
|
45
|
+
"skipped"
|
|
46
|
+
]);
|
|
47
|
+
var ValidationSummary = Schema2.Struct({
|
|
48
|
+
id: ValidationResultId,
|
|
49
|
+
runId: RunId,
|
|
50
|
+
taskId: Schema2.NullOr(TaskId),
|
|
51
|
+
validatorKey: TrimmedNonEmptyString,
|
|
52
|
+
status: ValidationStatus,
|
|
53
|
+
output: Schema2.Unknown,
|
|
54
|
+
startedAt: IsoDateTime,
|
|
55
|
+
completedAt: Schema2.NullOr(IsoDateTime)
|
|
56
|
+
});
|
|
57
|
+
export {
|
|
58
|
+
ValidationSummary,
|
|
59
|
+
ValidationStatus
|
|
60
|
+
};
|