-
v1.12.0
Stablereleased this
2026-09-11 11:17:19 +00:00 | 12 commits to main since this releaseSealed TsPack release. Manifest SHA-256: c76550462afe2564e3327080c8c1c6a99d7de94ed0919614bcf5478268b37ad6. See changelog.md at this tag.
Downloads
-
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)
-
SPARK v1.10.1
Stablereleased this
2026-09-05 01:46:26 +00:00 | 38 commits to main since this release2026-09-05 - 1.10.1
Fixes
- generate default Coreflow authority IDs reliably (coreflowowner)
- Wrap crypto.randomUUID in a function so default authority creation does not call an unbound method.
- Add coverage for generating and reusing a durable Coreflow authority across startup sessions.
Downloads
- generate default Coreflow authority IDs reliably (coreflowowner)
-
SPARK v1.10.0
StableRelease / build-and-release (push) Successful in 2m47sreleased this
2026-08-12 14:33:29 +00:00 | 40 commits to main since this release2026-08-12 - 1.10.0
Features
- Send authenticated Spark Swarm observation v2 reports after accepted heartbeats with exact replay, bound receipt validation, abortable Docker reads, and fail-closed reporter-session quarantine.
Fixes
- Configure deterministic Deno-native release preflights so source releases do not run the npm consumer postinstall before tag assets exist.
- Pin the release actions and Deno compiler used to build published Spark binaries.
Downloads
-
SPARK v1.9.1
StableRelease / build-and-release (push) Successful in 3m44sreleased this
2026-08-12 01:20:58 +00:00 | 44 commits to main since this release2026-08-12 - 1.9.1
Security
- Add durable Swarm-authoritative Coreflow ownership with exact node projection, secure host marker and session lock, authority-gated resource mutations, safe legacy adoption, persistent state placement, and fail-closed service, secret, and network reconciliation.
- Pin Coreflow to one manager-owned replica with exact Docker socket, persistent state, placement, secret target, and network shape while allowing its known webgateway and read-only cgroup self-maintenance additions.
- Create Coreflow at zero replicas, prove the complete stopped service shape, and only then start it; failed creation proofs remove the exact newly created service or secret.
- Verify downloaded release binaries against the exact published SHA256 entry before stopping services or replacing an installation.
Fixes
- Pull managed mutable image tags through the Docker 7.9 provenance API, serialize the exact requested tag, and fence Coreflow stop operations by fresh service version and authority labels.
- Roll back partially started daemon subsystems and task schedules, release the Coreflow session lock only after reconciliation settles, drain failed Cloudly responses, and terminate host-update and node-action process trees on command failure or daemon signals.
- Defer Cloudly node actions until initial reconciliation completes, share overlapping service-update requests, and report non-owner skips as failed actions.
- Bound and cancel self-update requests, drain scheduled updates during shutdown, and terminate heartbeat metric subprocesses before their tracked collection settles.
- Retain versioned release assets, fail publication on Gitea API or asset validation errors, and keep new releases private until every asset is uploaded.
Downloads
-
SPARK v1.9.0
Stablereleased this
2026-08-01 00:51:09 +00:00 | 48 commits to main since this release2026-08-01 - 1.9.0
Features
- Add a serialized, read-only Spark Swarm observation v2 producer with
local-only worker identity and digest-verified complete manager snapshots.
Downloads
- Add a serialized, read-only Spark Swarm observation v2 producer with
-
SPARK v1.8.1
Stablereleased this
2026-07-11 22:21:03 +00:00 | 52 commits to main since this release2026-07-11 - 1.8.1
Fixes
- report accepted Spark heartbeats as connected in Cloudly
- Keep
connectingas a local in-flight state while reportingconnectedin heartbeat payloads that Cloudly can accept and persist. - Mark collection, transport, and rejection failures as
failedlocally. - Add regression coverage for the first and subsequent accepted heartbeats.
- Keep
Downloads
- report accepted Spark heartbeats as connected in Cloudly