b8ba457790
When waitForJobCompletion threw and the job was still not terminal, we were returning an error but still deleting the job in the finally block. This left the UI holding an error while the job (still alive) would be cleaned up by Kubernetes, causing the next heartbeat to find nothing and think it was safe to retry — spawning a concurrent pod. Now we set skipCleanup=true when returning the mismatch error, so the job is retained and the heartbeat can still find and wait on it. Also removes a duplicate empty-stdout fallback block. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
50 lines
1.3 KiB
JSON
50 lines
1.3 KiB
JSON
{
|
|
"name": "@farhoodliquor/paperclip-adapter-claude-k8s",
|
|
"version": "0.1.16",
|
|
"description": "Paperclip adapter plugin that runs Claude Code agents as Kubernetes Jobs",
|
|
"license": "MIT",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/farhoodliquor/paperclip-adapter-claude-k8s"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/farhoodliquor/paperclip-adapter-claude-k8s/issues"
|
|
},
|
|
"homepage": "https://github.com/farhoodliquor/paperclip-adapter-claude-k8s#readme",
|
|
"type": "module",
|
|
"paperclip": {
|
|
"adapterUiParser": "1.0.0"
|
|
},
|
|
"exports": {
|
|
".": "./dist/index.js",
|
|
"./server": "./dist/server/index.js",
|
|
"./ui-parser": "./dist/ui-parser.js",
|
|
"./cli": "./dist/cli/index.js"
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"clean": "rm -rf dist",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"coverage": "vitest run --coverage"
|
|
},
|
|
"dependencies": {
|
|
"@kubernetes/client-node": "^1.0.0",
|
|
"picocolors": "^1.1.1"
|
|
},
|
|
"peerDependencies": {
|
|
"@paperclipai/adapter-utils": ">=2026.415.0-canary.7"
|
|
},
|
|
"devDependencies": {
|
|
"@paperclipai/adapter-utils": "2026.415.0-canary.7",
|
|
"@types/node": "^24.6.0",
|
|
"@vitest/coverage-v8": "^4.1.4",
|
|
"typescript": "^5.7.3",
|
|
"vitest": "^4.1.4"
|
|
}
|
|
}
|