bosun 0.41.2 → 0.41.4
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/.env.example +1 -1
- package/agent/agent-pool.mjs +9 -2
- package/agent/agent-prompt-catalog.mjs +971 -0
- package/agent/agent-prompts.mjs +2 -970
- package/agent/agent-supervisor.mjs +119 -6
- package/agent/autofix-git.mjs +33 -0
- package/agent/autofix-prompts.mjs +151 -0
- package/agent/autofix.mjs +11 -175
- package/agent/bosun-skills.mjs +3 -2
- package/bosun.config.example.json +17 -0
- package/bosun.schema.json +87 -188
- package/cli.mjs +34 -1
- package/config/config-doctor.mjs +5 -250
- package/config/config-file-names.mjs +5 -0
- package/config/config.mjs +89 -493
- package/config/executor-config.mjs +493 -0
- package/config/repo-root.mjs +1 -2
- package/config/workspace-health.mjs +242 -0
- package/git/git-safety.mjs +15 -0
- package/github/github-oauth-portal.mjs +46 -0
- package/infra/library-manager-utils.mjs +22 -0
- package/infra/library-manager-well-known-sources.mjs +578 -0
- package/infra/library-manager.mjs +512 -1030
- package/infra/monitor.mjs +35 -9
- package/infra/session-tracker.mjs +10 -7
- package/kanban/kanban-adapter.mjs +17 -1
- package/lib/codebase-audit-manifests.mjs +117 -0
- package/lib/codebase-audit.mjs +18 -115
- package/package.json +18 -3
- package/server/setup-web-server.mjs +58 -5
- package/server/ui-server.mjs +1394 -79
- package/shell/codex-config-file.mjs +178 -0
- package/shell/codex-config.mjs +538 -575
- package/task/task-cli.mjs +54 -3
- package/task/task-executor.mjs +143 -13
- package/task/task-store.mjs +409 -1
- package/telegram/telegram-bot.mjs +127 -0
- package/tools/apply-pr-suggestions.mjs +401 -0
- package/tools/syntax-check.mjs +28 -9
- package/ui/app.js +3 -14
- package/ui/components/kanban-board.js +227 -4
- package/ui/components/session-list.js +85 -5
- package/ui/demo-defaults.js +338 -84
- package/ui/demo.html +155 -0
- package/ui/modules/session-api.js +96 -0
- package/ui/modules/settings-schema.js +1 -2
- package/ui/modules/state.js +43 -3
- package/ui/setup.html +4 -5
- package/ui/styles/components.css +58 -4
- package/ui/tabs/agents.js +12 -15
- package/ui/tabs/control.js +1 -0
- package/ui/tabs/library.js +484 -22
- package/ui/tabs/manual-flows.js +105 -29
- package/ui/tabs/tasks.js +848 -141
- package/ui/tabs/telemetry.js +129 -11
- package/ui/tabs/workflow-canvas-utils.mjs +130 -0
- package/ui/tabs/workflows.js +293 -23
- package/voice/voice-tool-definitions.mjs +757 -0
- package/voice/voice-tools.mjs +34 -778
- package/workflow/manual-flow-audit.mjs +165 -0
- package/workflow/manual-flows.mjs +164 -259
- package/workflow/workflow-engine.mjs +147 -58
- package/workflow/workflow-nodes/definitions.mjs +1207 -0
- package/workflow/workflow-nodes/transforms.mjs +612 -0
- package/workflow/workflow-nodes.mjs +358 -63
- package/workflow/workflow-templates.mjs +313 -191
- package/workflow-templates/_helpers.mjs +154 -0
- package/workflow-templates/agents.mjs +61 -4
- package/workflow-templates/code-quality.mjs +7 -7
- package/workflow-templates/github.mjs +20 -10
- package/workflow-templates/task-batch.mjs +44 -11
- package/workflow-templates/task-lifecycle.mjs +31 -6
- package/workspace/worktree-manager.mjs +277 -3
package/.env.example
CHANGED
|
@@ -1112,7 +1112,7 @@ COPILOT_CLOUD_DISABLED=true
|
|
|
1112
1112
|
# Max orchestrator restarts (0 = unlimited)
|
|
1113
1113
|
# MAX_RESTARTS=0
|
|
1114
1114
|
# Restart delay in milliseconds
|
|
1115
|
-
# RESTART_DELAY_MS=
|
|
1115
|
+
# RESTART_DELAY_MS=180000
|
|
1116
1116
|
# Max parallel task slots
|
|
1117
1117
|
# MAX_PARALLEL=6
|
|
1118
1118
|
# Repository root (auto-detected from git; setup writes this)
|
package/agent/agent-pool.mjs
CHANGED
|
@@ -2846,6 +2846,10 @@ function isPoisonedCodexResumeError(errorValue) {
|
|
|
2846
2846
|
);
|
|
2847
2847
|
}
|
|
2848
2848
|
|
|
2849
|
+
function isCodexResumeTimeoutError(errorValue) {
|
|
2850
|
+
return String(errorValue || "").toLowerCase().includes("codex resume timeout");
|
|
2851
|
+
}
|
|
2852
|
+
|
|
2849
2853
|
/**
|
|
2850
2854
|
* Resume an existing Codex thread and run a follow-up prompt.
|
|
2851
2855
|
* Uses `codex.resumeThread(threadId)` from @openai/codex-sdk.
|
|
@@ -3017,6 +3021,7 @@ async function resumeCodexThread(threadId, prompt, cwd, timeoutMs, extra = {}) {
|
|
|
3017
3021
|
: `Thread resume error: ${err.message}`,
|
|
3018
3022
|
sdk: "codex",
|
|
3019
3023
|
threadId: null,
|
|
3024
|
+
staleResumeState: isTimeout,
|
|
3020
3025
|
poisonedResumeState:
|
|
3021
3026
|
!isTimeout && isPoisonedCodexResumeError(err.message),
|
|
3022
3027
|
};
|
|
@@ -3194,10 +3199,12 @@ export async function launchOrResumeThread(
|
|
|
3194
3199
|
// Resume failed — fall through to fresh launch
|
|
3195
3200
|
if (
|
|
3196
3201
|
result.poisonedResumeState ||
|
|
3197
|
-
|
|
3202
|
+
result.staleResumeState ||
|
|
3203
|
+
isPoisonedCodexResumeError(result.error) ||
|
|
3204
|
+
isCodexResumeTimeoutError(result.error)
|
|
3198
3205
|
) {
|
|
3199
3206
|
console.warn(
|
|
3200
|
-
`${TAG} resume failed for task "${taskKey}" with corrupted state: ${result.error}. Dropping cached thread metadata and starting fresh.`,
|
|
3207
|
+
`${TAG} resume failed for task "${taskKey}" with stale or corrupted state: ${result.error}. Dropping cached thread metadata and starting fresh.`,
|
|
3201
3208
|
);
|
|
3202
3209
|
threadRegistry.delete(taskKey);
|
|
3203
3210
|
} else {
|