6.0.0
@metamask/kernel-browser-runtime 0.5.0
Added
- Add console forwarding utilities (
setupConsoleForwarding,handleConsoleForwardMessage,isConsoleForwardMessage) (#798) - Add caplet vat support to kernel facade and subcluster launching (#753)
- Add CapTP infrastructure (
background-captp,kernel-captp,kernel-facade) (#751) - Add relay query string utilities and relay-based kernel worker initialization (#638)
- Add
resetStoragequery parameter support and removecreateWorkerUrlWithRelaysexport (#642)
- Add
- Add
PlatformServicesClientandPlatformServicesServerfor kernel-to-kernel network comms (#578)- Add location hints parameter to
sendRemoteMessageinPlatformServicesClientandPlatformServicesServer(#666) - Add automatic reconnection with exponential backoff to
PlatformServicesClientandPlatformServicesServer(#678) - Change
PlatformServicesServerto no-op instead of throwing when stopping uninitialized remote comms (#692) - Add explicit connection management (
closeConnection) toPlatformServicesClientandPlatformServicesServer(#699) - Reject promises on connection loss in
PlatformServicesClientandPlatformServicesServer(#706) - Refactor remote location hint handling in
PlatformServicesClientandPlatformServicesServer(#712) - Add message sequencing and acknowledgment to
PlatformServicesClientandPlatformServicesServer(#744) - Rename
initNetworktoinitTransportinPlatformServicesServer(#749) - Add kernel incarnation detection to
PlatformServicesClientandPlatformServicesServer(#788) - Handle reconnection to restarted peers with incarnation ID detection (#807)
- Update
PlatformServicesClientandPlatformServicesServerfor ken protocol (#811) - Add cross-incarnation wake detection to
PlatformServicesClientandPlatformServicesServer(#822) - Add
getListenAddresses()method toPlatformServicesClient(returns empty array in browser) (#839)
- Add location hints parameter to
Changed
- BREAKING: Drop Node 20 support (#837)
- BREAKING: Remove
./default-clusterexport (#834) - Simplify kernel worker initialization (#718)
- Move default cluster startup to background and add internal comms infrastructure (#709)
- Migrate to
JsonRpcEnginev2 for kernel worker middleware (#707) - Bump
@metamask/snaps-utilsfrom^9.1.0to^11.6.1(#682)
Fixed
- Fix persistence handling in
VatWorkerClientandVatWorkerServer(#604)
@metamask/kernel-errors 0.5.0
Added
- Add permanent failure detection and network error code utilities (#789)
- Add
isResourceLimitError()utility (#776) - Add
ResourceLimitErrorerror class (#714) - Add
EvaluatorErrorandSampleGenerationErrorerror classes (#695) - Add
AbortErrorandisRetryableNetworkError()utility (#678) - Add
DuplicateEndowmentError(#619)
Changed
- BREAKING: Drop Node 20 support (#837)
Fixed
- Improve retryable network error detection (#697)
@metamask/kernel-platforms 0.1.0
Added
- Initial release.
@metamask/kernel-rpc-methods 0.5.0
Changed
- BREAKING: Drop Node 20 support (#837)
@metamask/kernel-shims 0.4.0
Added
- Add
./endoify-nodeexport for Node.js-specific lockdown initialization (#787) - Add
./endoify-repairexport forrepairIntrinsics-only lockdown (#578)
Changed
- BREAKING: Drop Node 20 support (#837)
@metamask/kernel-store 0.5.0
Added
Changed
- BREAKING: Drop Node 20 support (#837)
@metamask/kernel-ui 0.4.0
Added
- Add Remote Comms UI panel (#637)
- Update
RemoteCommsstatus display to usestate('connected'|'identity-only'|'disconnected') instead ofisInitializedboolean (#823)
- Update
- Include error details in garbage collection failure messages (#578)
Changed
- BREAKING: Drop Node 20 support (#837)
- Remove
reloadkernel action andreloadSubclusterfrom UI controls (#836) - Update MetaMask design system dependencies and React peer dependency to v18 (#746)
- Use
connectToKernelinstead ofestablishKernelConnectionfor kernel stream setup (#709)
Fixed
- Move
reactandreact-domtopeerDependenciesand fix build externals (#652)
@metamask/kernel-utils 0.4.0
Added
- Add vat bundle utilities (#763)
- Add
./libp2pexport withstartRelay()andifDefined()utility (#843) - Add
Promisified<T>utility type (#752) - Add
makeDiscoverableExo()constructor (#705) - Add retry utilities with exponential backoff and wake detection (#678)
- Add
mergeDisjointRecords()utility (#619) - Add
makeDefaultExoutility (#612) - Add hex encoding utilities (#578)
Changed
- BREAKING: Drop Node 20 support (#837)
@metamask/logger 0.6.0
Added
- Add tagless console and file transports (#828)
Changed
@metamask/ocap-kernel 0.6.0
Added
- Add
TextEncoder,TextDecoder,setTimeout, andclearTimeoutto vat globals allowlist (#856) - Add
IOManagerand IO kernel service for vat I/O streams (#840) - Add system subclusters and kernel facet service (#803)
- Buffer vat outputs to make cranks transactional (#794)
- Enqueue async vat syscalls immediately when outside a crank (#848)
- Add caplet vat type for lightweight vat configurations (#753)
- Add CapTP infrastructure for kernel-to-kernel communication (#751)
- Prevent vat endowment names from being overridden (#619)
- Add kernel-to-kernel remote communication via libp2p (#578)
- Add
remoteCommsstatus toKernel.getStatus()output (#637) - Add
relaysparameter toinitRemoteCommsfor configuring relay servers (#638) - Add location hint support to OCAP URL handling (#666)
- Fix kernel restart with open remote connections (#677)
- Add automatic reconnection with exponential backoff for remote comms (#678)
- Fix remote endpoint initialization to occur during registration rather than construction (#681)
- Fix shutdown handling to properly sequence crank completion, stream closing, and remote comms teardown (#692)
- Fix remote message queueing during connection establishment (#697)
- Add explicit connection management for intentional disconnects (#699)
- Reject pending promises on connection loss (#706)
- Refactor remote location hint handling and add
registerLocationHintsplatform service (#712) - Add timeout handling for remote message sends and URL redemptions (#713)
- Add resource limits for remote communications (#714)
- Add message sequencing and acknowledgment to remote messaging (#744)
- Persist pending messages and sequence state in
RemoteHandleacross restarts (#760) - Add rate limiting for remote messages and connections (#776)
- Add BIP39 mnemonic support for kernel identity seed recovery (#780)
- Add kernel incarnation detection protocol for identifying peer restarts (#788)
- Add permanent failure detection for reconnection attempts (#789)
- Add incarnation ID infrastructure and handshake module (#800)
- Handle reconnection to restarted peers with incarnation ID detection (#807)
- Complete Ken protocol implementation for reliable remote message delivery (#811)
- Implement distributed garbage collection protocol for remote references (#814)
- Add cross-incarnation wake detection to reset backoffs on peer restart (#822)
- Enable OCAP URL issuance and redemption without active remote comms (#823)
- Add direct transport support (QUIC + TCP) for Node.js peer connections (#839)
- Add
initRemoteCommsandregisterLocationHintsRPC methods for kernel control (#849) - Fix trailing comma in OCAP URLs when no relays are known (#850)
- Allow plain
ws://connections for relay dialing (#855) - Restrict plain
ws://relay dialing to private and explicitly allowed addresses (#857) - Accept
allowedWsHostsparameter ininitRemoteCommsRPC (#858) - Re-dial relays on connection close with exponential backoff (#860)
- Add
Changed
- BREAKING: Drop Node 20 support (#837)
- Close database in
Kernel.stop()(#845) - Remove
reloadConfigandreloadSubclustermethods fromKernel(#836) - Export
BaggageandVatPowerstypes (#801) - Load vat bundles via Vite instead of
@endo/import-bundle(#763) - Extract
VatManagerandSubclusterManagerfromKernelclass (#651)- Extract
RemoteManagerandKernelServiceManagerfromKernelclass (#653)
- Extract
- Migrate kernel service dispatch from
FartomakeExo(#612)
Fixed
- Disable cache for default bundle fetch (#802)
- Clean up orphan messages during recovery (#769)
- Fix message delivery to terminated vats (#617)
- Handle messages remaining in queue after kernel restart (#611)
- Fix kernel initialization and operation with persistent storage (#604)
@metamask/streams 0.5.0
Changed
- BREAKING: Drop Node 20 support (#837)