Stability Policy¶
StackSats uses SemVer for its documented stable surface.
Official support¶
- Python:
3.11and3.12 - Operating systems: Linux and macOS
release-gate.ymlenforces Linux full-suite validation and a macOS supported-platform smoke lane before release tags are publishable.- Windows: best-effort only until dedicated CI coverage is added
BRK compatibility note¶
StackSats also documents compatibility with the Bitcoin Research Kit (BRK) project and BRK-derived canonical data workflows. This is a project and data-workflow support statement only; it is not a guarantee of Rust crate API compatibility or crate re-exports. Use BRK Data Source for the canonical upstream links and data-contract wording.
Stable public API¶
The stable 1.x contract is intentionally narrow:
- top-level
stacksatsexports - documented artifact payloads emitted by the stable CLI flows
- documented CLI commands:
stacksats demo validate|backtest|exportstacksats data fetch|prepare|doctorstacksats strategy validate|backtest|export|decide-daily|run-daily|animatestacksats serve agent-api- documented hosted HTTP service:
/v1/decisions/*/v1/executions/*- Optional helper console scripts such as
stacksats-plot-mvrvandstacksats-plot-weightsare documented convenience tools, but they are outside the frozen stable CLI subset.
Lower-level modules are allowed to change between releases unless they are re-exported from top-level stacksats.
Internal and experimental surfaces¶
- Internal reference modules include generated API pages such as
stacksats.runner,stacksats.strategy_types,stacksats.eda,stacksats.backtest, andstacksats.export_weights. - Experimental/reference strategies are defined by catalog entries marked
tier="experimental". Their current implementation modules may live understacksats.strategies.experimental.*. - Experimental surfaces may change without SemVer stability guarantees.
Built-in strategy tiers¶
Stable supported built-ins:
UniformStrategyRunDailyPaperStrategySimpleZScoreStrategyMomentumStrategyMVRVStrategy
Experimental reference strategies:
ExampleMVRVStrategyMVRVPlusStrategy
Deprecation policy¶
After 1.0.0, any incompatible change to the stable surface requires:
- Documentation in the changelog and migration guide.
- An explicit deprecation note in the docs for the affected stable surface.
- At least one minor release of overlap before removal, unless a security or correctness issue requires an immediate break.
Optional dependency policy¶
- Base install: stable core library and non-visual CLI flows.
viz: plotting and animation commands.network: HTTP-backed helper modules such as BTC price fetching helpers.service: hosted agent API runtime.deploy: database/export integrations.stacksats-plot-mvrvis an optional helper script that requiresviz.stacksats-plot-weightsis an optional helper script that spans bothdeploy(DB access) andviz(rendering).
Install only the extras needed for your workflow.