fix: keep agent alive across worker crashes

This commit is contained in:
CoolBoy
2026-08-21 03:38:06 +08:00
parent 85f6cb5157
commit 6eb7ded984
7 changed files with 183 additions and 26 deletions

View File

@@ -362,19 +362,24 @@ counts fail closed for older candidates, and no startup or periodic cleanup can
cancel a task by date. It also keeps unclassified/ambiguous historical failures
neutral in GPU/framework success feedback while preserving deterministic OOM
and architecture cleanup.
Version `2026.08.15.3` replaces the 70/30 quota with hierarchical success-first
Version `2026.08.21.1` replaces the 70/30 quota with hierarchical success-first
routing, dynamically gates models through the official GPU/task/framework/config
APIs, enriches ModelScope metadata and model lineage, learns only proven safe
config vectors, and adds crash-safe write-ahead state synchronization to the
`agent-state` branch. It also exposes `/ready` and extends deterministic cleanup
to officially removed waiting GPU/framework routes. State recovery uses the
pure-Python Dulwich client, avoiding slow OS package installation during builds.
The HTTP process now supervises the submission worker with exponential restart
backoff instead of exiting the container, while `/health` remains a liveness
probe and `/ready` reports worker availability. Poll and cleanup summaries are
bounded in memory, and the last 200 worker crash records are synchronized with
the durable state branch for post-restart diagnosis.
## Deploy
Create a tag and submit the repository URL plus tag in "我的适配智能体".
```bash
git tag -a agent-v27 -m "ModelHub agent 2026.08.15.3"
git push origin main agent-v27
git tag -a agent-v28 -m "ModelHub agent 2026.08.21.1"
git push origin main agent-v28
```