AK-Benchbenchmark report

datasets/_sources/depweaver/README.md

Depweaver

An offline semantic-version dependency resolver with optional features,

environment markers, partial lockfile updates, conflict learning, backjumping,

graph analysis and package metadata tooling. It uses only Python 3.12's standard

library. Read SPEC.md for the observable search and rollback contract.

The source project is correct before benchmark mutations. Ordinary repository

tests exercise versions, metadata and straight-line resolution. The benchmark

regression spans cooperating solver modules and requires harder scenarios than

those local tests. Keep all public APIs, formats and contracts intact.

PYTHONPATH=src python -m pytest tests
PYTHONPATH=src python -m depweaver.cli --help

No external registry, network, package installation, wall clock or subprocess

solver is required. Do not replace the resolver with enumeration over the full

repository Cartesian product: generated stress tests include large irrelevant

domains, cycles and conflict-driven backtracking. Learned state and caches must

remain semantically sound across repeated solve calls on one Resolver.

Project tooling is part of the compatibility surface. requirements and

manifest parse requirements, TOML groups and target profiles; metadata imports

offline Core Metadata. catalog edits immutable metadata snapshots using

reversible revisions. session records and replays solves, while workspace

publishes project lock updates transactionally and matrix combines targets.

validation checks results independently of the search implementation.

explain, constraints and reports expose provenance, deletion-minimal root

conflicts, direct candidate diagnostics, update impact and graph summaries.

planner creates reversible environment plans; audit matches offline

advisories; inventory exports checksummed software inventories. wheels checks

compatibility tags and RECORD integrity without installing anything. store

provides verified immutable artifact blobs, indexes and explicit garbage

collection. These modules consume the resolver's public records and make its

state isolation, feature closure and lock correctness observable to callers.