-
SPARK v1.11.0
Stablereleased this
2026-09-07 10:28:28 +00:00 | 24 commits to main since this release2026-09-07 - 1.11.0
Fixes
- preserve canonical daemon ownership during upgrades (installer)
- Preserve smartdaemon_spark.service, service enablement, configuration, and neighboring installation assets during binary replacement.
- Reject conflicting service or command ownership before stopping daemons or replacing the executable.
- Stage verified binaries on the target filesystem, retain the previous executable, and restart only a previously active canonical daemon.
- Cover direct and stdin installer execution, source-only loading, service states, ownership conflicts, and publication or restart failures in installer tests.
- add compiled SmartDB identity engine qualification (identityengine)
- Add a Linux-only Deno qualification test that verifies SmartDB native engine provenance, explicit binary selection, exclusive socket ownership, and transaction recovery after engine termination.
- Add SmartDB and SmartData test imports and configure Deno dependency-age exclusions for the trusted @push.rocks scope.
- Document qualification coverage and remaining production identity/bootstrap cutover limits.
- harden identity runtime ownership with SmartDB native leases (identity-runtime)
- Replace the Spark advisory owner lock with SmartDB 5.8.0 current-format-only startup and native file-root leasing.
- Use per-start private IPC directories so rejected contenders cannot remove the active owner's socket.
- Preserve native ownership during startup deadlines, shutdown deadlines, and database close failures until cleanup can be retried.
- Add Pallet enrollment cross-artifact qualification coverage and update identity runtime documentation/tests.
- qualify pallet enrollment with real Cloudly TLS fixture (enrollment-fixtures)
- Replace the in-process Cloudly stub with a disposable Cloudly owner using the installed TypedRequest router over loopback TLS.
- Restart Spark, Pallet, and Cloudly SmartDB-backed owners to verify committed acknowledgement recovery and credential convergence.
- Update qualification documentation for the five-argument fixture invocation and clarified integration scope.
- stabilize startup timeout cleanup assertions (identityruntime-test)
- Trigger the startup deadline only after initialization reaches the held phase instead of relying on native timeout duration.
- Wait for the owned shutdown cleanup operation to settle before asserting released runtime resources.
Features
- add durable private Spark identity store (identity)
- Introduce a SmartData-backed SparkIdentityStore with prepare, bind, acknowledge, inspect, and active credential read flows
- Add identity schema validation, exact persistence models, replay/conflict handling, and receipt tracking
- Expand identity engine tests and documentation to cover pending and active credential recovery across engine restarts
- add protected identity runtime owner (identity)
- Introduce SparkIdentityRuntime to verify engine artifacts and protected filesystem paths before starting SmartDB.
- Acquire a persistent owner lock before migrations and drain accepted operations during shutdown.
- Refactor the compiled identity engine fixture and add lifecycle tests for ownership, startup, shutdown, and cleanup failures.
- add versioned legacy bootstrap import (bootstrap)
- Run versioned migrations during protected identity runtime startup before identity readiness
- Add installer-only legacyImport handling for trusted npmextra JSON sources with strict path, ownership, permission, and content validation
- Persist imported configuration, legacy node credential, Coreflow jump code, source path/hash, and completion stage in an exact SmartData document
- Document the bootstrap import flow and add integration tests for validation, replay, concurrency, and runtime startup behavior
- add imported authority adoption and enrollment recovery flows (identity)
- Add Spark identity adoption preparation backed by imported bootstrap provenance and authenticated enrollment state checks.
- Require token hash binding for identity proposals and persist adoption provenance on pending state and receipts.
- Add private enrollment bind, acknowledge, and recovery helpers using the shared interfaces enrollment contract.
- Bump @serve.zone/interfaces to 28.1.0 and update identity store coverage for adoption, replay, conflict, and recovery cases.
- add durable enrollment coordinator (enrollment)
- Add SmartData-backed enrollment models and schema validation for immutable enrollment intent, state, proposals, and acknowledgements.
- Coordinate jump and adoption flows across Spark, Pallet, and Cloudly with resumable prepared, bound, acknowledged, and complete stages.
- Recover bound, acknowledged, and completed enrollment state after native engine restarts, with tests covering lost results, conflicts, cancellation, and concurrency.
- Document enrollment coordinator behavior and source map updates.
- add bounded Cloudly HTTPS transport (enrollment)
- Implement SparkEnrollmentHttpTransport for fixed-origin TypedRequest enrollment state and enroll RPCs
- Enforce request and response size limits, cancellation draining, disabled retries/streams/hooks, and sanitized transport error codes
- Add the TypedRequest dependency, TLS-focused tests, and enrollment transport documentation
- add Pallet enrollment Unix socket transport (enrollment)
- Implement prepare, bind, and activate calls against Pallet enrollment requests from @serve.zone/interfaces 28.2.0.
- Validate protected Unix socket endpoints and use bounded length-prefixed JSON frames with strict response handling, deadlines, and cancellation support.
- Add Unix socket transport tests covering bindings, malformed frames, endpoint replacement, timeouts, cancellation, and replay behavior.
- add persistent Spark settings store (settings)
- Expose SparkSettingsStore through SparkIdentityRuntime after migrations and model initialization
- Persist host update and heartbeat settings with validation, frozen snapshots, and optimistic revision updates
- Add v2 migration that seeds settings from npmextra bootstrap imports while preserving later user edits
- Cover fresh provisioning, import replay, conflicts, ambiguous writes, restarts, and crash recovery in tests
Downloads
- preserve canonical daemon ownership during upgrades (installer)