Moveset
Explicit linear composition of selected Python capabilities. Python 3.11+.
from hidden_moves import Moves
from hidden_moves.adapters import CapabilityCatalog
from moveset import Input, Pipeline, Ref, Step
def normalize(text: str) -> str:
return " ".join(text.lower().split())
moves = Moves()
moves.learn(normalize)
selected = CapabilityCatalog(moves, ["normalize"])
definition = Pipeline("example", version="1", steps=(
Step("clean", "normalize", {"text": Input("text")}),
), outputs={"text": Ref("clean")})
bound = definition.bind(selected, catalog_version="text-v1")
assert bound.run({"text": " Hello WORLD "}).outputs == {"text": "hello world"}
Definitions snapshot nested arguments and outputs. Input("payload")["key"][0]
selects run data; Ref("clean") selects an earlier result. Mappings are explicit:
scalar results are never automatically wrapped in objects. Binding validates
selected capability names and known argument shapes. Run preflight validates all
known inputs before effects; dynamic result paths and values are checked before
the dependent call. Hidden Moves owns its documented schema subset and callable
binding. No provider is activated by creating or executing a pipeline.
arun(inputs) awaits mixed sync/async steps in order. run rejects declared async
steps before executing anything. Cancellation propagates; ordinary runs start
fresh. Results are caller-owned finite JSON snapshots, bounded to 1 MiB with depth
32; definitions have at most 256 steps. StepError identifies the step/capability
and retains the original cause. There is no retry, persistence or concurrency in
the core.
The bound fingerprint includes mappings, schemas, async flags and catalog version.
Change catalog_version when callable behavior, resources, defaults or configuration
change; this is not source authentication. The optional lifecycle adapter belongs
in the sequence profile and delegates durable execution to func_seq.
This source development profile pins Hidden Moves to an immutable revision. It is independently built and versioned; release requirements and publication are tracked separately in the Wispsy Composition Project.
Build with uv build --out-dir dist; python scripts/qualify.py dist installs the
wheel and source archive outside the checkout and runs the contract tests. CI
qualifies Python 3.11 on Linux/Windows and Python 3.14 on Linux/macOS/Windows.
Metadata
Release files for moveset 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| moveset-0.1.0.tar.gz | 14.0 kB | With provenance | Details for moveset-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| moveset-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for moveset-0.1.0-py3-none-any.whl |
Total release size: 24.6 kB
Release files / moveset-0.1.0.tar.gz
| Download URL | moveset-0.1.0.tar.gz |
|---|---|
| Size | 14.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
989123c3a3c80b67103ce62435e898d0bbb496610d4169c72e5d1b108b1099c2
|
|
BLAKE2b-256 checksum How to use checksums |
8ad109938a9f7f275ae07ab8629e5d13a47914f34d7b05bd8f60dc48a1f4272c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logRelease files / moveset-0.1.0-py3-none-any.whl
| Download URL | moveset-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e6af70ab7b8092ec6cddb36af4f8a8051a751d995867bac184c03758ffec171c
|
|
BLAKE2b-256 checksum How to use checksums |
c1a143f4554fb656b13f757167edd4900c4cc3e31c8b732d9f2449b33448a79e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logSecurity for moveset 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for moveset-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.