arcagent-mcp 0.1.8 → 0.1.10
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/lib/types.d.ts +7 -0
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tools/checkWorkerStatus.d.ts.map +1 -1
- package/dist/tools/checkWorkerStatus.js +14 -0
- package/dist/tools/checkWorkerStatus.js.map +1 -1
- package/dist/tools/claimBounty.js +1 -1
- package/dist/tools/claimBounty.js.map +1 -1
- package/dist/tools/getSubmissionFeedback.d.ts.map +1 -1
- package/dist/tools/getSubmissionFeedback.js +15 -0
- package/dist/tools/getSubmissionFeedback.js.map +1 -1
- package/dist/tools/getVerificationStatus.d.ts.map +1 -1
- package/dist/tools/getVerificationStatus.js +25 -0
- package/dist/tools/getVerificationStatus.js.map +1 -1
- package/dist/tools/submitSolution.d.ts.map +1 -1
- package/dist/tools/submitSolution.js +8 -0
- package/dist/tools/submitSolution.js.map +1 -1
- package/dist/tools/testBounty.d.ts.map +1 -1
- package/dist/tools/testBounty.js +7 -1
- package/dist/tools/testBounty.js.map +1 -1
- package/dist/tools/workspaceExec.d.ts.map +1 -1
- package/dist/tools/workspaceExec.js +8 -0
- package/dist/tools/workspaceExec.js.map +1 -1
- package/dist/tools/workspaceShell.d.ts.map +1 -1
- package/dist/tools/workspaceShell.js +8 -0
- package/dist/tools/workspaceShell.js.map +1 -1
- package/dist/tools/workspaceStartupLog.d.ts.map +1 -1
- package/dist/tools/workspaceStartupLog.js +27 -10
- package/dist/tools/workspaceStartupLog.js.map +1 -1
- package/dist/tools/workspaceStatus.d.ts.map +1 -1
- package/dist/tools/workspaceStatus.js +44 -6
- package/dist/tools/workspaceStatus.js.map +1 -1
- package/dist/worker/client.d.ts +5 -0
- package/dist/worker/client.d.ts.map +1 -1
- package/dist/worker/client.js +13 -1
- package/dist/worker/client.js.map +1 -1
- package/dist/workspace/cache.d.ts.map +1 -1
- package/dist/workspace/cache.js +4 -1
- package/dist/workspace/cache.js.map +1 -1
- package/dist/workspace/workerErrors.d.ts +3 -0
- package/dist/workspace/workerErrors.d.ts.map +1 -0
- package/dist/workspace/workerErrors.js +25 -0
- package/dist/workspace/workerErrors.js.map +1 -0
- package/package.json +1 -1
package/dist/lib/types.d.ts
CHANGED
|
@@ -84,6 +84,12 @@ export interface VerificationStep {
|
|
|
84
84
|
export interface AgentVerificationStep extends VerificationStep {
|
|
85
85
|
visibility: "public" | "hidden";
|
|
86
86
|
}
|
|
87
|
+
export interface HiddenFailureMechanism {
|
|
88
|
+
key: string;
|
|
89
|
+
label: string;
|
|
90
|
+
count: number;
|
|
91
|
+
guidance: string;
|
|
92
|
+
}
|
|
87
93
|
/** Agent-facing verification status — all scenarios visible with verbose output. */
|
|
88
94
|
export interface ConvexAgentVerification {
|
|
89
95
|
_id: string;
|
|
@@ -102,6 +108,7 @@ export interface ConvexAgentVerification {
|
|
|
102
108
|
failed: number;
|
|
103
109
|
skipped: number;
|
|
104
110
|
};
|
|
111
|
+
hiddenFailureMechanisms?: HiddenFailureMechanism[];
|
|
105
112
|
feedbackJson?: string;
|
|
106
113
|
job: {
|
|
107
114
|
status: string;
|
package/dist/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAC;KACjC,CAAC,CAAC;IACH,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAC;CACjC;AAED,oFAAoF;AACpF,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE;QACH,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;CACV;AAED,qFAAqF;AACrF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,GAAG,EAAE;QACH,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;CACV"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAC;KACjC,CAAC,CAAC;IACH,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,oFAAoF;AACpF,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,uBAAuB,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE;QACH,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;CACV;AAED,qFAAqF;AACrF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,GAAG,EAAE;QACH,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;CACV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkWorkerStatus.d.ts","sourceRoot":"","sources":["../../src/tools/checkWorkerStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"checkWorkerStatus.d.ts","sourceRoot":"","sources":["../../src/tools/checkWorkerStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwHjE"}
|
|
@@ -71,9 +71,23 @@ function registerCheckWorkerStatus(server) {
|
|
|
71
71
|
const checksText = checks.length > 0
|
|
72
72
|
? checks.map(([key, value]) => `- ${key}: ${value}`).join("\n")
|
|
73
73
|
: "- checks unavailable";
|
|
74
|
+
const backend = body?.checks?.executionBackend ?? "unknown";
|
|
75
|
+
const backendPolicy = body?.checks?.executionBackendPolicy ?? "unknown";
|
|
76
|
+
const firecrackerLocked = body?.checks?.firecrackerLocked ?? "unknown";
|
|
77
|
+
const kvmDevice = body?.checks?.kvmDevice ?? "unknown";
|
|
78
|
+
const vhostVsockDevice = body?.checks?.vhostVsockDevice ?? "unknown";
|
|
79
|
+
const jailerUid = body?.checks?.jailerUid ?? "unknown";
|
|
80
|
+
const jailerRootfsRead = body?.checks?.jailerCanReadEncryptedRootfsSample ?? "unknown";
|
|
74
81
|
const text = `Worker health for ${baseUrl}\n` +
|
|
75
82
|
`- HTTP status: ${response.status}\n` +
|
|
76
83
|
`- Health status: ${healthStatus}\n` +
|
|
84
|
+
`- Execution backend: ${backend}\n` +
|
|
85
|
+
`- Backend policy: ${backendPolicy}\n` +
|
|
86
|
+
`- Firecracker locked: ${firecrackerLocked}\n` +
|
|
87
|
+
`- /dev/kvm: ${kvmDevice}\n` +
|
|
88
|
+
`- /dev/vhost-vsock: ${vhostVsockDevice}\n` +
|
|
89
|
+
`- Jailer UID: ${jailerUid}\n` +
|
|
90
|
+
`- Jailer encrypted rootfs readability: ${jailerRootfsRead}\n` +
|
|
77
91
|
(body?.timestamp ? `- Timestamp: ${body.timestamp}\n` : "") +
|
|
78
92
|
"\nChecks:\n" +
|
|
79
93
|
checksText;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkWorkerStatus.js","sourceRoot":"","sources":["../../src/tools/checkWorkerStatus.ts"],"names":[],"mappings":";;AAQA,
|
|
1
|
+
{"version":3,"file":"checkWorkerStatus.js","sourceRoot":"","sources":["../../src/tools/checkWorkerStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ function registerClaimBounty(server) {
|
|
|
41
41
|
text += `**Bounty:** ${bounty.title}\n`;
|
|
42
42
|
text += `**Expires:** ${bounty.claimDurationHours} hours from now\n\n`;
|
|
43
43
|
text += `## Development Workspace\n\n`;
|
|
44
|
-
text += `A Firecracker microVM
|
|
44
|
+
text += `A Firecracker microVM execution environment is being provisioned by the shared worker with the repository pre-cloned.\n`;
|
|
45
45
|
text += `Use \`workspace_status\` to check when it's ready (~30-90 seconds).\n\n`;
|
|
46
46
|
text += `## Available Tools\n\n`;
|
|
47
47
|
text += `- \`workspace_exec\` — Run shell commands (build, test, install packages)\n`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claimBounty.js","sourceRoot":"","sources":["../../src/tools/claimBounty.ts"],"names":[],"mappings":";;AAQA,kDA2EC;AAlFD,6BAAwB;AACxB,6CAA8C;AAE9C,kDAAiD;AACjD,4CAA2D;AAC3D,8CAA8D;AAE9D,SAAgB,mBAAmB,CAAC,MAAiB;IACnD,IAAA,yBAAY,EACV,MAAM,EACN,cAAc,EACd,+NAA+N,EAC/N;QACE,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACxD,EACD,KAAK,EAAE,IAA0B,EAAE,EAAE;QACnC,+BAA+B;QAC/B,IAAA,sBAAY,EAAC,gBAAgB,CAAC,CAAC;QAC/B,oEAAoE;QACpE,MAAM,QAAQ,GAAG,IAAA,qBAAW,GAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;gBACpG,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAU,EAElC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEzD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAEnC,IAAI,WAGH,CAAC;QACF,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,IAAA,mBAAU,EAI5B,wBAAwB,EACxB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CACrC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;YAC9E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,2BAA2B,OAAO,EAAE,EAAE,CAAC;gBAChF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;QAChC,IAAA,gCAAwB,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,IAAI,GAAG,mCAAmC,CAAC;QAC/C,IAAI,IAAI,iBAAiB,OAAO,IAAI,CAAC;QACrC,IAAI,IAAI,eAAe,MAAM,CAAC,KAAK,IAAI,CAAC;QACxC,IAAI,IAAI,gBAAgB,MAAM,CAAC,kBAAkB,qBAAqB,CAAC;QAEvE,IAAI,IAAI,8BAA8B,CAAC;QACvC,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"claimBounty.js","sourceRoot":"","sources":["../../src/tools/claimBounty.ts"],"names":[],"mappings":";;AAQA,kDA2EC;AAlFD,6BAAwB;AACxB,6CAA8C;AAE9C,kDAAiD;AACjD,4CAA2D;AAC3D,8CAA8D;AAE9D,SAAgB,mBAAmB,CAAC,MAAiB;IACnD,IAAA,yBAAY,EACV,MAAM,EACN,cAAc,EACd,+NAA+N,EAC/N;QACE,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACxD,EACD,KAAK,EAAE,IAA0B,EAAE,EAAE;QACnC,+BAA+B;QAC/B,IAAA,sBAAY,EAAC,gBAAgB,CAAC,CAAC;QAC/B,oEAAoE;QACpE,MAAM,QAAQ,GAAG,IAAA,qBAAW,GAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;gBACpG,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAU,EAElC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEzD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAEnC,IAAI,WAGH,CAAC;QACF,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,IAAA,mBAAU,EAI5B,wBAAwB,EACxB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CACrC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;YAC9E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,2BAA2B,OAAO,EAAE,EAAE,CAAC;gBAChF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;QAChC,IAAA,gCAAwB,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,IAAI,GAAG,mCAAmC,CAAC;QAC/C,IAAI,IAAI,iBAAiB,OAAO,IAAI,CAAC;QACrC,IAAI,IAAI,eAAe,MAAM,CAAC,KAAK,IAAI,CAAC;QACxC,IAAI,IAAI,gBAAgB,MAAM,CAAC,kBAAkB,qBAAqB,CAAC;QAEvE,IAAI,IAAI,8BAA8B,CAAC;QACvC,IAAI,IAAI,yHAAyH,CAAC;QAClI,IAAI,IAAI,yEAAyE,CAAC;QAElF,IAAI,IAAI,wBAAwB,CAAC;QACjC,IAAI,IAAI,6EAA6E,CAAC;QACtF,IAAI,IAAI,iGAAiG,CAAC;QAC1G,IAAI,IAAI,yDAAyD,CAAC;QAClE,IAAI,IAAI,8EAA8E,CAAC;QACvF,IAAI,IAAI,2DAA2D,CAAC;QACpE,IAAI,IAAI,kEAAkE,CAAC;QAC3E,IAAI,IAAI,+EAA+E,CAAC;QACxF,IAAI,IAAI,qEAAqE,CAAC;QAC9E,IAAI,IAAI,kEAAkE,CAAC;QAE3E,IAAI,IAAI,8FAA8F,CAAC;QACvG,IAAI,IAAI,4FAA4F,CAAC;QAErG,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACxD,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSubmissionFeedback.d.ts","sourceRoot":"","sources":["../../src/tools/getSubmissionFeedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"getSubmissionFeedback.d.ts","sourceRoot":"","sources":["../../src/tools/getSubmissionFeedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkBpE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA8GrE"}
|
|
@@ -69,6 +69,21 @@ function registerGetSubmissionFeedback(server) {
|
|
|
69
69
|
text += `${i + 1}. ${safeItems[i]}\n`;
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
|
+
const hiddenMechanisms = Array.isArray(feedback.hiddenFailureMechanisms) &&
|
|
73
|
+
feedback.hiddenFailureMechanisms.length > 0
|
|
74
|
+
? feedback.hiddenFailureMechanisms
|
|
75
|
+
: (Array.isArray(result.hiddenFailureMechanisms) ? result.hiddenFailureMechanisms : []);
|
|
76
|
+
if (hiddenMechanisms.length > 0) {
|
|
77
|
+
text += `\n## Hidden Failure Mechanisms (safe summary)\n\n`;
|
|
78
|
+
for (const mechanism of hiddenMechanisms.slice(0, 10)) {
|
|
79
|
+
const label = typeof mechanism?.label === "string" ? mechanism.label : "Unknown edge case";
|
|
80
|
+
const count = typeof mechanism?.count === "number" ? mechanism.count : "?";
|
|
81
|
+
const guidance = typeof mechanism?.guidance === "string"
|
|
82
|
+
? mechanism.guidance
|
|
83
|
+
: "Harden boundary conditions and error handling.";
|
|
84
|
+
text += `- **${label}** (${count}): ${guidance}\n`;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
72
87
|
return { content: [{ type: "text", text }] };
|
|
73
88
|
}
|
|
74
89
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSubmissionFeedback.js","sourceRoot":"","sources":["../../src/tools/getSubmissionFeedback.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"getSubmissionFeedback.js","sourceRoot":"","sources":["../../src/tools/getSubmissionFeedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVerificationStatus.d.ts","sourceRoot":"","sources":["../../src/tools/getVerificationStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOpE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"getVerificationStatus.d.ts","sourceRoot":"","sources":["../../src/tools/getVerificationStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOpE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0JrE"}
|
|
@@ -83,11 +83,25 @@ function registerGetVerificationStatus(server) {
|
|
|
83
83
|
text += `**Skipped:** ${v.hiddenSummary.skipped}\n`;
|
|
84
84
|
}
|
|
85
85
|
// Structured feedback with prioritized action items
|
|
86
|
+
let renderedHiddenMechanisms = false;
|
|
86
87
|
if (v.feedbackJson) {
|
|
87
88
|
try {
|
|
88
89
|
const feedback = JSON.parse(v.feedbackJson);
|
|
89
90
|
text += `\n## Structured Feedback\n\n`;
|
|
90
91
|
text += `**Attempt:** ${feedback.attemptNumber ?? "?"} | **Remaining:** ${feedback.attemptsRemaining ?? "?"}\n\n`;
|
|
92
|
+
if (Array.isArray(feedback.hiddenFailureMechanisms) && feedback.hiddenFailureMechanisms.length > 0) {
|
|
93
|
+
text += "### Hidden Failure Mechanisms (safe summary)\n\n";
|
|
94
|
+
for (const mechanism of feedback.hiddenFailureMechanisms.slice(0, 10)) {
|
|
95
|
+
const label = typeof mechanism?.label === "string" ? mechanism.label : "Unknown edge case";
|
|
96
|
+
const count = typeof mechanism?.count === "number" ? mechanism.count : "?";
|
|
97
|
+
const guidance = typeof mechanism?.guidance === "string"
|
|
98
|
+
? mechanism.guidance
|
|
99
|
+
: "Harden boundary conditions and error handling.";
|
|
100
|
+
text += `- **${label}** (${count}): ${guidance}\n`;
|
|
101
|
+
}
|
|
102
|
+
text += "\n";
|
|
103
|
+
renderedHiddenMechanisms = true;
|
|
104
|
+
}
|
|
91
105
|
if (feedback.actionItems && feedback.actionItems.length > 0) {
|
|
92
106
|
const safeItems = feedback.actionItems.filter((item) => !item.toLowerCase().includes("hidden"));
|
|
93
107
|
text += `### Action Items (prioritized)\n\n`;
|
|
@@ -100,6 +114,17 @@ function registerGetVerificationStatus(server) {
|
|
|
100
114
|
// feedbackJson parse failed — skip
|
|
101
115
|
}
|
|
102
116
|
}
|
|
117
|
+
if (!renderedHiddenMechanisms && Array.isArray(v.hiddenFailureMechanisms) && v.hiddenFailureMechanisms.length > 0) {
|
|
118
|
+
text += "\n## Hidden Failure Mechanisms (safe summary)\n\n";
|
|
119
|
+
for (const mechanism of v.hiddenFailureMechanisms.slice(0, 10)) {
|
|
120
|
+
const label = typeof mechanism?.label === "string" ? mechanism.label : "Unknown edge case";
|
|
121
|
+
const count = typeof mechanism?.count === "number" ? mechanism.count : "?";
|
|
122
|
+
const guidance = typeof mechanism?.guidance === "string"
|
|
123
|
+
? mechanism.guidance
|
|
124
|
+
: "Harden boundary conditions and error handling.";
|
|
125
|
+
text += `- **${label}** (${count}): ${guidance}\n`;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
103
128
|
if (v.result)
|
|
104
129
|
text += `\n## Result\n${v.result}\n`;
|
|
105
130
|
if (v.errorLog)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVerificationStatus.js","sourceRoot":"","sources":["../../src/tools/getVerificationStatus.ts"],"names":[],"mappings":";;AAOA,
|
|
1
|
+
{"version":3,"file":"getVerificationStatus.js","sourceRoot":"","sources":["../../src/tools/getVerificationStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submitSolution.d.ts","sourceRoot":"","sources":["../../src/tools/submitSolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"submitSolution.d.ts","sourceRoot":"","sources":["../../src/tools/submitSolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AASpE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwH9D"}
|
|
@@ -7,6 +7,7 @@ const toolHelper_1 = require("../lib/toolHelper");
|
|
|
7
7
|
const context_1 = require("../lib/context");
|
|
8
8
|
const cache_1 = require("../workspace/cache");
|
|
9
9
|
const client_2 = require("../worker/client");
|
|
10
|
+
const workerErrors_1 = require("../workspace/workerErrors");
|
|
10
11
|
function registerSubmitSolution(server) {
|
|
11
12
|
(0, toolHelper_1.registerTool)(server, "submit_solution", "Submit your workspace changes for verification. Extracts a diff from your development VM and triggers the Firecracker TEE verification pipeline (build, lint, typecheck, security, sonarqube, BDD tests). Your workspace stays alive so you can iterate if verification fails.", {
|
|
12
13
|
bountyId: zod_1.z.string().describe("The bounty ID"),
|
|
@@ -44,6 +45,13 @@ function registerSubmitSolution(server) {
|
|
|
44
45
|
});
|
|
45
46
|
}
|
|
46
47
|
catch (err) {
|
|
48
|
+
if ((0, workerErrors_1.isMissingWorkspaceSessionError)(err)) {
|
|
49
|
+
(0, cache_1.invalidateWorkspaceCache)(agentId, args.bountyId);
|
|
50
|
+
return {
|
|
51
|
+
content: [{ type: "text", text: (0, workerErrors_1.staleWorkspaceSessionMessage)() }],
|
|
52
|
+
isError: true,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
47
55
|
const message = err instanceof Error ? err.message : "Failed to extract diff";
|
|
48
56
|
return {
|
|
49
57
|
content: [{ type: "text", text: `Failed to extract diff from workspace: ${message}` }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submitSolution.js","sourceRoot":"","sources":["../../src/tools/submitSolution.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"submitSolution.js","sourceRoot":"","sources":["../../src/tools/submitSolution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testBounty.d.ts","sourceRoot":"","sources":["../../src/tools/testBounty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"testBounty.d.ts","sourceRoot":"","sources":["../../src/tools/testBounty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6D1D"}
|
package/dist/tools/testBounty.js
CHANGED
|
@@ -28,6 +28,7 @@ function registerTestBounty(server) {
|
|
|
28
28
|
text += `**Repository:** ${result.repositoryUrl}\n`;
|
|
29
29
|
text += `**Commit:** ${result.commitSha}\n\n`;
|
|
30
30
|
text += "## Next Steps\n\n";
|
|
31
|
+
text += "This test bounty uses the same shared-worker + Firecracker pipeline as production bounties.\n\n";
|
|
31
32
|
text += "1. Run `workspace_status` with this bounty ID until workspace is ready\n";
|
|
32
33
|
text += "2. Implement the /agenthellos change in the workspace\n";
|
|
33
34
|
text += "3. Run `submit_solution` when complete\n";
|
|
@@ -37,8 +38,13 @@ function registerTestBounty(server) {
|
|
|
37
38
|
}
|
|
38
39
|
catch (err) {
|
|
39
40
|
const message = err instanceof Error ? err.message : "Failed to create test bounty";
|
|
41
|
+
const isCommitResolutionFailure = message.includes("Failed to resolve test bounty commit SHA") ||
|
|
42
|
+
message.includes("rateLimitRemaining=");
|
|
43
|
+
const suffix = isCommitResolutionFailure
|
|
44
|
+
? "\n\nRemediation: set TEST_BOUNTY_COMMIT_SHA to a known-good commit and/or configure GITHUB_API_TOKEN for authenticated GitHub API access."
|
|
45
|
+
: "";
|
|
40
46
|
return {
|
|
41
|
-
content: [{ type: "text", text: `Failed to create test bounty: ${message}` }],
|
|
47
|
+
content: [{ type: "text", text: `Failed to create test bounty: ${message}${suffix}` }],
|
|
42
48
|
isError: true,
|
|
43
49
|
};
|
|
44
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testBounty.js","sourceRoot":"","sources":["../../src/tools/testBounty.ts"],"names":[],"mappings":";;AAMA,
|
|
1
|
+
{"version":3,"file":"testBounty.js","sourceRoot":"","sources":["../../src/tools/testBounty.ts"],"names":[],"mappings":";;AAMA,gDA6DC;AAlED,6BAAwB;AACxB,6CAA8C;AAC9C,kDAAiD;AACjD,4CAA2D;AAE3D,SAAgB,kBAAkB,CAAC,MAAiB;IAClD,IAAA,yBAAY,EACV,MAAM,EACN,YAAY,EACZ,qKAAqK,EACrK;QACE,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAC1E,EACD,KAAK,IAAI,EAAE;QACT,IAAA,sBAAY,EAAC,iBAAiB,CAAC,CAAC;QAChC,IAAA,sBAAY,EAAC,gBAAgB,CAAC,CAAC;QAE/B,MAAM,QAAQ,GAAG,IAAA,qBAAW,GAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;gBAC7E,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAU,EAO5B,4BAA4B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAE9C,IAAI,IAAI,GAAG,yBAAyB,CAAC;YACrC,IAAI,IAAI,kBAAkB,MAAM,CAAC,QAAQ,IAAI,CAAC;YAC9C,IAAI,IAAI,iBAAiB,MAAM,CAAC,OAAO,IAAI,CAAC;YAC5C,IAAI,IAAI,aAAa,MAAM,CAAC,cAAc,IAAI,CAAC;YAC/C,IAAI,IAAI,mBAAmB,MAAM,CAAC,aAAa,IAAI,CAAC;YACpD,IAAI,IAAI,eAAe,MAAM,CAAC,SAAS,MAAM,CAAC;YAC9C,IAAI,IAAI,mBAAmB,CAAC;YAC5B,IAAI,IAAI,iGAAiG,CAAC;YAC1G,IAAI,IAAI,0EAA0E,CAAC;YACnF,IAAI,IAAI,yDAAyD,CAAC;YAClE,IAAI,IAAI,0CAA0C,CAAC;YACnD,IAAI,IAAI,+CAA+C,CAAC;YACxD,IAAI,IAAI,+EAA+E,CAAC;YAExF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC;YACpF,MAAM,yBAAyB,GAC7B,OAAO,CAAC,QAAQ,CAAC,0CAA0C,CAAC;gBAC5D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,yBAAyB;gBACtC,CAAC,CAAC,2IAA2I;gBAC7I,CAAC,CAAC,EAAE,CAAC;YACP,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iCAAiC,OAAO,GAAG,MAAM,EAAE,EAAE,CAAC;gBAC/F,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceExec.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceExec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"workspaceExec.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceExec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6E7D"}
|
|
@@ -6,6 +6,7 @@ const context_1 = require("../lib/context");
|
|
|
6
6
|
const cache_1 = require("../workspace/cache");
|
|
7
7
|
const client_1 = require("../worker/client");
|
|
8
8
|
const toolHelper_1 = require("../lib/toolHelper");
|
|
9
|
+
const workerErrors_1 = require("../workspace/workerErrors");
|
|
9
10
|
function registerWorkspaceExec(server) {
|
|
10
11
|
(0, toolHelper_1.registerTool)(server, "workspace_exec", "Run a shell command in your development workspace. The repository is at /workspace. " +
|
|
11
12
|
"Commands run as non-root user. Use for building, testing, installing packages, running scripts.", {
|
|
@@ -54,6 +55,13 @@ function registerWorkspaceExec(server) {
|
|
|
54
55
|
};
|
|
55
56
|
}
|
|
56
57
|
catch (err) {
|
|
58
|
+
if ((0, workerErrors_1.isMissingWorkspaceSessionError)(err)) {
|
|
59
|
+
(0, cache_1.invalidateWorkspaceCache)(user.userId, args.bountyId);
|
|
60
|
+
return {
|
|
61
|
+
content: [{ type: "text", text: (0, workerErrors_1.staleWorkspaceSessionMessage)() }],
|
|
62
|
+
isError: true,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
57
65
|
const message = err instanceof Error ? err.message : "Command execution failed";
|
|
58
66
|
return {
|
|
59
67
|
content: [{ type: "text", text: `Error: ${message}` }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceExec.js","sourceRoot":"","sources":["../../src/tools/workspaceExec.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"workspaceExec.js","sourceRoot":"","sources":["../../src/tools/workspaceExec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceShell.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceShell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"workspaceShell.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceShell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2E9D"}
|
|
@@ -6,6 +6,7 @@ const context_1 = require("../lib/context");
|
|
|
6
6
|
const cache_1 = require("../workspace/cache");
|
|
7
7
|
const client_1 = require("../worker/client");
|
|
8
8
|
const toolHelper_1 = require("../lib/toolHelper");
|
|
9
|
+
const workerErrors_1 = require("../workspace/workerErrors");
|
|
9
10
|
function registerWorkspaceShell(server) {
|
|
10
11
|
(0, toolHelper_1.registerTool)(server, "workspace_shell", "Run a command in a persistent shell session. Unlike workspace_exec which starts a fresh shell for " +
|
|
11
12
|
"each command, this maintains state (cwd, env vars, shell history) across calls within the same session. " +
|
|
@@ -53,6 +54,13 @@ function registerWorkspaceShell(server) {
|
|
|
53
54
|
};
|
|
54
55
|
}
|
|
55
56
|
catch (err) {
|
|
57
|
+
if ((0, workerErrors_1.isMissingWorkspaceSessionError)(err)) {
|
|
58
|
+
(0, cache_1.invalidateWorkspaceCache)(user.userId, args.bountyId);
|
|
59
|
+
return {
|
|
60
|
+
content: [{ type: "text", text: (0, workerErrors_1.staleWorkspaceSessionMessage)() }],
|
|
61
|
+
isError: true,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
56
64
|
const message = err instanceof Error ? err.message : "Shell command execution failed";
|
|
57
65
|
return {
|
|
58
66
|
content: [{ type: "text", text: `Error: ${message}` }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceShell.js","sourceRoot":"","sources":["../../src/tools/workspaceShell.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"workspaceShell.js","sourceRoot":"","sources":["../../src/tools/workspaceShell.ts"],"names":[],"mappings":";;AAQA,wDA2EC;AAlFD,6BAAwB;AACxB,4CAA+D;AAC/D,8CAAoF;AACpF,6CAA8C;AAC9C,kDAAiD;AACjD,4DAAyG;AAEzG,SAAgB,sBAAsB,CAAC,MAAiB;IACtD,IAAA,yBAAY,EACV,MAAM,EACN,iBAAiB,EACjB,oGAAoG;QAClG,0GAA0G;QAC1G,+FAA+F;QAC/F,kCAAkC,EACpC;QACE,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;QAC/D,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACxD,SAAS,EAAE,OAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,6DAA6D,CAAC;KAC3E,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,mCAAmC;QACnC,IAAA,sBAAY,EAAC,gBAAgB,CAAC,CAAC;QAC/B,4CAA4C;QAC5C,MAAM,IAAI,GAAG,IAAA,yBAAe,GAAE,CAAC;QAE/B,MAAM,EAAE,GAAG,MAAM,IAAA,4BAAoB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACvC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,EAAE,CAAC,KAAK;4BACZ,CAAC,CAAC,mCAAmC,EAAE,CAAC,MAAM,uCAAuC;4BACrF,CAAC,CAAC,iFAAiF;qBACtF;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAU,EAI5B,EAAE,CAAC,UAAU,EAAE,6BAA6B,EAAE;gBAC/C,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;aACvC,CAAC,CAAC;YAEH,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;YAC7D,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChD,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAErC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aAC/D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,IAAA,6CAA8B,EAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,IAAA,gCAAwB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrD,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAA,2CAA4B,GAAE,EAAE,CAAC;oBAC1E,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GACX,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC;YACxE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC;gBAC/D,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceStartupLog.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceStartupLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"workspaceStartupLog.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceStartupLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgCpE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwFnE"}
|
|
@@ -6,7 +6,7 @@ const client_1 = require("../convex/client");
|
|
|
6
6
|
const context_1 = require("../lib/context");
|
|
7
7
|
const toolHelper_1 = require("../lib/toolHelper");
|
|
8
8
|
function registerWorkspaceStartupLog(server) {
|
|
9
|
-
(0, toolHelper_1.registerTool)(server, "workspace_startup_log", "Fetch
|
|
9
|
+
(0, toolHelper_1.registerTool)(server, "workspace_startup_log", "Fetch workspace startup diagnostics (shared worker + Firecracker execution environment health) for a claimed bounty workspace.", {
|
|
10
10
|
bountyId: zod_1.z.string().optional().describe("Bounty ID (recommended for agent usage)"),
|
|
11
11
|
workspaceId: zod_1.z.string().optional().describe("Workspace ID (optional operator override)"),
|
|
12
12
|
claimId: zod_1.z.string().optional().describe("Claim ID (optional operator override)"),
|
|
@@ -35,23 +35,40 @@ function registerWorkspaceStartupLog(server) {
|
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
37
|
const startup = result.startupLog;
|
|
38
|
+
const checks = startup?.workerHealth?.checks
|
|
39
|
+
? Object.entries(startup.workerHealth.checks).map(([k, v]) => `- ${k}: ${v}`)
|
|
40
|
+
: [];
|
|
38
41
|
const lines = [
|
|
39
42
|
"# Workspace Startup Diagnostics",
|
|
40
43
|
"",
|
|
41
44
|
`- Bounty: ${result.bountyId ?? args.bountyId ?? "unknown"}`,
|
|
42
45
|
`- Claim: ${result.claimId ?? args.claimId ?? "unknown"}`,
|
|
43
46
|
`- Workspace: ${result.workspaceId ?? args.workspaceId ?? "unknown"}`,
|
|
44
|
-
`-
|
|
45
|
-
|
|
46
|
-
startup?.
|
|
47
|
-
startup?.
|
|
48
|
-
startup?.
|
|
47
|
+
`- Mode: ${startup?.mode ?? "shared_worker"}`,
|
|
48
|
+
`- Workspace status: ${startup?.workspaceStatus ?? "unknown"}`,
|
|
49
|
+
startup?.workerHost ? `- Worker host: ${startup.workerHost}` : null,
|
|
50
|
+
startup?.workspaceError ? `- Workspace error: ${startup.workspaceError}` : null,
|
|
51
|
+
startup?.vmBootStage ? `- VM boot stage: ${startup.vmBootStage}` : null,
|
|
52
|
+
startup?.firecrackerExitCode !== undefined && startup?.firecrackerExitCode !== null
|
|
53
|
+
? `- Firecracker exit code: ${startup.firecrackerExitCode}`
|
|
54
|
+
: null,
|
|
55
|
+
startup?.rootfsAccessCheck ? `- Rootfs access check: ${startup.rootfsAccessCheck}` : null,
|
|
56
|
+
startup?.firecrackerStderrTail
|
|
57
|
+
? `- Firecracker stderr tail: ${startup.firecrackerStderrTail}`
|
|
58
|
+
: null,
|
|
59
|
+
startup?.workerHealth
|
|
60
|
+
? `- Worker reachable: ${startup.workerHealth.reachable ? "yes" : "no"}`
|
|
61
|
+
: null,
|
|
62
|
+
startup?.workerHealth?.httpStatus !== undefined
|
|
63
|
+
? `- Worker health HTTP: ${startup.workerHealth.httpStatus}`
|
|
64
|
+
: null,
|
|
65
|
+
startup?.workerHealth?.status ? `- Worker health status: ${startup.workerHealth.status}` : null,
|
|
66
|
+
startup?.workerHealth?.error ? `- Worker health error: ${startup.workerHealth.error}` : null,
|
|
67
|
+
startup?.expiresAt ? `- Workspace expires at: ${new Date(startup.expiresAt).toISOString()}` : null,
|
|
49
68
|
"",
|
|
50
|
-
"##
|
|
69
|
+
"## Worker Health Checks",
|
|
51
70
|
"",
|
|
52
|
-
|
|
53
|
-
? "```\n" + startup.log + "\n```"
|
|
54
|
-
: "No boot log captured yet.",
|
|
71
|
+
checks.length > 0 ? checks.join("\n") : "No worker health checks captured yet.",
|
|
55
72
|
].filter(Boolean);
|
|
56
73
|
return { content: [{ type: "text", text: lines.join("\n") }] };
|
|
57
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceStartupLog.js","sourceRoot":"","sources":["../../src/tools/workspaceStartupLog.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"workspaceStartupLog.js","sourceRoot":"","sources":["../../src/tools/workspaceStartupLog.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceStatus.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"workspaceStatus.d.ts","sourceRoot":"","sources":["../../src/tools/workspaceStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAiL/D"}
|
|
@@ -6,6 +6,7 @@ const context_1 = require("../lib/context");
|
|
|
6
6
|
const cache_1 = require("../workspace/cache");
|
|
7
7
|
const client_1 = require("../worker/client");
|
|
8
8
|
const toolHelper_1 = require("../lib/toolHelper");
|
|
9
|
+
const workerErrors_1 = require("../workspace/workerErrors");
|
|
9
10
|
function registerWorkspaceStatus(server) {
|
|
10
11
|
(0, toolHelper_1.registerTool)(server, "workspace_status", "Check workspace readiness, time remaining, and resource usage.", {
|
|
11
12
|
bountyId: zod_1.z
|
|
@@ -64,8 +65,32 @@ function registerWorkspaceStatus(server) {
|
|
|
64
65
|
],
|
|
65
66
|
};
|
|
66
67
|
}
|
|
68
|
+
let displayStatus = ws.status;
|
|
69
|
+
let workerSessionAvailable = ws.status === "ready";
|
|
70
|
+
let availabilityWarning = null;
|
|
71
|
+
if (ws.status === "ready") {
|
|
72
|
+
try {
|
|
73
|
+
const live = await (0, client_1.callWorker)(ws.workerHost, "/api/workspace/status", { workspaceId: ws.workspaceId }, 8_000);
|
|
74
|
+
if (live.status !== "ready") {
|
|
75
|
+
workerSessionAvailable = false;
|
|
76
|
+
displayStatus = `ready (worker reports ${live.status})`;
|
|
77
|
+
(0, cache_1.invalidateWorkspaceCache)(user.userId, args.bountyId);
|
|
78
|
+
availabilityWarning =
|
|
79
|
+
`Worker reports this workspace as \`${live.status}\`, so interactive commands may fail.\n\n` +
|
|
80
|
+
"Control-plane cache was invalidated and will refresh on next lookup.";
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
if ((0, workerErrors_1.isMissingWorkspaceSessionError)(err)) {
|
|
85
|
+
workerSessionAvailable = false;
|
|
86
|
+
displayStatus = "ready (stale)";
|
|
87
|
+
(0, cache_1.invalidateWorkspaceCache)(user.userId, args.bountyId);
|
|
88
|
+
availabilityWarning = (0, workerErrors_1.staleWorkspaceSessionMessage)();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
67
92
|
const parts = [];
|
|
68
|
-
parts.push(`## Workspace Status: **${
|
|
93
|
+
parts.push(`## Workspace Status: **${displayStatus}**`);
|
|
69
94
|
parts.push(`- **Workspace ID:** ${ws.workspaceId}`);
|
|
70
95
|
const remaining = ws.expiresAt - Date.now();
|
|
71
96
|
if (remaining > 0) {
|
|
@@ -91,8 +116,12 @@ function registerWorkspaceStatus(server) {
|
|
|
91
116
|
content: [{ type: "text", text: parts.join("\n") }],
|
|
92
117
|
};
|
|
93
118
|
}
|
|
119
|
+
if (availabilityWarning) {
|
|
120
|
+
parts.push("\n### Availability Warning");
|
|
121
|
+
parts.push(availabilityWarning);
|
|
122
|
+
}
|
|
94
123
|
// Show directory tree if requested
|
|
95
|
-
if (args.showTree === "true") {
|
|
124
|
+
if (args.showTree === "true" && workerSessionAvailable) {
|
|
96
125
|
try {
|
|
97
126
|
const treeResult = await (0, client_1.callWorker)(ws.workerHost, "/api/workspace/exec", {
|
|
98
127
|
workspaceId: ws.workspaceId,
|
|
@@ -109,11 +138,20 @@ function registerWorkspaceStatus(server) {
|
|
|
109
138
|
parts.push("\n*(Could not fetch directory listing)*");
|
|
110
139
|
}
|
|
111
140
|
}
|
|
141
|
+
else if (args.showTree === "true") {
|
|
142
|
+
parts.push("\n*(Directory listing skipped because worker session is currently unavailable)*");
|
|
143
|
+
}
|
|
112
144
|
parts.push("\n### Available Commands");
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
145
|
+
if (workerSessionAvailable) {
|
|
146
|
+
parts.push("- `workspace_exec` — Run shell commands");
|
|
147
|
+
parts.push("- `workspace_read_file` — Read source files");
|
|
148
|
+
parts.push("- `workspace_write_file` — Write/create files");
|
|
149
|
+
parts.push("- `submit_solution` — Submit changes for verification");
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
parts.push("- Worker session is unavailable; commands will fail until workspace is reprovisioned.");
|
|
153
|
+
parts.push("- Use `workspace_startup_log` for diagnostics.");
|
|
154
|
+
}
|
|
117
155
|
return {
|
|
118
156
|
content: [{ type: "text", text: parts.join("\n") }],
|
|
119
157
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceStatus.js","sourceRoot":"","sources":["../../src/tools/workspaceStatus.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"workspaceStatus.js","sourceRoot":"","sources":["../../src/tools/workspaceStatus.ts"],"names":[],"mappings":"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"}
|
package/dist/worker/client.d.ts
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
* Bypasses Convex for latency-sensitive interactive operations
|
|
5
5
|
* (exec, file read/write). Auth: short-lived scoped worker tokens minted by Convex.
|
|
6
6
|
*/
|
|
7
|
+
export declare class WorkerHttpError extends Error {
|
|
8
|
+
readonly status: number;
|
|
9
|
+
readonly path: string;
|
|
10
|
+
constructor(status: number, path: string, message: string);
|
|
11
|
+
}
|
|
7
12
|
export declare function initWorkerClient(secret: string): void;
|
|
8
13
|
export declare function callWorker<T = unknown>(workerHost: string, path: string, body: Record<string, unknown>, timeoutMs?: number): Promise<T>;
|
|
9
14
|
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/worker/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/worker/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAM1D;AAsCD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAErD;AAED,wBAAsB,UAAU,CAAC,CAAC,GAAG,OAAO,EAC1C,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,GAAE,MAA2B,GACrC,OAAO,CAAC,CAAC,CAAC,CAyCZ"}
|
package/dist/worker/client.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* (exec, file read/write). Auth: short-lived scoped worker tokens minted by Convex.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.WorkerHttpError = void 0;
|
|
9
10
|
exports.initWorkerClient = initWorkerClient;
|
|
10
11
|
exports.callWorker = callWorker;
|
|
11
12
|
const client_1 = require("../convex/client");
|
|
@@ -14,6 +15,17 @@ let workerSecret;
|
|
|
14
15
|
const DEFAULT_TIMEOUT_MS = 130_000; // slightly over max command timeout
|
|
15
16
|
const TOKEN_REFRESH_BUFFER_MS = 5_000;
|
|
16
17
|
const workerTokenCache = new Map();
|
|
18
|
+
class WorkerHttpError extends Error {
|
|
19
|
+
status;
|
|
20
|
+
path;
|
|
21
|
+
constructor(status, path, message) {
|
|
22
|
+
super(message);
|
|
23
|
+
this.name = "WorkerHttpError";
|
|
24
|
+
this.status = status;
|
|
25
|
+
this.path = path;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.WorkerHttpError = WorkerHttpError;
|
|
17
29
|
function getTokenCacheKey(workspaceId, routePath) {
|
|
18
30
|
const authKey = (0, context_1.getAuthApiKey)() ?? "stdio";
|
|
19
31
|
return `${authKey}:${workspaceId}:${routePath}`;
|
|
@@ -67,7 +79,7 @@ async function callWorker(workerHost, path, body, timeoutMs = DEFAULT_TIMEOUT_MS
|
|
|
67
79
|
catch {
|
|
68
80
|
errorMessage = `Worker error (${response.status}). ${rawText.slice(0, 200)}`;
|
|
69
81
|
}
|
|
70
|
-
throw new
|
|
82
|
+
throw new WorkerHttpError(response.status, path, errorMessage);
|
|
71
83
|
}
|
|
72
84
|
return (await response.json());
|
|
73
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/worker/client.ts"],"names":[],"mappings":";AAAA;;;;;GAKG
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/worker/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/workspace/cache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,MAAM,eAAe,GACvB;IACE,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACD;IACE,KAAK,EAAE,IAAI,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/workspace/cache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,MAAM,eAAe,GACvB;IACE,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACD;IACE,KAAK,EAAE,IAAI,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AA8BN;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC,CAkB1B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAM3D;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C"}
|
package/dist/workspace/cache.js
CHANGED
|
@@ -15,7 +15,8 @@ const lruCache_1 = require("../lib/lruCache");
|
|
|
15
15
|
// ---------------------------------------------------------------------------
|
|
16
16
|
// Cache
|
|
17
17
|
// ---------------------------------------------------------------------------
|
|
18
|
-
const TTL_MS = 120_000; // 120 seconds
|
|
18
|
+
const TTL_MS = 120_000; // 120 seconds default for non-ready states
|
|
19
|
+
const READY_TTL_MS = 20_000; // ready can go stale after worker restarts; refresh more often
|
|
19
20
|
const MAX_ENTRIES = 10_000;
|
|
20
21
|
const cache = new lruCache_1.LruTtlCache(MAX_ENTRIES, TTL_MS);
|
|
21
22
|
function cacheKey(agentId, bountyId) {
|
|
@@ -30,6 +31,8 @@ function cacheTtlForLookup(data) {
|
|
|
30
31
|
return 10_000;
|
|
31
32
|
if (data.status === "destroyed")
|
|
32
33
|
return 30_000;
|
|
34
|
+
if (data.status === "ready")
|
|
35
|
+
return READY_TTL_MS;
|
|
33
36
|
return TTL_MS;
|
|
34
37
|
}
|
|
35
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/workspace/cache.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/workspace/cache.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA4DH,oDAqBC;AAKD,4DAKC;AAKD,sDAMC;AAED,sDAEC;AAxGD,6CAA8C;AAC9C,8CAA8C;AA+B9C,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,2CAA2C;AACnE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,+DAA+D;AAC5F,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,MAAM,KAAK,GAAG,IAAI,sBAAW,CAAqB,WAAW,EAAE,MAAM,CAAC,CAAC;AAEvE,SAAS,QAAQ,CAAC,OAAe,EAAE,QAAgB;IACjD,OAAO,GAAG,OAAO,IAAI,QAAQ,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAqB;IAC9C,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,KAAK,CAAC;IACjD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,YAAY,CAAC;IACjD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CACxC,OAAe,EACf,QAAgB;IAEhB,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAU,EAC3B,2BAA2B,EAC3B,EAAE,OAAO,EAAE,QAAQ,EAAE,CACtB,CAAC;IAEF,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CACtC,OAAe,EACf,QAAgB;IAEhB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAAe;IACnD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/B,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB;IACnC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workerErrors.d.ts","sourceRoot":"","sources":["../../src/workspace/workerErrors.ts"],"names":[],"mappings":"AAOA,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAQpE;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAOrD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isMissingWorkspaceSessionError = isMissingWorkspaceSessionError;
|
|
4
|
+
exports.staleWorkspaceSessionMessage = staleWorkspaceSessionMessage;
|
|
5
|
+
const client_1 = require("../worker/client");
|
|
6
|
+
const WORKSPACE_MISSING_PATTERNS = [
|
|
7
|
+
/workspace not found/i,
|
|
8
|
+
/workspace not found or not ready/i,
|
|
9
|
+
];
|
|
10
|
+
function isMissingWorkspaceSessionError(err) {
|
|
11
|
+
if (err instanceof client_1.WorkerHttpError && err.status === 404) {
|
|
12
|
+
return WORKSPACE_MISSING_PATTERNS.some((pattern) => pattern.test(err.message));
|
|
13
|
+
}
|
|
14
|
+
if (err instanceof Error) {
|
|
15
|
+
return WORKSPACE_MISSING_PATTERNS.some((pattern) => pattern.test(err.message));
|
|
16
|
+
}
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
function staleWorkspaceSessionMessage() {
|
|
20
|
+
return ("Worker session is missing even though control-plane status was `ready`.\n\n" +
|
|
21
|
+
"This usually means the worker restarted or evicted the session.\n\n" +
|
|
22
|
+
"Run `workspace_status` again. If it remains unavailable, use `workspace_startup_log` " +
|
|
23
|
+
"for diagnostics and reprovision by releasing/reclaiming the bounty claim.");
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=workerErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workerErrors.js","sourceRoot":"","sources":["../../src/workspace/workerErrors.ts"],"names":[],"mappings":";;AAOA,wEAQC;AAED,oEAOC;AAxBD,6CAAmD;AAEnD,MAAM,0BAA0B,GAAG;IACjC,sBAAsB;IACtB,mCAAmC;CACpC,CAAC;AAEF,SAAgB,8BAA8B,CAAC,GAAY;IACzD,IAAI,GAAG,YAAY,wBAAe,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACzD,OAAO,0BAA0B,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,OAAO,0BAA0B,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,4BAA4B;IAC1C,OAAO,CACL,6EAA6E;QAC7E,qEAAqE;QACrE,uFAAuF;QACvF,2EAA2E,CAC5E,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED