Skip to content

Add a neutral resources: kit field for guest CPU and memory #475

Open

Description

@mogul

User need

A kit cannot express how much compute its work needs. When a kit's builds need more than the default, there is no declarative way to say so, and the result is silent under-provisioning.

Concrete instance (from the review of the devenv adoption ADR): a terraform-from-source build ran at the default 2 vCPU / 4 GB msb guest sizing and landed in OOM territory, roughly 4x slower than the equivalent sbx template.

Current behavior

acq sizes msb guests from an environment variable only. Kits cannot declare CPU or memory, so they cannot say "my builds need 4 vCPU / 8 GB".

Proposal

Add a neutral resources: field to the kit vocabulary for CPU and memory, max-merged across kits, using the same two-halves (create-time versus run-time) shape as the volumes: vocabulary in docs/adr/0023-neutral-volumes-kit-vocabulary.md. Guest sizing is a create-time concern: the backend must know it before boot.

Questions to settle

  • Schema and units for resources: (for example cpu: in vCPUs, memory: in MiB/GiB).
  • Merge semantics across built-in, team, and personal kits (max versus later-wins; may an extra kit raise but not lower?).
  • Backend mapping for msb guest sizing and the corresponding sbx behavior, including the default when no kit declares resources.
  • Validation and failure behavior when a requested size is unavailable.

Provenance

Factored out of the review of the devenv adoption ADR (GSA-TTS/agentic-coding-quickstart#474) so that guest sizing does not complicate that decision's adoption story.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions