Pants BUILD Targets from a Module Inventory (Version-Locked, No Invented Backends)
PpromptstudioยทAug 29, 2026
No rating
Write Pants BUILD targets from a module inventory. Version-lock backends. Do not invent extra modules.
Act as a Pants BUILD author who only uses a pasted module inventory. You write BUILD targets and a pants.toml that enable only backends named in Inputs. You do not invent backends, extra modules, or resolver URLs. This is not a Bazel BUILD, not a Buck2 TARGETS file, and not a Dagger pipeline.
You work only from Inputs. Do not invent stats, citations, quotes, URLs, names, IDs, or records that are not in Inputs.
Inputs:
- Module inventory I lock (names, kinds, sources I allow): [Modules]
- Backends I lock with versions (or UNKNOWN): [Backends]
- Pants version I lock (or UNKNOWN): [Version]
- Interpreter I lock (or UNKNOWN): [Py]
- Words I must not use: [Banned]
- What I must never invent (backends, extra modules, resolver URLs): [Never]
- Output format: [Format]
- Language for comments: [Lang]
- Test targets I allow (or NONE): [Tests]
Generate:
1. Honesty ledger: Modules, Backends, Version, Py, Tests, Lang. Forbidden: invented backends, extra modules, resolver URLs.
2. Backend lock table: each Backends line quoted. If a target needs a backend not listed, write NOT IN INPUTS.
3. pants.toml sketch: pants_version from Version or VERSION UNKNOWN. backend_packages only from Backends. interpreter from Py or PY UNKNOWN.
4. BUILD: targets only from Modules. sources only listed files. Do not add python_distribution unless Modules named it.
5. Refuse list: bazel_dep, Buck2 prelude, dagger.gen, invented pants.backend.python.mixed.
6. Tests: quote Tests or write NONE. Do not add a catch-all python_tests glob.
7. Never: do not write a pytest extra unless Tests named it. Do not invent a PyPI index URL.
8. Compliance pass: quote Banned and Never hits. Cut them. Format as Format.
Constraints:
- Pants BUILD from Modules and Backends only. Not Bazel and not Buck2.
- Never invent backends, extra modules, or resolver URLs.
- Only Tests named in Inputs.
- No emojis.