Repository navigation
v9.0.2
Patch release. Three self-contained fixes from the Phase X.2 punch-list — all internal; the CLI, config.yaml, and the L2 institution YAML keep their shapes (a customization carried across the v9.0.1 → v9.0.2 line needs no changes).
- Dataset-parameter
StaticValuesdefaults are 1-element sentinels, not the full declared-value list (X.2.t.2). AWS QuickSight'screate-data-setrejects aStringDatasetParameter.DefaultValues.StaticValueslist with >32 elements — so a per-sheet dropdown defaulting to "every declared value" blew up an L2 with >32 rails / chains / templates / transfer_types / roles. The dataset SQL is now shapedWHERE ('<sentinel>' IN (<<$pX>>) OR <col> IN (<<$pX>>))so the 1-element sentinel default means "match everything" on load (identically for the QuickSight renderer — theMappedDataSetParametersbridge overrides on selection — and the self-hosted renderer — the executor splices the sentinel default, or binds real URL values to narrow). The control's options still carry the full declared list (AWS caps only the dataset-param default). Belt-and-braces:common/models.py::*DatasetParameterDefaultValues.__post_init__now raises if aStaticValueslist exceeds 32 — the bug is unrepresentable at construction. Mirrors the pattern the L1account_id/transfer_iddropdowns already used since Phase Y. (Outstanding: a live AWS deploy against a >32-rail L2 to confirm againstcreate-data-setitself — low-risk; the SQL shape is identical to the already-deployed pattern and theDataSetParametersshape is unchanged, so no new rejection surface.) quicksight-gen docs serveworks from a non-editablepip install(X.2.s.1).docs servewas running mkdocs without settingcwd, whiledocs applydoes — and mkdocs-macros resolves itsinclude_dir: docs/_macrosagainst the process cwd, not the config file's directory. From an installed wheel (cwd = wherever the operator ran the command, nodocs/_macros) the initial build died with"docs/_macros does not exist"before serving a single page. Fix:cwd=<bundled mkdocs.yml's dir>, mirroringdocs apply. Regression guards: a unit test plus aci.yml::docs-portable-installstep that runsdocs servefrom a clean cwd under a timeout and asserts it reaches "Serving on" without the macros-path error.spec_example(the default / CI L2) now exercises every L2FT completion outcome (X.2.u.3.fix.demo). Added a TwoLegRail-first transfer template (ExternalReconciliationCycle), its leg rail, andspec_example's firstchains:entry (a Required chain child). The auto-scenario now fires template instances covering{Complete, Imbalanced, Orphaned}and chain instances covering{Completed, Incomplete}, so the L2FT Chains + Transfer Templates "Completion" filter e2e tests are strict again (were relaxed because the prior single-leg-rail template only ever fired 'Imbalanced'). Re-locked the three byte-stampedspec_exampleseed files (postgres/oracle/sqlite) + the two bundled fixture copies.
Still open from X.2.s: docs apply --portable dropping the L2 theme (X.2.s.2) — couldn't reproduce from code reading; needs a fresh-wheel repro to pin the failure mode. Tracked as a follow-up.
(Everything below is unchanged from the v9.0.1 notes.)