Let channel agents inspect compute usage and request bounded resizing
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 12/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- typescript
- Domínio
- backend, infrastructure
Direção de pesquisa
Start with the manual HTTP resize path in services/compute, which switches between standard-1 and standard-4 via checkpoint, destroy, start, restore and reconnect, and with the idle-only resize operation it calls. Then look at packages/channel to see where an agent-facing tool would sit without adding provider-specific logic. Done means the agent can read current size and usage, a policy-allowed request is durably queued and applied between runs, and out-of-policy or repeated requests leave compute unchanged.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Follow-up to #216 and the services/compute pilot.
The pilot exposes manual HTTP resizing among standard-1 through standard-4. Resizing requires an idle channel and performs checkpoint → destroy → start → restore → reconnect. Agents currently have neither resource measurements nor a tool for requesting a different allocation.
Add an agent-facing capability to inspect the current allocation and request a supported size within an operator-defined policy. Keep provider-specific allocation and lifecycle operations in the compute adapter; packages/channel must remain runtime-neutral.
Acceptance:
- Report current size and measured CPU, memory, and filesystem usage, with a sampling window and unavailable metrics identified. Include evidence of resource exhaustion when the runtime supplies it; a generic command failure alone is not a sizing measurement.
- Let the operator configure allowed sizes, a maximum size, and a cooldown/attempt limit. Requests within that policy need no per-change approval. Reject unsupported or out-of-policy requests before changing compute.
- Handle the active-run boundary explicitly. For the first implementation, durably queue a request and apply it after the requesting run ends and the channel is idle; do not call the current idle-only resize operation from a busy tool and report success. Report requested, pending, applied, and failed outcomes accurately, with idempotent request handling.
- Use the existing checkpoint/restore path and process-quiescence rules. A failed checkpoint or restart must retain recoverable filesystem state and surface the failure rather than repeatedly requesting larger machines.
- Make the resulting allocation and resize outcome visible to the next run. Preserve the channel identity and lanes, and keep pi authoritative for agent work.
- Validate with a real resource-constrained workload: inspect the measurements, request an allowed larger size, restore the dirty lane, and continue the workload successfully. Also verify an out-of-policy request and a repeated request do not change compute.
This starts with measured, bounded requests and resizing between runs. Automatic cost optimization, live process migration, and a desktop sizing UI are separate work.
- Linguagem predominante
- TypeScript
- Estrelas
- 1
- Forks
- 0
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de githubnext/ace2
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 94/100
githubnext/ace2#487 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 90/100
githubnext/ace2#486 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
githubnext/ace2#459 ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
githubnext/ace2#437 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
githubnext/ace2#442 ·
Todas as issues de githubnext/ace2
Issues semelhantes
-
area:workflow bug ready-for-human
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
fil-donadoni/tolaria#6108 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
apache/rocketmq-dashboard#7234 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
vitest-dev/vitest#11656 ·
Mantenedores costumam responder em até 1 dia
-
e2e-failure ready-to-code
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
redhat-developer/rhdh-plugin-export-overlays#4460 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
ehmpathy/rhachet-roles-bhrain#655 ·
Mantenedores costumam responder em até 1 dia