Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
61 lines (56 loc) · 3 KB
/
Copy pathpyproject.toml
File metadata and controls
61 lines (56 loc) · 3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# hardmap -- one published distribution that bundles the thin CLI plus the four
# research packages, so the internal edges (foundry->eightfold,
# proof-census->desertmap) resolve by construction rather than via co-install.
# Fast tier runs on a single py>=3.10 + numpy<2 environment; torch is only needed
# for the full tier (desert-map compute paths + proof-census C3 resampling).
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[project]
name = "hardmap"
version = "1.0.0"
description = "Reproducible evidence for the charge-atlas / proof-space program: atlas, oracle line, proof census, and a single repro CLI."
readme = "README.md"
requires-python = ">=3.10"
license = "Apache-2.0"
authors = [{ name = "Vishnu Vettrivel" }]
keywords = ["computational-complexity", "proof-complexity", "reproducibility"]
# Union of the four sub-packages' fast-tier runtime deps (they ship as one
# distribution, so their individual [project.dependencies] must be consolidated
# here). eightfold/foundry cores are stdlib-only; their numpy/scipy come from the
# shared fast-tier set below. desert-map contributes the SAT verifier.
dependencies = [
"numpy>=1.24,<2",
"scipy>=1.10",
"pyyaml>=6.0",
"python-sat>=1.8", # desert-map SAT verifier (import `pysat`); reused by proof-census
]
[project.optional-dependencies]
# full tier: desert-map compute + proof-census C3 resampling + artifact storage
full = ["torch>=2.2", "scipy>=1.11,<1.14", "pyarrow>=15", "huggingface_hub>=0.23"]
viz = ["matplotlib>=3.8"]
dev = ["pytest>=7.4"]
# THE READ SURFACE, AND ONLY THE READ SURFACE (ruled 2026-07-28).
#
# `hardmap` reads: repro, verify, anatomy, atlas, over frozen artifacts. `foundry` WRITES — it reserves
# rows, advances the catalog, appends to the maptrail — and it is deliberately absent here. It is
# declared in foundry/pyproject.toml instead, so an operator working from a checkout gets it and someone
# who ran `pip install hardmap` does not.
#
# This is not tidiness. The frontier is a blindness mechanism: reserved rows are declared and NOT
# CAPTURED, which is what lets predictions be hashed before their frames exist. A stranger reproducing
# the paper who could advance the frontier by mistyping a subcommand would destroy the blindness the
# claims rest on. Keeping the verb out of what ships makes that impossible rather than merely detected —
# Kill 2 promoted from a detection rule to an impossibility.
#
# DO NOT ADD `foundry` HERE. `foundry/tests/test_cli.py` fails if you do, and the failure is the point.
[project.scripts]
hardmap = "hardmap.cli:main"
[project.urls]
Repository = "https://github.com/cloudronin/hardmap"
# Package discovery is dynamic (see setup.py): each product dir is scanned and
# only its import package (eightfold/eightfold -> `eightfold`, desert-map/desertmap
# -> `desertmap`, ...) plus subpackages are kept -- tests/docs/dev excluded and
# cross-root name collisions avoided -- bundling all five into one distribution.
[tool.setuptools]
license-files = ["LICENSE", "LICENSES/*.txt", "NOTICE"]