0.2.0
Release date: September 30, 2026
| Task | Type | Summary | Description |
|---|---|---|---|
| PADAS-896 | Bug | Live subscribers stay connected after stream setting changes | Fixes a stall after PUT /api/v1/streams/{id} changed WAL, buffering, or retention: running tasks and connectors keep receiving events without a task restart. |
| PADAS-878 | Bug | PDL bracket access for hyphenated JSON keys | fields, eval, and rename accept keys such as headers["x-forwarded-client-ip"] and headers[0]. Unquoted hyphenated names stay invalid, and eval a - b is unchanged. |
| PADAS-855 | Task | PDL lookup in Core | Enables PDL lookup in Core, with test coverage, so operators can use lookup in stream workflows. |
| PADAS-876 | Bug | Enrollment issuer mismatch returns 401 | Fixes a bodyless 401 when the UI minted an issuer from its bind address (for example 127.0.0.1) while enrollment stored another host (for example localhost). Use one issuer across UI, enrollment, and validation; PADAS_UI_ISSUER_URL overrides it when needed. |
| PADAS-805 | Task | Encrypt Core connector-registry secrets at rest | Sensitive Core connector-registry fields are encrypted with padas-secrets-base. The UI decrypts deployment inputs with its key, sends them over TLS and S2S, and Core re-encrypts them with its data-encryption key. |
| PADAS-818 | Task | Encrypt Lookup service-registry secrets at rest | Applies the same at-rest protection to Lookup service-registry secrets under $PADAS_HOME/lookup/data/security/. |
| PADAS-863 | Task | Sensitive fields in the UI SDK integration | Handles sensitive fields in the UI SDK integration so those values follow the same protection model as the service registries. |
| PADAS-721 | Task | Return to the requested page after login | After authentication, the UI opens the page the operator asked for instead of always sending them to home. |
| PADAS-781 | Task | Stream status, dropped events, and recent Core errors | Keeps metric history in SQLite, tracks subscriber drops, and adds low-frequency Core diagnostics for recent runtime errors. |
| PADAS-852 | Task | Assignment and deployment workflow | Updates how operators assign and deploy configuration. |
| PADAS-853 | Task | Create Core, Enroll Core, and remove a Core | Updates Core creation and enrollment, including removing a Core from configuration. |
| PADAS-854 | Task | Lookup Manager | Adds Lookup enroll and operator administration from the UI. |
| PADAS-901 | Task | Shared logging initialization | Core, Lookup, Chronos, and Catalog use padas-config-base::init_logging for file and console output, rotation, non-blocking appenders, and logging-handle management. |
| PADAS-872 | Task | One Motion Service license for packaged services | Core, Lookup, Catalog, and Search ship the license from padas-docs/legal/motion-service-license.txt, copied to $PADAS_HOME/<service>/LICENSE. |
| PADAS-807 | Task | Architecture and specification documentation | Finalizes the architecture and specification documentation for this release. |
| PADAS-845 | Task | Chronos follow-on docs aligned with Core | Aligns the Core and documentation repositories with the Chronos follow-on work. |
| PADAS-808 | Task | Catalog gateway, warehouse registry, and Iceberg REST proxy | Adds the padas-catalog service, warehouse registry CRUD with encrypted credentials, Lakekeeper reconciliation, and a deny-by-default Iceberg REST proxy. Management stays loopback-only; the proxy allows catalog:read and catalog:write. |