Skip to content

Declare uv extras for the base-cli test contract #405

Description

@codeforester

Goal

Opt the base-cli repository's authoritative test command into the optional uv
dependency groups it already documents, so basectl setup base-cli prepares
the environment required by basectl test base-cli.

Background

base_manifest.yaml declares python.manager: uv and runs
./tests/full_validate.sh. The test suite includes the benchmark gate, whose
comparator contract requires the cyclopts package from the benchmark extra.
The Base enhancement in basefoundry/base#2393 / PR #2394 adds the generic
test.uv_extras manifest contract and carries it through uv setup and test
execution.

Scope

  • Add uv_extras: [dev, typer, quality, benchmark] to base_manifest.yaml.
  • Keep the existing command and dependency declarations unchanged.
  • Verify the manifest remains compatible with the Base setup and test flow once
    the paired Base PR is available.

Acceptance Criteria

  • base_manifest.yaml declares the dev, typer, quality, and
    benchmark uv extras for the test command.
  • basectl setup base-cli selects those extras through the Base manifest
    contract.
  • basectl test base-cli reaches the benchmark comparator contract without
    requiring a separate user install command.
  • Existing base-cli validation remains green.

Validation

  • ./tests/full_validate.sh
  • basectl setup base-cli
  • basectl test base-cli

Non-Goals

  • Do not duplicate benchmark dependencies outside pyproject.toml.
  • Do not change the benchmark implementation or comparator policy.
  • Do not merge the companion PR until the paired Base enhancement is available.

Project Fields

  • Status: Backlog
  • Priority: P2
  • Area: Setup
  • Initiative: pyproject/uv
  • Size: T

Activity

  1. moved this to Backlog in base-clion Oct 1, 2026
  2. codeforester commented on Oct 1, 2026

    @codeforester
    ContributorAuthor

    Generic support is open in base PR #2394: basefoundry/base#2394. This adoption PR intentionally waits for that Base enhancement; after both merge, run 'basectl setup base-cli' and then 'basectl test base-cli'.

  3. added this to the v0.5.0 milestone on Oct 1, 2026
  4. self-assigned this
    on Oct 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or product improvement

Type

No type

Projects

  • Status
    Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions