@schoolai/shipyard-mcp 0.2.2 → 0.3.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/apps/hook/dist/{index.js → index.cjs} +716 -58
- package/apps/server/dist/{chunk-BWP37ADP.js → chunk-GDVRDX7Z.js} +54 -7
- package/apps/server/dist/{chunk-76JWRTPI.js → chunk-I7UCM5RO.js} +486 -45
- package/apps/server/dist/{dist-ORKL4P3L.js → dist-QXOKL75H.js} +37 -1
- package/apps/server/dist/index.js +1428 -402
- package/apps/server/dist/{input-request-manager-73GSTOIB.js → input-request-manager-IF6M76G4.js} +2 -2
- package/package.json +3 -3
- package/apps/server/dist/chunk-E5DWX2WU.js +0 -180
- package/apps/server/dist/server-identity-6PHKR2FY.js +0 -12
|
@@ -2,8 +2,9 @@ import {
|
|
|
2
2
|
InputRequestSchema,
|
|
3
3
|
YDOC_KEYS,
|
|
4
4
|
createInputRequest,
|
|
5
|
+
createMultiQuestionInputRequest,
|
|
5
6
|
logPlanEvent
|
|
6
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-I7UCM5RO.js";
|
|
7
8
|
import {
|
|
8
9
|
logger
|
|
9
10
|
} from "./chunk-GSGLHRWX.js";
|
|
@@ -36,11 +37,21 @@ var InputRequestManager = class {
|
|
|
36
37
|
ydoc.transact(() => {
|
|
37
38
|
const requestsArray = ydoc.getArray(YDOC_KEYS.INPUT_REQUESTS);
|
|
38
39
|
requestsArray.push([request]);
|
|
39
|
-
logPlanEvent(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
logPlanEvent(
|
|
41
|
+
ydoc,
|
|
42
|
+
"input_request_created",
|
|
43
|
+
"Agent",
|
|
44
|
+
{
|
|
45
|
+
requestId: request.id,
|
|
46
|
+
requestType: request.type,
|
|
47
|
+
requestMessage: request.message,
|
|
48
|
+
isBlocker: request.isBlocker
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
inboxWorthy: true,
|
|
52
|
+
inboxFor: "owner"
|
|
53
|
+
}
|
|
54
|
+
);
|
|
44
55
|
});
|
|
45
56
|
logger.info(
|
|
46
57
|
{ requestId: request.id, type: request.type, timeout: request.timeout },
|
|
@@ -48,6 +59,41 @@ var InputRequestManager = class {
|
|
|
48
59
|
);
|
|
49
60
|
return request.id;
|
|
50
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Create a new multi-question input request in the Y.Doc.
|
|
64
|
+
* Request is added to the INPUT_REQUESTS array and becomes visible in browser UI.
|
|
65
|
+
*
|
|
66
|
+
* @param ydoc - The Y.Doc to add the request to
|
|
67
|
+
* @param params - Request parameters (questions array, timeout, planId)
|
|
68
|
+
* @returns The generated request ID
|
|
69
|
+
*/
|
|
70
|
+
createMultiQuestionRequest(ydoc, params) {
|
|
71
|
+
const request = createMultiQuestionInputRequest(params);
|
|
72
|
+
ydoc.transact(() => {
|
|
73
|
+
const requestsArray = ydoc.getArray(YDOC_KEYS.INPUT_REQUESTS);
|
|
74
|
+
requestsArray.push([request]);
|
|
75
|
+
logPlanEvent(
|
|
76
|
+
ydoc,
|
|
77
|
+
"input_request_created",
|
|
78
|
+
"Agent",
|
|
79
|
+
{
|
|
80
|
+
requestId: request.id,
|
|
81
|
+
requestType: "multi",
|
|
82
|
+
questionCount: request.questions.length,
|
|
83
|
+
isBlocker: request.isBlocker
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
inboxWorthy: true,
|
|
87
|
+
inboxFor: "owner"
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
});
|
|
91
|
+
logger.info(
|
|
92
|
+
{ requestId: request.id, questionCount: request.questions.length, timeout: request.timeout },
|
|
93
|
+
"Created multi-question input request in Y.Doc"
|
|
94
|
+
);
|
|
95
|
+
return request.id;
|
|
96
|
+
}
|
|
51
97
|
/**
|
|
52
98
|
* Wait for a user to respond to an input request.
|
|
53
99
|
* Blocks until the request is answered, cancelled, or times out.
|
|
@@ -115,9 +161,10 @@ var InputRequestManager = class {
|
|
|
115
161
|
logger.info({ requestId, answeredBy: request2.answeredBy }, "Input request answered");
|
|
116
162
|
resolved = true;
|
|
117
163
|
cleanup();
|
|
164
|
+
const responseValue = request2.type === "multi" ? request2.responses : request2.response;
|
|
118
165
|
resolve({
|
|
119
166
|
success: true,
|
|
120
|
-
response:
|
|
167
|
+
response: responseValue,
|
|
121
168
|
status: "answered",
|
|
122
169
|
answeredBy: request2.answeredBy ?? "unknown",
|
|
123
170
|
answeredAt: request2.answeredAt ?? Date.now()
|