feat(daemon): backport live-VM daemon changes — provider capacity gate, artifact viewer, proxy accounts#104
Open
tbrownio wants to merge 2 commits into
Open
feat(daemon): backport live-VM daemon changes — provider capacity gate, artifact viewer, proxy accounts#104tbrownio wants to merge 2 commits into
tbrownio wants to merge 2 commits into
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
…e, artifact viewer, proxy accounts Sync the daemon source currently deployed on the linear-agent VM back into the canonical repo. Deployed and iterated directly on the host, it was clobbered by a repo-main deploy on Jul 21 (causing implementer turn failures on TM-401 until redeployed); this makes the repo the source of truth again. - Capacity evidence + provider gate: claude.ts collects rate-limit / overload / out-of-credits evidence from stream events; sessions.ts tracks provider readiness and falls back to the Claudex runner, recording the downgrade (ops/claudex, ops/claudex-fable, ops/codex-provider-gate.sh). - Artifact store + viewer: artifacts.ts, viewer.ts, and server.ts endpoints serving artifact bundles with management-token auth. - ops/proxy-accounts.sh and provision.sh updates; trustedEnv passthrough into child sessions. - Webhook reconcile now retries every minute (was startup-only). - Runbook/README expanded to cover all of the above. Validated: pnpm typecheck, build, test (204 passed), bash -n provision.sh. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Syncs the daemon source currently running on the linear-agent VM (
/opt/linear-agent-daemon, deploy of Jul 22 00:25 UTC) back into the canonical repo. These changes were developed and deployed directly on the host and never landed here.Why now
On Jul 21 a routine deploy of repo
mainover/opt(rsync--delete) silently reverted these changes on the VM — immediately breaking implementer session resumes (TM-401 "Claude exited with code 1" at 18:48 UTC) until the newer build was redeployed (~20:37 UTC). Making the repo the source of truth again prevents a repeat.Changes
claude.tscollects capacity evidence from stream events (rate-limit rejections, 429/529 retries, out-of-credits);sessions.tstracks provider readiness (provider_state_changed) and falls back to the Claudex runner, recording the downgrade. New ops wrappers:claudex,claudex-fable,codex-provider-gate.sh.artifacts.ts(content-addressed bundle store),viewer.ts(self-contained HTML viewer),server.tsroutes with management-token auth — backs the artifact viewer on the daemon host.proxy-accounts.sh,provision.shupdates,trustedEnvpassthrough into child sessions.admin, this logsreconcile_webhook_failedonce per minute per app — consider gating or downgrading that log line in a follow-up.Validation
pnpm typecheck,pnpm build— cleanpnpm test— 14 files, 204 passed / 1 skippedbash -n ops/provision.sh— OK🤖 Generated with Claude Code