• SPARK v1.11.0
    CI / Type Check & Lint (push) Successful in 45s
    CI / Build Test (Current Platform) (push) Successful in 1m0s
    Release / build-and-release (push) Successful in 13m5s
    CI / Build All Platforms (push) Successful in 16m14s
    Stable

    jkunz released this 2026-09-07 10:28:28 +00:00 | 24 commits to main since this release

    2026-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