Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Let channel agents inspect compute usage and request bounded resizing

Ouverte
#414 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
12/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
typescript

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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.

Langage dominant
TypeScript
Étoiles
1
Forks
0
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de githubnext/ace2

Toutes les issues de githubnext/ace2

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.