@openclaw/matrix 2026.10.2 → 2026.10.5-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.setup/{account-selection-BDeeqwwR.mjs → account-selection-Bs_jCAaG.mjs} +3 -5
- package/dist/.setup/{approval-handler.runtime-QkHLH2az.mjs → approval-handler.runtime-rxLn8CbP.mjs} +60 -83
- package/dist/.setup/{channel-CeRXEAEP.mjs → channel-BcwGspPw.mjs} +92 -120
- package/dist/.setup/{channel.runtime-DBQA2y1F.mjs → channel.runtime-CUc6rbu1.mjs} +23 -18
- package/dist/.setup/{channel.setup-DC2t7_PK.mjs → channel.setup-CwuYD_CT.mjs} +2 -3
- package/dist/.setup/{cli-Be8tdNw8.mjs → cli-mbL9jCro.mjs} +80 -120
- package/dist/.setup/{cli-metadata-CtcjBFhc.mjs → cli-metadata-6MOGuyHq.mjs} +1 -1
- package/dist/.setup/{client-DY3HExqI.mjs → client-BlTvpEWC.mjs} +2 -2
- package/dist/.setup/{client-bootstrap-CZvJjr29.mjs → client-bootstrap-D05xy1HB.mjs} +2 -3
- package/dist/.setup/{client-support-D7BlioUb.mjs → client-support-D-xHScuo.mjs} +1 -1
- package/dist/.setup/{client-kmih04ng.mjs → client-vPPbaxNp.mjs} +14 -24
- package/dist/.setup/{create-client-CbJVyFDy.mjs → create-client-CroC4BVc.mjs} +4 -4
- package/dist/.setup/{credentials-C2dvc_kB.mjs → credentials-Bf9PQ7xs.mjs} +4 -18
- package/dist/.setup/{crypto-runtime-B2AjWo-i.mjs → crypto-runtime-CpJ0b7vY.mjs} +80 -123
- package/dist/.setup/{deps-CFNl7tQo.mjs → deps-L_1bUAGL.mjs} +20 -37
- package/dist/.setup/{direct-management-DJtQhLKH.mjs → direct-management-B3wYhx_M.mjs} +25 -51
- package/dist/.setup/{directory-live-DW5UykLL.mjs → directory-live-B1WbfSHo.mjs} +3 -3
- package/dist/.setup/{draft-stream-B87DfA6a.mjs → draft-stream-Bdrh7dRt.mjs} +2 -3
- package/dist/.setup/{encryption-guidance-BEjKbiMR.mjs → encryption-guidance-D5_IsDIy.mjs} +1 -1
- package/dist/.setup/{env-vars-dGqak9dN.mjs → env-vars-aEBngJPa.mjs} +2 -17
- package/dist/.setup/{event-helpers-CspuhE9k.mjs → event-helpers-CxNgMQqH.mjs} +5 -7
- package/dist/.setup/{exec-approvals-BLDAMyHs.mjs → exec-approvals-BgNWWJg1.mjs} +6 -12
- package/dist/.setup/{file-sync-store-Clc9iEdn.mjs → file-sync-store-BdKx_gMi.mjs} +2 -5
- package/dist/.setup/{http-client-DfJY5Ck0.mjs → http-client-ByR4STVQ.mjs} +55 -59
- package/dist/.setup/{messages-uCbwLRKS.mjs → messages-B1CZqU8u.mjs} +4 -16
- package/dist/.setup/{monitor-skIntQVG.mjs → monitor-Dk_fQL1k.mjs} +176 -232
- package/dist/.setup/{onboarding-Cm_tOJxs.mjs → onboarding-CrSexor_.mjs} +33 -50
- package/dist/.setup/{outbound-CqQou3ny.mjs → outbound-LR3SqPIq.mjs} +2 -2
- package/dist/.setup/{profile-update-C1n8SRqH.mjs → profile-update-C7bjaGR6.mjs} +2 -3
- package/dist/.setup/{reaction-events-Cqq46xsG.mjs → reaction-events-CTSvOlXO.mjs} +4 -4
- package/dist/.setup/{resolve-targets-DFeU1Ww6.mjs → resolve-targets-BVVbbvP6.mjs} +15 -21
- package/dist/.setup/{retired-state-BXUQ2I-C.mjs → retired-state-DW5pLH05.mjs} +22 -3
- package/dist/.setup/{room-info-BPMbwe8I.mjs → room-info-9Uqlpt1V.mjs} +4 -4
- package/dist/.setup/{sdk-CgQGkCsS.mjs → sdk-Cfc6m7fY.mjs} +115 -195
- package/dist/.setup/{secret-contract-JlB6VmI3.mjs → secret-contract-DSBRvhdZ.mjs} +1 -1
- package/dist/.setup/{secret-contract-api-B-iJoQEv.mjs → secret-contract-api-DzEJ-X7n.mjs} +1 -1
- package/dist/.setup/{send-B1Y2L4wj.mjs → send-LCOuTVc1.mjs} +10 -30
- package/dist/.setup/{setup-bootstrap-UNIGyKnk.mjs → setup-bootstrap-CV-hHBXu.mjs} +2 -2
- package/dist/.setup/setup-core-CKnNTfgD.mjs +673 -0
- package/dist/.setup/{setup-plugin-api-BRs9bcp4.mjs → setup-plugin-api-BDAYk1a5.mjs} +1 -1
- package/dist/.setup/{startup-verification-D00eUt74.mjs → startup-verification-CgfUb4yJ.mjs} +3 -3
- package/dist/.setup/{storage-D7agewjH.mjs → storage-DkC6bHgA.mjs} +24 -49
- package/dist/.setup/{subagent-hooks-D5kd_kzN.mjs → subagent-hooks-D8jyeQsO.mjs} +1 -1
- package/dist/.setup/{sync-cache-state-C2z64uyk.mjs → sync-cache-state-D4G-fi3t.mjs} +20 -33
- package/dist/.setup/{target-ids-Nwx7cMVE.mjs → target-ids-HhcaKX1n.mjs} +15 -1
- package/dist/.setup/{thread-binding-api-DRMC62cs.mjs → thread-binding-api-BvuaKpd0.mjs} +1 -1
- package/dist/.setup/{thread-bindings-DveHVZqN.mjs → thread-bindings-CT4P-OSZ.mjs} +38 -58
- package/dist/.setup/{thread-bindings-shared-hxKkYC1W.mjs → thread-bindings-shared-CbsFNbAY.mjs} +19 -37
- package/dist/.setup/{tool-actions-BqlK2ilM.mjs → tool-actions-DAp6_XSJ.mjs} +17 -18
- package/dist/.setup/{verification-kMlFYUn0.mjs → verification-B3VswneT.mjs} +15 -21
- package/dist/api.js +7 -7
- package/dist/channel-plugin-api.js +1 -1
- package/dist/cli-metadata.js +1 -1
- package/dist/contract-api.js +2 -2
- package/dist/doctor-contract-api.js +13 -22
- package/dist/helper-api.js +2 -2
- package/dist/index.js +1 -1
- package/dist/plugin-entry.handlers.runtime.js +2 -2
- package/dist/runtime-api.js +4 -4
- package/dist/secret-contract-api.js +1 -1
- package/dist/session-binding-contract-api.js +1 -1
- package/dist/setup-entry.js +2 -2
- package/dist/setup-plugin-api.js +1 -1
- package/dist/subagent-hooks-api.js +1 -1
- package/dist/thread-binding-api.js +1 -1
- package/dist/thread-bindings-runtime.js +1 -1
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/package.json +1 -1
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm.d.ts +129 -129
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.cjs +688 -688
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.js +512 -512
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.wasm +0 -0
- package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.wasm.d.ts +84 -84
- package/node_modules/@openclaw/fs-safe/CHANGELOG.md +35 -0
- package/node_modules/@openclaw/fs-safe/README.md +1 -1
- package/node_modules/@openclaw/fs-safe/dist/advanced.d.ts +1 -1
- package/node_modules/@openclaw/fs-safe/dist/advanced.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/archive-durability.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/archive-merge.js +4 -4
- package/node_modules/@openclaw/fs-safe/dist/archive-parser.wasm +0 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-read.js +5 -4
- package/node_modules/@openclaw/fs-safe/dist/archive-staging.d.ts +1 -1
- package/node_modules/@openclaw/fs-safe/dist/archive-staging.js +22 -38
- package/node_modules/@openclaw/fs-safe/dist/copy-path-admission.d.ts +17 -0
- package/node_modules/@openclaw/fs-safe/dist/copy-path-admission.js +117 -0
- package/node_modules/@openclaw/fs-safe/dist/copy-root-file-sync.d.ts +8 -5
- package/node_modules/@openclaw/fs-safe/dist/copy-root-file-sync.js +27 -50
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync-root-acquire.d.ts +3 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync-root-acquire.js +57 -11
- package/node_modules/@openclaw/fs-safe/dist/guarded-mutation.js +5 -5
- package/node_modules/@openclaw/fs-safe/dist/guest-native-python.js +52 -5
- package/node_modules/@openclaw/fs-safe/dist/guest.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/native-binding.d.ts +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-operations.d.ts +0 -1
- package/node_modules/@openclaw/fs-safe/dist/native-operations.js +22 -26
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write-windows.js +5 -1
- package/node_modules/@openclaw/fs-safe/dist/native-staged-file.js +4 -1
- package/node_modules/@openclaw/fs-safe/dist/permission-exec.js +2 -1
- package/node_modules/@openclaw/fs-safe/dist/pinned-write-types.d.ts +6 -1
- package/node_modules/@openclaw/fs-safe/dist/private-temp-workspace.js +2 -2
- package/node_modules/@openclaw/fs-safe/dist/publish-file.js +34 -7
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-fallback.js +1 -4
- package/node_modules/@openclaw/fs-safe/dist/replace-file-descriptor.js +6 -0
- package/node_modules/@openclaw/fs-safe/dist/root-create-input.d.ts +15 -1
- package/node_modules/@openclaw/fs-safe/dist/root-create-input.js +4 -0
- package/node_modules/@openclaw/fs-safe/dist/root-directory-entry.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/root-directory-list.d.ts +0 -1
- package/node_modules/@openclaw/fs-safe/dist/root-directory-list.js +6 -12
- package/node_modules/@openclaw/fs-safe/dist/root-impl.js +15 -15
- package/node_modules/@openclaw/fs-safe/dist/root-paths.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/root-walk.js +4 -4
- package/node_modules/@openclaw/fs-safe/dist/root-write-verification.d.ts +10 -1
- package/node_modules/@openclaw/fs-safe/dist/root-write-verification.js +20 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-temp-dir.js +19 -7
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-acquire.js +25 -3
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-admission.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-retained.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-retained.js +187 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock.js +15 -1
- package/node_modules/@openclaw/fs-safe/dist/temp-directory-diagnostics.d.ts +10 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-directory-diagnostics.js +29 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-target.js +1 -1
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-admission.js +6 -6
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-child-admission.d.ts +4 -4
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-child-admission.js +17 -16
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-descriptor.js +20 -28
- package/node_modules/@openclaw/fs-safe/dist/walk.js +2 -13
- package/node_modules/@openclaw/fs-safe/dist/watch-native.d.ts +2 -2
- package/node_modules/@openclaw/fs-safe/dist/watch-native.js +3 -1
- package/node_modules/@openclaw/fs-safe/dist/watch-rescan.js +3 -9
- package/node_modules/@openclaw/fs-safe/dist/watch.js +2 -3
- package/node_modules/@openclaw/fs-safe/docs/advanced.md +1 -1
- package/node_modules/@openclaw/fs-safe/docs/archive.md +3 -0
- package/node_modules/@openclaw/fs-safe/docs/atomic.md +11 -3
- package/node_modules/@openclaw/fs-safe/docs/contributing.md +1 -1
- package/node_modules/@openclaw/fs-safe/docs/copy.md +48 -0
- package/node_modules/@openclaw/fs-safe/docs/guest.md +21 -4
- package/node_modules/@openclaw/fs-safe/docs/path-scope.md +4 -0
- package/node_modules/@openclaw/fs-safe/docs/sidecar-lock.md +46 -8
- package/node_modules/@openclaw/fs-safe/docs/temp.md +12 -0
- package/node_modules/@openclaw/fs-safe/docs/watch.md +3 -2
- package/node_modules/@openclaw/fs-safe/package.json +15 -15
- package/node_modules/@openclaw/fs-safe-darwin-arm64/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-darwin-arm64/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-darwin-x64/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-darwin-x64/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-linux-arm64-gnu/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-gnu/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-linux-arm64-musl/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-musl/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-linux-x64-gnu/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-gnu/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-linux-x64-musl/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-musl/package.json +1 -1
- package/node_modules/@openclaw/fs-safe-win32-x64-msvc/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-win32-x64-msvc/package.json +1 -1
- package/node_modules/matrix-widget-api/lib/interfaces/RtcLivekitActions.d.ts +6 -12
- package/node_modules/matrix-widget-api/lib/interfaces/RtcLivekitActions.js.map +1 -1
- package/node_modules/matrix-widget-api/package.json +1 -1
- package/node_modules/matrix-widget-api/src/interfaces/RtcLivekitActions.ts +6 -13
- package/node_modules/music-metadata/README.md +35 -32
- package/node_modules/music-metadata/lib/ParserFactory.d.ts +1 -1
- package/node_modules/music-metadata/lib/ParserFactory.js +17 -13
- package/node_modules/music-metadata/lib/aiff/AiffParser.js +19 -12
- package/node_modules/music-metadata/lib/aiff/AiffToken.d.ts +1 -1
- package/node_modules/music-metadata/lib/aiff/AiffToken.js +2 -1
- package/node_modules/music-metadata/lib/apev2/APEv2Parser.d.ts +4 -3
- package/node_modules/music-metadata/lib/apev2/APEv2Parser.js +59 -16
- package/node_modules/music-metadata/lib/apev2/APEv2TagMapper.js +1 -0
- package/node_modules/music-metadata/lib/apev2/APEv2Token.d.ts +1 -1
- package/node_modules/music-metadata/lib/apev2/APEv2Token.js +1 -1
- package/node_modules/music-metadata/lib/asf/AsfGuid.js +56 -50
- package/node_modules/music-metadata/lib/asf/AsfObject.d.ts +1 -1
- package/node_modules/music-metadata/lib/asf/AsfObject.js +3 -2
- package/node_modules/music-metadata/lib/asf/AsfParser.js +15 -7
- package/node_modules/music-metadata/lib/asf/AsfTagMapper.d.ts +3 -2
- package/node_modules/music-metadata/lib/asf/AsfTagMapper.js +21 -4
- package/node_modules/music-metadata/lib/common/CaseInsensitiveTagMap.d.ts +1 -1
- package/node_modules/music-metadata/lib/common/CombinedTagMapper.d.ts +2 -2
- package/node_modules/music-metadata/lib/common/CombinedTagMapper.js +6 -6
- package/node_modules/music-metadata/lib/common/FourCC.js +3 -2
- package/node_modules/music-metadata/lib/common/GenericTagMapper.d.ts +1 -1
- package/node_modules/music-metadata/lib/common/GenericTagTypes.js +1 -1
- package/node_modules/music-metadata/lib/common/MetadataCollector.d.ts +3 -1
- package/node_modules/music-metadata/lib/common/MetadataCollector.js +28 -9
- package/node_modules/music-metadata/lib/common/Util.js +25 -17
- package/node_modules/music-metadata/lib/core.d.ts +4 -4
- package/node_modules/music-metadata/lib/core.js +18 -11
- package/node_modules/music-metadata/lib/dsdiff/DsdiffParser.js +29 -16
- package/node_modules/music-metadata/lib/dsf/DsfChunk.d.ts +1 -1
- package/node_modules/music-metadata/lib/dsf/DsfParser.js +3 -5
- package/node_modules/music-metadata/lib/ebml/EbmlIterator.d.ts +1 -1
- package/node_modules/music-metadata/lib/ebml/EbmlIterator.js +35 -6
- package/node_modules/music-metadata/lib/ebml/types.d.ts +1 -1
- package/node_modules/music-metadata/lib/ebml/types.js +1 -1
- package/node_modules/music-metadata/lib/flac/FlacParser.d.ts +1 -1
- package/node_modules/music-metadata/lib/flac/FlacParser.js +6 -5
- package/node_modules/music-metadata/lib/flac/FlacToken.d.ts +1 -1
- package/node_modules/music-metadata/lib/flac/FlacToken.js +1 -1
- package/node_modules/music-metadata/lib/id3v1/ID3v1Parser.d.ts +1 -1
- package/node_modules/music-metadata/lib/id3v1/ID3v1Parser.js +212 -42
- package/node_modules/music-metadata/lib/id3v2/AbstractID3Parser.js +5 -5
- package/node_modules/music-metadata/lib/id3v2/FrameHeader.d.ts +1 -1
- package/node_modules/music-metadata/lib/id3v2/FrameHeader.js +8 -5
- package/node_modules/music-metadata/lib/id3v2/FrameParser.d.ts +2 -1
- package/node_modules/music-metadata/lib/id3v2/FrameParser.js +54 -23
- package/node_modules/music-metadata/lib/id3v2/ID3v22TagMapper.d.ts +1 -1
- package/node_modules/music-metadata/lib/id3v2/ID3v22TagMapper.js +1 -1
- package/node_modules/music-metadata/lib/id3v2/ID3v24TagMapper.js +3 -3
- package/node_modules/music-metadata/lib/id3v2/ID3v2ChapterToken.js +2 -2
- package/node_modules/music-metadata/lib/id3v2/ID3v2Parser.d.ts +1 -1
- package/node_modules/music-metadata/lib/id3v2/ID3v2Parser.js +32 -16
- package/node_modules/music-metadata/lib/id3v2/ID3v2Token.d.ts +2 -2
- package/node_modules/music-metadata/lib/id3v2/ID3v2Token.js +2 -3
- package/node_modules/music-metadata/lib/index.js +6 -3
- package/node_modules/music-metadata/lib/lrc/LyricsParser.js +3 -5
- package/node_modules/music-metadata/lib/matroska/MatroskaDtd.js +7 -3
- package/node_modules/music-metadata/lib/matroska/MatroskaParser.js +22 -11
- package/node_modules/music-metadata/lib/matroska/types.d.ts +2 -2
- package/node_modules/music-metadata/lib/mp4/Atom.d.ts +4 -3
- package/node_modules/music-metadata/lib/mp4/Atom.js +44 -11
- package/node_modules/music-metadata/lib/mp4/AtomToken.d.ts +1 -1
- package/node_modules/music-metadata/lib/mp4/AtomToken.js +30 -8
- package/node_modules/music-metadata/lib/mp4/MP4Parser.d.ts +2 -0
- package/node_modules/music-metadata/lib/mp4/MP4Parser.js +79 -54
- package/node_modules/music-metadata/lib/mp4/MP4TagMapper.d.ts +2 -2
- package/node_modules/music-metadata/lib/mpeg/MpegLoader.js +1 -1
- package/node_modules/music-metadata/lib/mpeg/MpegParser.js +41 -19
- package/node_modules/music-metadata/lib/mpeg/ReplayGainDataFormat.d.ts +2 -2
- package/node_modules/music-metadata/lib/mpeg/ReplayGainDataFormat.js +1 -1
- package/node_modules/music-metadata/lib/mpeg/XingTag.d.ts +1 -1
- package/node_modules/music-metadata/lib/musepack/MusepackParser.js +2 -2
- package/node_modules/music-metadata/lib/musepack/sv7/BitReader.js +1 -1
- package/node_modules/music-metadata/lib/musepack/sv7/MpcSv7Parser.js +4 -3
- package/node_modules/music-metadata/lib/musepack/sv7/StreamVersion7.js +3 -3
- package/node_modules/music-metadata/lib/musepack/sv8/MpcSv8Parser.js +7 -5
- package/node_modules/music-metadata/lib/musepack/sv8/StreamVersion8.js +2 -2
- package/node_modules/music-metadata/lib/ogg/OggParser.js +23 -13
- package/node_modules/music-metadata/lib/ogg/OggToken.d.ts +2 -0
- package/node_modules/music-metadata/lib/ogg/OggToken.js +1 -1
- package/node_modules/music-metadata/lib/ogg/flac/FlacStream.d.ts +2 -2
- package/node_modules/music-metadata/lib/ogg/flac/FlacStream.js +2 -2
- package/node_modules/music-metadata/lib/ogg/opus/OpusStream.d.ts +2 -2
- package/node_modules/music-metadata/lib/ogg/opus/OpusStream.js +8 -4
- package/node_modules/music-metadata/lib/ogg/speex/SpeexStream.d.ts +2 -2
- package/node_modules/music-metadata/lib/ogg/speex/SpeexStream.js +2 -1
- package/node_modules/music-metadata/lib/ogg/theora/TheoraStream.d.ts +2 -2
- package/node_modules/music-metadata/lib/ogg/vorbis/Vorbis.d.ts +1 -1
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisDecoder.js +1 -1
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisStream.d.ts +4 -3
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisStream.js +16 -9
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisTagMapper.js +4 -0
- package/node_modules/music-metadata/lib/riff/RiffChunk.d.ts +3 -1
- package/node_modules/music-metadata/lib/riff/RiffChunk.js +3 -2
- package/node_modules/music-metadata/lib/riff/RiffInfoTagMap.d.ts +1 -1
- package/node_modules/music-metadata/lib/type.d.ts +3 -3
- package/node_modules/music-metadata/lib/type.js +1 -1
- package/node_modules/music-metadata/lib/wav/WaveChunk.d.ts +1 -1
- package/node_modules/music-metadata/lib/wav/WaveChunk.js +3 -2
- package/node_modules/music-metadata/lib/wav/WaveParser.d.ts +6 -2
- package/node_modules/music-metadata/lib/wav/WaveParser.js +75 -22
- package/node_modules/music-metadata/lib/wavpack/WavPackParser.js +22 -13
- package/node_modules/music-metadata/lib/wavpack/WavPackToken.js +3 -2
- package/node_modules/music-metadata/package.json +3 -2
- package/node_modules/uint8array-extras/index.d.ts +7 -7
- package/node_modules/uint8array-extras/index.js +27 -13
- package/node_modules/uint8array-extras/package.json +6 -6
- package/node_modules/uint8array-extras/readme.md +7 -7
- package/package.json +7 -7
- package/dist/.setup/accounts-C_r0UlEm.mjs +0 -138
- package/dist/.setup/config-update-CZndPxNd.mjs +0 -102
- package/dist/.setup/profile-DS0xdJAi.mjs +0 -80
- package/dist/.setup/setup-core-6DppLENo.mjs +0 -377
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync-root-arbitration.d.ts +0 -17
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync-root-arbitration.js +0 -66
- package/node_modules/@openclaw/fs-safe/dist/publish-file-native.d.ts +0 -4
- package/node_modules/@openclaw/fs-safe/dist/publish-file-native.js +0 -35
- package/node_modules/@openclaw/fs-safe/dist/root-move-preflight.d.ts +0 -7
- package/node_modules/@openclaw/fs-safe/dist/root-move-preflight.js +0 -16
- package/dist/.setup/{errors-DKVS3_DO.mjs → errors-Bw4EHwKX.mjs} +1 -1
|
Binary file
|
package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.wasm.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export const __wbg_checkcode_free: (a: number, b: number) => void;
|
|
|
12
12
|
export const __wbg_collectstrategy_free: (a: number, b: number) => void;
|
|
13
13
|
export const __wbg_crosssigningbootstraprequests_free: (a: number, b: number) => void;
|
|
14
14
|
export const __wbg_crosssigningkeyexport_free: (a: number, b: number) => void;
|
|
15
|
+
export const __wbg_crosssigningstatus_free: (a: number, b: number) => void;
|
|
15
16
|
export const __wbg_curve25519publickey_free: (a: number, b: number) => void;
|
|
16
17
|
export const __wbg_curve25519secretkey_free: (a: number, b: number) => void;
|
|
17
18
|
export const __wbg_decryptedroomevent_free: (a: number, b: number) => void;
|
|
@@ -34,14 +35,18 @@ export const __wbg_encryptedattachment_free: (a: number, b: number) => void;
|
|
|
34
35
|
export const __wbg_encryptioninfo_free: (a: number, b: number) => void;
|
|
35
36
|
export const __wbg_encryptionsettings_free: (a: number, b: number) => void;
|
|
36
37
|
export const __wbg_establishedecies_free: (a: number, b: number) => void;
|
|
38
|
+
export const __wbg_eventid_free: (a: number, b: number) => void;
|
|
37
39
|
export const __wbg_get_backupkeys_backupVersion: (a: number) => [number, number];
|
|
38
40
|
export const __wbg_get_backupkeys_decryptionKey: (a: number) => number;
|
|
39
41
|
export const __wbg_get_backupsecretsbundle_backup_version: (a: number) => [number, number];
|
|
40
42
|
export const __wbg_get_backupsecretsbundle_key: (a: number) => [number, number];
|
|
43
|
+
export const __wbg_get_base64encodedpkmessage_ciphertext: (a: number) => [number, number];
|
|
41
44
|
export const __wbg_get_base64encodedpkmessage_ephemeralKey: (a: number) => [number, number];
|
|
45
|
+
export const __wbg_get_base64encodedpkmessage_mac: (a: number) => [number, number];
|
|
42
46
|
export const __wbg_get_basemigrationdata_backupRecoveryKey: (a: number) => [number, number];
|
|
43
47
|
export const __wbg_get_basemigrationdata_backupVersion: (a: number) => [number, number];
|
|
44
48
|
export const __wbg_get_basemigrationdata_deviceId: (a: number) => number;
|
|
49
|
+
export const __wbg_get_basemigrationdata_pickledAccount: (a: number) => [number, number];
|
|
45
50
|
export const __wbg_get_basemigrationdata_privateCrossSigningMasterKey: (a: number) => [number, number];
|
|
46
51
|
export const __wbg_get_basemigrationdata_privateCrossSigningSelfSigningKey: (a: number) => [number, number];
|
|
47
52
|
export const __wbg_get_basemigrationdata_privateCrossSigningUserSigningKey: (a: number) => [number, number];
|
|
@@ -56,6 +61,8 @@ export const __wbg_get_decryptionsettings_sender_device_trust_requirement: (a: n
|
|
|
56
61
|
export const __wbg_get_encryptioninfo_forwarder: (a: number) => number;
|
|
57
62
|
export const __wbg_get_encryptioninfo_forwarderDevice: (a: number) => number;
|
|
58
63
|
export const __wbg_get_encryptioninfo_sender: (a: number) => number;
|
|
64
|
+
export const __wbg_get_encryptioninfo_senderClaimedEd25519Key: (a: number) => [number, number];
|
|
65
|
+
export const __wbg_get_encryptioninfo_senderCurve25519Key: (a: number) => [number, number];
|
|
59
66
|
export const __wbg_get_encryptioninfo_senderDevice: (a: number) => number;
|
|
60
67
|
export const __wbg_get_encryptionsettings_algorithm: (a: number) => number;
|
|
61
68
|
export const __wbg_get_encryptionsettings_encryptStateEvents: (a: number) => number;
|
|
@@ -66,16 +73,37 @@ export const __wbg_get_encryptionsettings_sharingStrategy: (a: number) => number
|
|
|
66
73
|
export const __wbg_get_identitykeys_curve25519: (a: number) => number;
|
|
67
74
|
export const __wbg_get_identitykeys_ed25519: (a: number) => number;
|
|
68
75
|
export const __wbg_get_inboundcreationresult_channel: (a: number) => number;
|
|
76
|
+
export const __wbg_get_inboundcreationresult_message: (a: number) => [number, number];
|
|
69
77
|
export const __wbg_get_invalidtodeviceevent_rawEvent: (a: number) => any;
|
|
70
78
|
export const __wbg_get_keysbackuprequest_body: (a: number) => any;
|
|
79
|
+
export const __wbg_get_keysbackuprequest_id: (a: number) => any;
|
|
71
80
|
export const __wbg_get_keysbackuprequest_version: (a: number) => any;
|
|
81
|
+
export const __wbg_get_keysclaimrequest_body: (a: number) => any;
|
|
82
|
+
export const __wbg_get_keysclaimrequest_id: (a: number) => any;
|
|
83
|
+
export const __wbg_get_keysqueryrequest_body: (a: number) => any;
|
|
84
|
+
export const __wbg_get_keysqueryrequest_id: (a: number) => any;
|
|
85
|
+
export const __wbg_get_keysuploadrequest_body: (a: number) => any;
|
|
86
|
+
export const __wbg_get_keysuploadrequest_id: (a: number) => any;
|
|
72
87
|
export const __wbg_get_megolmdecryptionerror_code: (a: number) => number;
|
|
88
|
+
export const __wbg_get_megolmdecryptionerror_description: (a: number) => any;
|
|
89
|
+
export const __wbg_get_msc4108intentdata_rendezvousUrl: (a: number) => [number, number];
|
|
90
|
+
export const __wbg_get_msc4108intentdata_serverName: (a: number) => [number, number];
|
|
91
|
+
export const __wbg_get_msc4388intentdata_baseUrl: (a: number) => [number, number];
|
|
92
|
+
export const __wbg_get_msc4388intentdata_rendezvousId: (a: number) => [number, number];
|
|
93
|
+
export const __wbg_get_outboundcreationresult_channel: (a: number) => number;
|
|
94
|
+
export const __wbg_get_outboundcreationresult_initial_message: (a: number) => [number, number];
|
|
73
95
|
export const __wbg_get_pickledinboundgroupsession_backedUp: (a: number) => number;
|
|
74
96
|
export const __wbg_get_pickledinboundgroupsession_imported: (a: number) => number;
|
|
97
|
+
export const __wbg_get_pickledinboundgroupsession_pickle: (a: number) => [number, number];
|
|
75
98
|
export const __wbg_get_pickledinboundgroupsession_roomId: (a: number) => number;
|
|
99
|
+
export const __wbg_get_pickledinboundgroupsession_senderKey: (a: number) => [number, number];
|
|
100
|
+
export const __wbg_get_pickledinboundgroupsession_senderSigningKey: (a: number) => [number, number];
|
|
76
101
|
export const __wbg_get_pickledsession_createdUsingFallbackKey: (a: number) => number;
|
|
77
102
|
export const __wbg_get_pickledsession_creationTime: (a: number) => any;
|
|
78
103
|
export const __wbg_get_pickledsession_lastUseTime: (a: number) => any;
|
|
104
|
+
export const __wbg_get_pickledsession_pickle: (a: number) => [number, number];
|
|
105
|
+
export const __wbg_get_pickledsession_senderKey: (a: number) => [number, number];
|
|
106
|
+
export const __wbg_get_plaintexttodeviceevent_rawEvent: (a: number) => any;
|
|
79
107
|
export const __wbg_get_putdehydrateddevicerequest_body: (a: number) => any;
|
|
80
108
|
export const __wbg_get_qrcodeintentdata_msc4108: (a: number) => number;
|
|
81
109
|
export const __wbg_get_qrcodeintentdata_msc4388: (a: number) => number;
|
|
@@ -84,6 +112,10 @@ export const __wbg_get_roomkeycounts_total: (a: number) => number;
|
|
|
84
112
|
export const __wbg_get_roomkeyimportresult_importedCount: (a: number) => number;
|
|
85
113
|
export const __wbg_get_roomkeyimportresult_totalCount: (a: number) => number;
|
|
86
114
|
export const __wbg_get_roommessagerequest_body: (a: number) => any;
|
|
115
|
+
export const __wbg_get_roommessagerequest_event_type: (a: number) => any;
|
|
116
|
+
export const __wbg_get_roommessagerequest_id: (a: number) => any;
|
|
117
|
+
export const __wbg_get_roommessagerequest_room_id: (a: number) => any;
|
|
118
|
+
export const __wbg_get_roommessagerequest_txn_id: (a: number) => any;
|
|
87
119
|
export const __wbg_get_roomsettings_algorithm: (a: number) => number;
|
|
88
120
|
export const __wbg_get_roomsettings_encryptStateEvents: (a: number) => number;
|
|
89
121
|
export const __wbg_get_roomsettings_onlyAllowTrustedDevices: (a: number) => number;
|
|
@@ -91,30 +123,47 @@ export const __wbg_get_roomsettings_sessionRotationPeriodMessages: (a: number) =
|
|
|
91
123
|
export const __wbg_get_roomsettings_sessionRotationPeriodMs: (a: number) => [number, number];
|
|
92
124
|
export const __wbg_get_shieldstate_code: (a: number) => number;
|
|
93
125
|
export const __wbg_get_shieldstate_color: (a: number) => number;
|
|
126
|
+
export const __wbg_get_signatureuploadrequest_body: (a: number) => any;
|
|
94
127
|
export const __wbg_get_signatureuploadrequest_id: (a: number) => any;
|
|
95
128
|
export const __wbg_get_todeviceencryptioninfo_sender: (a: number) => number;
|
|
129
|
+
export const __wbg_get_todeviceencryptioninfo_senderCurve25519Key: (a: number) => [number, number];
|
|
96
130
|
export const __wbg_get_todeviceencryptioninfo_senderDevice: (a: number) => number;
|
|
131
|
+
export const __wbg_get_todevicerequest_body: (a: number) => any;
|
|
132
|
+
export const __wbg_get_todevicerequest_event_type: (a: number) => any;
|
|
133
|
+
export const __wbg_get_todevicerequest_id: (a: number) => any;
|
|
134
|
+
export const __wbg_get_todevicerequest_txn_id: (a: number) => any;
|
|
97
135
|
export const __wbg_get_todeviceunabletodecryptinfo_reason: (a: number) => number;
|
|
136
|
+
export const __wbg_get_uploadsigningkeysrequest_body: (a: number) => any;
|
|
137
|
+
export const __wbg_get_utdtodeviceevent_rawEvent: (a: number) => any;
|
|
98
138
|
export const __wbg_get_utdtodeviceevent_utdInfo: (a: number) => number;
|
|
139
|
+
export const __wbg_get_versions_git_description: (a: number) => any;
|
|
140
|
+
export const __wbg_get_versions_git_sha: (a: number) => any;
|
|
141
|
+
export const __wbg_get_versions_matrix_sdk_crypto: (a: number) => any;
|
|
142
|
+
export const __wbg_get_versions_vodozemac: (a: number) => any;
|
|
99
143
|
export const __wbg_identitykeys_free: (a: number, b: number) => void;
|
|
100
144
|
export const __wbg_inboundcreationresult_free: (a: number, b: number) => void;
|
|
101
145
|
export const __wbg_inboundgroupsession_free: (a: number, b: number) => void;
|
|
102
146
|
export const __wbg_invalidtodeviceevent_free: (a: number, b: number) => void;
|
|
103
147
|
export const __wbg_keysbackuprequest_free: (a: number, b: number) => void;
|
|
104
148
|
export const __wbg_keysclaimrequest_free: (a: number, b: number) => void;
|
|
149
|
+
export const __wbg_keysqueryrequest_free: (a: number, b: number) => void;
|
|
150
|
+
export const __wbg_keysuploadrequest_free: (a: number, b: number) => void;
|
|
105
151
|
export const __wbg_maybesignature_free: (a: number, b: number) => void;
|
|
106
152
|
export const __wbg_megolmdecryptionerror_free: (a: number, b: number) => void;
|
|
107
153
|
export const __wbg_megolmv1backupkey_free: (a: number, b: number) => void;
|
|
154
|
+
export const __wbg_migration_free: (a: number, b: number) => void;
|
|
108
155
|
export const __wbg_msc4108intentdata_free: (a: number, b: number) => void;
|
|
109
156
|
export const __wbg_msc4388intentdata_free: (a: number, b: number) => void;
|
|
110
157
|
export const __wbg_olmmachine_free: (a: number, b: number) => void;
|
|
111
158
|
export const __wbg_otheruseridentity_free: (a: number, b: number) => void;
|
|
159
|
+
export const __wbg_outboundcreationresult_free: (a: number, b: number) => void;
|
|
112
160
|
export const __wbg_ownuseridentity_free: (a: number, b: number) => void;
|
|
113
161
|
export const __wbg_pickledinboundgroupsession_free: (a: number, b: number) => void;
|
|
114
162
|
export const __wbg_pickledsession_free: (a: number, b: number) => void;
|
|
115
163
|
export const __wbg_pkdecryption_free: (a: number, b: number) => void;
|
|
116
164
|
export const __wbg_pkencryption_free: (a: number, b: number) => void;
|
|
117
165
|
export const __wbg_pkmessage_free: (a: number, b: number) => void;
|
|
166
|
+
export const __wbg_plaintexttodeviceevent_free: (a: number, b: number) => void;
|
|
118
167
|
export const __wbg_putdehydrateddevicerequest_free: (a: number, b: number) => void;
|
|
119
168
|
export const __wbg_qr_free: (a: number, b: number) => void;
|
|
120
169
|
export const __wbg_qrcode_free: (a: number, b: number) => void;
|
|
@@ -122,6 +171,7 @@ export const __wbg_qrcodedata_free: (a: number, b: number) => void;
|
|
|
122
171
|
export const __wbg_qrcodeintentdata_free: (a: number, b: number) => void;
|
|
123
172
|
export const __wbg_qrcodescan_free: (a: number, b: number) => void;
|
|
124
173
|
export const __wbg_rehydrateddevice_free: (a: number, b: number) => void;
|
|
174
|
+
export const __wbg_roomid_free: (a: number, b: number) => void;
|
|
125
175
|
export const __wbg_roomkeycounts_free: (a: number, b: number) => void;
|
|
126
176
|
export const __wbg_roomkeyimportresult_free: (a: number, b: number) => void;
|
|
127
177
|
export const __wbg_roomkeyinfo_free: (a: number, b: number) => void;
|
|
@@ -131,14 +181,18 @@ export const __wbg_roompendingkeybundledetails_free: (a: number, b: number) => v
|
|
|
131
181
|
export const __wbg_roomsettings_free: (a: number, b: number) => void;
|
|
132
182
|
export const __wbg_sas_free: (a: number, b: number) => void;
|
|
133
183
|
export const __wbg_secretsbundle_free: (a: number, b: number) => void;
|
|
184
|
+
export const __wbg_servername_free: (a: number, b: number) => void;
|
|
134
185
|
export const __wbg_set_backupkeys_backupVersion: (a: number, b: number, c: number) => void;
|
|
135
186
|
export const __wbg_set_backupkeys_decryptionKey: (a: number, b: number) => void;
|
|
136
187
|
export const __wbg_set_backupsecretsbundle_backup_version: (a: number, b: number, c: number) => void;
|
|
137
188
|
export const __wbg_set_backupsecretsbundle_key: (a: number, b: number, c: number) => void;
|
|
189
|
+
export const __wbg_set_base64encodedpkmessage_ciphertext: (a: number, b: number, c: number) => void;
|
|
138
190
|
export const __wbg_set_base64encodedpkmessage_ephemeralKey: (a: number, b: number, c: number) => void;
|
|
191
|
+
export const __wbg_set_base64encodedpkmessage_mac: (a: number, b: number, c: number) => void;
|
|
139
192
|
export const __wbg_set_basemigrationdata_backupRecoveryKey: (a: number, b: number, c: number) => void;
|
|
140
193
|
export const __wbg_set_basemigrationdata_backupVersion: (a: number, b: number, c: number) => void;
|
|
141
194
|
export const __wbg_set_basemigrationdata_deviceId: (a: number, b: number) => void;
|
|
195
|
+
export const __wbg_set_basemigrationdata_pickledAccount: (a: number, b: number, c: number) => void;
|
|
142
196
|
export const __wbg_set_basemigrationdata_privateCrossSigningMasterKey: (a: number, b: number, c: number) => void;
|
|
143
197
|
export const __wbg_set_basemigrationdata_privateCrossSigningSelfSigningKey: (a: number, b: number, c: number) => void;
|
|
144
198
|
export const __wbg_set_basemigrationdata_privateCrossSigningUserSigningKey: (a: number, b: number, c: number) => void;
|
|
@@ -147,6 +201,8 @@ export const __wbg_set_decryptionsettings_sender_device_trust_requirement: (a: n
|
|
|
147
201
|
export const __wbg_set_encryptioninfo_forwarder: (a: number, b: number) => void;
|
|
148
202
|
export const __wbg_set_encryptioninfo_forwarderDevice: (a: number, b: number) => void;
|
|
149
203
|
export const __wbg_set_encryptioninfo_sender: (a: number, b: number) => void;
|
|
204
|
+
export const __wbg_set_encryptioninfo_senderClaimedEd25519Key: (a: number, b: number, c: number) => void;
|
|
205
|
+
export const __wbg_set_encryptioninfo_senderCurve25519Key: (a: number, b: number, c: number) => void;
|
|
150
206
|
export const __wbg_set_encryptioninfo_senderDevice: (a: number, b: number) => void;
|
|
151
207
|
export const __wbg_set_encryptionsettings_algorithm: (a: number, b: number) => void;
|
|
152
208
|
export const __wbg_set_encryptionsettings_encryptStateEvents: (a: number, b: number) => void;
|
|
@@ -157,12 +213,24 @@ export const __wbg_set_encryptionsettings_sharingStrategy: (a: number, b: number
|
|
|
157
213
|
export const __wbg_set_identitykeys_curve25519: (a: number, b: number) => void;
|
|
158
214
|
export const __wbg_set_identitykeys_ed25519: (a: number, b: number) => void;
|
|
159
215
|
export const __wbg_set_inboundcreationresult_channel: (a: number, b: number) => void;
|
|
216
|
+
export const __wbg_set_inboundcreationresult_message: (a: number, b: number, c: number) => void;
|
|
217
|
+
export const __wbg_set_msc4108intentdata_rendezvousUrl: (a: number, b: number, c: number) => void;
|
|
218
|
+
export const __wbg_set_msc4108intentdata_serverName: (a: number, b: number, c: number) => void;
|
|
219
|
+
export const __wbg_set_msc4388intentdata_baseUrl: (a: number, b: number, c: number) => void;
|
|
220
|
+
export const __wbg_set_msc4388intentdata_rendezvousId: (a: number, b: number, c: number) => void;
|
|
221
|
+
export const __wbg_set_outboundcreationresult_channel: (a: number, b: number) => void;
|
|
222
|
+
export const __wbg_set_outboundcreationresult_initial_message: (a: number, b: number, c: number) => void;
|
|
160
223
|
export const __wbg_set_pickledinboundgroupsession_backedUp: (a: number, b: number) => void;
|
|
161
224
|
export const __wbg_set_pickledinboundgroupsession_imported: (a: number, b: number) => void;
|
|
225
|
+
export const __wbg_set_pickledinboundgroupsession_pickle: (a: number, b: number, c: number) => void;
|
|
162
226
|
export const __wbg_set_pickledinboundgroupsession_roomId: (a: number, b: number) => void;
|
|
227
|
+
export const __wbg_set_pickledinboundgroupsession_senderKey: (a: number, b: number, c: number) => void;
|
|
228
|
+
export const __wbg_set_pickledinboundgroupsession_senderSigningKey: (a: number, b: number, c: number) => void;
|
|
163
229
|
export const __wbg_set_pickledsession_createdUsingFallbackKey: (a: number, b: number) => void;
|
|
164
230
|
export const __wbg_set_pickledsession_creationTime: (a: number, b: any) => void;
|
|
165
231
|
export const __wbg_set_pickledsession_lastUseTime: (a: number, b: any) => void;
|
|
232
|
+
export const __wbg_set_pickledsession_pickle: (a: number, b: number, c: number) => void;
|
|
233
|
+
export const __wbg_set_pickledsession_senderKey: (a: number, b: number, c: number) => void;
|
|
166
234
|
export const __wbg_set_qrcodeintentdata_msc4108: (a: number, b: number) => void;
|
|
167
235
|
export const __wbg_set_qrcodeintentdata_msc4388: (a: number, b: number) => void;
|
|
168
236
|
export const __wbg_set_roomkeycounts_backedUp: (a: number, b: number) => void;
|
|
@@ -175,6 +243,7 @@ export const __wbg_set_roomsettings_sessionRotationPeriodMs: (a: number, b: numb
|
|
|
175
243
|
export const __wbg_set_shieldstate_code: (a: number, b: number) => void;
|
|
176
244
|
export const __wbg_set_shieldstate_color: (a: number, b: number) => void;
|
|
177
245
|
export const __wbg_set_todeviceencryptioninfo_sender: (a: number, b: number) => void;
|
|
246
|
+
export const __wbg_set_todeviceencryptioninfo_senderCurve25519Key: (a: number, b: number, c: number) => void;
|
|
178
247
|
export const __wbg_set_todeviceencryptioninfo_senderDevice: (a: number, b: number) => void;
|
|
179
248
|
export const __wbg_set_todeviceunabletodecryptinfo_reason: (a: number, b: number) => void;
|
|
180
249
|
export const __wbg_shieldstate_free: (a: number, b: number) => void;
|
|
@@ -188,7 +257,9 @@ export const __wbg_todeviceencryptioninfo_free: (a: number, b: number) => void;
|
|
|
188
257
|
export const __wbg_todevicerequest_free: (a: number, b: number) => void;
|
|
189
258
|
export const __wbg_todeviceunabletodecryptinfo_free: (a: number, b: number) => void;
|
|
190
259
|
export const __wbg_tracing_free: (a: number, b: number) => void;
|
|
260
|
+
export const __wbg_uploadsigningkeysrequest_free: (a: number, b: number) => void;
|
|
191
261
|
export const __wbg_userdevices_free: (a: number, b: number) => void;
|
|
262
|
+
export const __wbg_userid_free: (a: number, b: number) => void;
|
|
192
263
|
export const __wbg_utdtodeviceevent_free: (a: number, b: number) => void;
|
|
193
264
|
export const __wbg_verificationrequest_free: (a: number, b: number) => void;
|
|
194
265
|
export const __wbg_versions_free: (a: number, b: number) => void;
|
|
@@ -240,6 +311,7 @@ export const decryptedtodeviceevent_type: (a: number) => number;
|
|
|
240
311
|
export const decryptionsettings_new: (a: number) => number;
|
|
241
312
|
export const dehydrateddevice_keysForUpload: (a: number, b: any, c: number) => any;
|
|
242
313
|
export const dehydrateddevicekey_createKeyFromArray: (a: any) => [number, number, number];
|
|
314
|
+
export const dehydrateddevicekey_createRandomKey: () => number;
|
|
243
315
|
export const dehydrateddevicekey_toBase64: (a: number) => any;
|
|
244
316
|
export const dehydrateddevices_create: (a: number) => any;
|
|
245
317
|
export const dehydrateddevices_deleteDehydratedDeviceKey: (a: number) => any;
|
|
@@ -308,6 +380,7 @@ export const establishedecies_public_key: (a: number) => number;
|
|
|
308
380
|
export const eventid_localpart: (a: number) => [number, number];
|
|
309
381
|
export const eventid_new: (a: number, b: number) => [number, number, number];
|
|
310
382
|
export const eventid_serverName: (a: number) => number;
|
|
383
|
+
export const eventid_toString: (a: number) => [number, number];
|
|
311
384
|
export const getVersions: () => number;
|
|
312
385
|
export const inboundgroupsession_hasBeenImported: (a: number) => number;
|
|
313
386
|
export const inboundgroupsession_roomId: (a: number) => number;
|
|
@@ -318,7 +391,9 @@ export const keysbackuprequest_new: (a: any, b: any, c: any) => number;
|
|
|
318
391
|
export const keysbackuprequest_type: (a: number) => number;
|
|
319
392
|
export const keysclaimrequest_new: (a: any, b: any) => number;
|
|
320
393
|
export const keysclaimrequest_type: (a: number) => number;
|
|
394
|
+
export const keysqueryrequest_new: (a: any, b: any) => number;
|
|
321
395
|
export const keysqueryrequest_type: (a: number) => number;
|
|
396
|
+
export const keysuploadrequest_new: (a: any, b: any) => number;
|
|
322
397
|
export const keysuploadrequest_type: (a: number) => number;
|
|
323
398
|
export const maybesignature_invalidSignatureSource: (a: number) => [number, number];
|
|
324
399
|
export const maybesignature_isInvalid: (a: number) => number;
|
|
@@ -486,6 +561,7 @@ export const qrcodedata_toBytes: (a: number) => [number, number];
|
|
|
486
561
|
export const qrcodescan_fromBytes: (a: any) => [number, number, number];
|
|
487
562
|
export const rehydrateddevice_receiveEvents: (a: number, b: number, c: number, d: number) => any;
|
|
488
563
|
export const roomid_new: (a: number, b: number) => [number, number, number];
|
|
564
|
+
export const roomid_toString: (a: number) => [number, number];
|
|
489
565
|
export const roomkeyimportresult_keys: (a: number) => any;
|
|
490
566
|
export const roomkeyinfo_algorithm: (a: number) => number;
|
|
491
567
|
export const roomkeyinfo_roomId: (a: number) => number;
|
|
@@ -528,6 +604,7 @@ export const sas_timedOut: (a: number) => number;
|
|
|
528
604
|
export const sas_userId: (a: number) => number;
|
|
529
605
|
export const sas_weStarted: (a: number) => number;
|
|
530
606
|
export const secretsbundle_backupBundle: (a: number) => number;
|
|
607
|
+
export const ring_core_0_17_14__bn_mul_mont: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
531
608
|
export const secretsbundle_from_json: (a: any) => [number, number, number];
|
|
532
609
|
export const secretsbundle_masterKey: (a: number) => [number, number];
|
|
533
610
|
export const secretsbundle_selfSigningKey: (a: number) => [number, number];
|
|
@@ -568,6 +645,7 @@ export const tracing_new: (a: number) => [number, number, number];
|
|
|
568
645
|
export const tracing_set_minLevel: (a: number, b: number) => [number, number];
|
|
569
646
|
export const tracing_turnOff: (a: number) => [number, number];
|
|
570
647
|
export const tracing_turnOn: (a: number) => [number, number];
|
|
648
|
+
export const uploadsigningkeysrequest_new: (a: any) => number;
|
|
571
649
|
export const userdevices_devices: (a: number) => any;
|
|
572
650
|
export const userdevices_get: (a: number, b: number) => number;
|
|
573
651
|
export const userdevices_isAnyVerified: (a: number) => number;
|
|
@@ -577,6 +655,7 @@ export const userid_isHistorical: (a: number) => number;
|
|
|
577
655
|
export const userid_localpart: (a: number) => [number, number];
|
|
578
656
|
export const userid_new: (a: number, b: number) => [number, number, number];
|
|
579
657
|
export const userid_serverName: (a: number) => number;
|
|
658
|
+
export const userid_toString: (a: number) => [number, number];
|
|
580
659
|
export const utdtodeviceevent_type: (a: number) => number;
|
|
581
660
|
export const verificationrequest_accept: (a: number) => [number, number, number];
|
|
582
661
|
export const verificationrequest_acceptWithMethods: (a: number, b: number, c: number) => [number, number, number];
|
|
@@ -604,90 +683,11 @@ export const verificationrequest_theirSupportedMethods: (a: number) => [number,
|
|
|
604
683
|
export const verificationrequest_timeRemainingMillis: (a: number) => number;
|
|
605
684
|
export const verificationrequest_timedOut: (a: number) => number;
|
|
606
685
|
export const verificationrequest_weStarted: (a: number) => number;
|
|
607
|
-
export const
|
|
608
|
-
export const
|
|
609
|
-
export const
|
|
610
|
-
export const
|
|
611
|
-
export const
|
|
612
|
-
export const __wbg_get_basemigrationdata_pickledAccount: (a: number) => [number, number];
|
|
613
|
-
export const __wbg_get_encryptioninfo_senderCurve25519Key: (a: number) => [number, number];
|
|
614
|
-
export const __wbg_get_inboundcreationresult_message: (a: number) => [number, number];
|
|
615
|
-
export const __wbg_get_msc4108intentdata_rendezvousUrl: (a: number) => [number, number];
|
|
616
|
-
export const __wbg_get_msc4388intentdata_baseUrl: (a: number) => [number, number];
|
|
617
|
-
export const __wbg_get_msc4388intentdata_rendezvousId: (a: number) => [number, number];
|
|
618
|
-
export const __wbg_get_outboundcreationresult_initial_message: (a: number) => [number, number];
|
|
619
|
-
export const __wbg_get_pickledinboundgroupsession_pickle: (a: number) => [number, number];
|
|
620
|
-
export const __wbg_get_pickledinboundgroupsession_senderKey: (a: number) => [number, number];
|
|
621
|
-
export const __wbg_get_pickledsession_pickle: (a: number) => [number, number];
|
|
622
|
-
export const __wbg_get_pickledsession_senderKey: (a: number) => [number, number];
|
|
623
|
-
export const __wbg_get_todeviceencryptioninfo_senderCurve25519Key: (a: number) => [number, number];
|
|
624
|
-
export const __wbg_set_outboundcreationresult_channel: (a: number, b: number) => void;
|
|
625
|
-
export const __wbg_migration_free: (a: number, b: number) => void;
|
|
626
|
-
export const __wbg_get_uploadsigningkeysrequest_body: (a: number) => any;
|
|
627
|
-
export const __wbg_get_pickledinboundgroupsession_senderSigningKey: (a: number) => [number, number];
|
|
628
|
-
export const __wbg_get_msc4108intentdata_serverName: (a: number) => [number, number];
|
|
629
|
-
export const __wbg_get_encryptioninfo_senderClaimedEd25519Key: (a: number) => [number, number];
|
|
630
|
-
export const __wbg_get_outboundcreationresult_channel: (a: number) => number;
|
|
631
|
-
export const keysuploadrequest_new: (a: any, b: any) => number;
|
|
632
|
-
export const keysqueryrequest_new: (a: any, b: any) => number;
|
|
633
|
-
export const __wbg_set_pickledsession_pickle: (a: number, b: number, c: number) => void;
|
|
634
|
-
export const __wbg_set_pickledinboundgroupsession_senderSigningKey: (a: number, b: number, c: number) => void;
|
|
635
|
-
export const __wbg_set_pickledsession_senderKey: (a: number, b: number, c: number) => void;
|
|
636
|
-
export const __wbg_set_pickledinboundgroupsession_pickle: (a: number, b: number, c: number) => void;
|
|
637
|
-
export const __wbg_set_basemigrationdata_pickledAccount: (a: number, b: number, c: number) => void;
|
|
638
|
-
export const __wbg_set_pickledinboundgroupsession_senderKey: (a: number, b: number, c: number) => void;
|
|
639
|
-
export const __wbg_set_msc4108intentdata_serverName: (a: number, b: number, c: number) => void;
|
|
640
|
-
export const __wbg_set_msc4108intentdata_rendezvousUrl: (a: number, b: number, c: number) => void;
|
|
641
|
-
export const __wbg_set_msc4388intentdata_rendezvousId: (a: number, b: number, c: number) => void;
|
|
642
|
-
export const __wbg_set_msc4388intentdata_baseUrl: (a: number, b: number, c: number) => void;
|
|
643
|
-
export const __wbg_set_encryptioninfo_senderCurve25519Key: (a: number, b: number, c: number) => void;
|
|
644
|
-
export const __wbg_set_encryptioninfo_senderClaimedEd25519Key: (a: number, b: number, c: number) => void;
|
|
645
|
-
export const __wbg_set_todeviceencryptioninfo_senderCurve25519Key: (a: number, b: number, c: number) => void;
|
|
646
|
-
export const __wbg_set_base64encodedpkmessage_mac: (a: number, b: number, c: number) => void;
|
|
647
|
-
export const __wbg_set_base64encodedpkmessage_ciphertext: (a: number, b: number, c: number) => void;
|
|
648
|
-
export const __wbg_set_inboundcreationresult_message: (a: number, b: number, c: number) => void;
|
|
649
|
-
export const __wbg_set_outboundcreationresult_initial_message: (a: number, b: number, c: number) => void;
|
|
650
|
-
export const __wbg_servername_free: (a: number, b: number) => void;
|
|
651
|
-
export const __wbg_eventid_free: (a: number, b: number) => void;
|
|
652
|
-
export const __wbg_get_versions_git_description: (a: number) => any;
|
|
653
|
-
export const __wbg_get_versions_vodozemac: (a: number) => any;
|
|
654
|
-
export const __wbg_get_utdtodeviceevent_rawEvent: (a: number) => any;
|
|
655
|
-
export const __wbg_get_plaintexttodeviceevent_rawEvent: (a: number) => any;
|
|
656
|
-
export const __wbg_get_versions_git_sha: (a: number) => any;
|
|
657
|
-
export const __wbg_get_todevicerequest_id: (a: number) => any;
|
|
658
|
-
export const __wbg_get_versions_matrix_sdk_crypto: (a: number) => any;
|
|
659
|
-
export const __wbg_get_todevicerequest_body: (a: number) => any;
|
|
660
|
-
export const __wbg_get_keysclaimrequest_id: (a: number) => any;
|
|
661
|
-
export const __wbg_get_todevicerequest_event_type: (a: number) => any;
|
|
662
|
-
export const __wbg_keysqueryrequest_free: (a: number, b: number) => void;
|
|
663
|
-
export const __wbg_get_keysqueryrequest_id: (a: number) => any;
|
|
664
|
-
export const __wbg_get_keysqueryrequest_body: (a: number) => any;
|
|
665
|
-
export const __wbg_get_todevicerequest_txn_id: (a: number) => any;
|
|
666
|
-
export const __wbg_get_keysbackuprequest_id: (a: number) => any;
|
|
667
|
-
export const __wbg_get_keysclaimrequest_body: (a: number) => any;
|
|
668
|
-
export const __wbg_keysuploadrequest_free: (a: number, b: number) => void;
|
|
669
|
-
export const __wbg_get_keysuploadrequest_id: (a: number) => any;
|
|
670
|
-
export const __wbg_get_keysuploadrequest_body: (a: number) => any;
|
|
671
|
-
export const __wbg_get_roommessagerequest_txn_id: (a: number) => any;
|
|
672
|
-
export const __wbg_get_roommessagerequest_room_id: (a: number) => any;
|
|
673
|
-
export const __wbg_get_roommessagerequest_id: (a: number) => any;
|
|
674
|
-
export const __wbg_get_roommessagerequest_event_type: (a: number) => any;
|
|
675
|
-
export const __wbg_get_signatureuploadrequest_body: (a: number) => any;
|
|
676
|
-
export const __wbg_uploadsigningkeysrequest_free: (a: number, b: number) => void;
|
|
677
|
-
export const __wbg_get_megolmdecryptionerror_description: (a: number) => any;
|
|
678
|
-
export const __wbg_crosssigningstatus_free: (a: number, b: number) => void;
|
|
679
|
-
export const __wbg_plaintexttodeviceevent_free: (a: number, b: number) => void;
|
|
680
|
-
export const userid_toString: (a: number) => [number, number];
|
|
681
|
-
export const __wbg_userid_free: (a: number, b: number) => void;
|
|
682
|
-
export const roomid_toString: (a: number) => [number, number];
|
|
683
|
-
export const eventid_toString: (a: number) => [number, number];
|
|
684
|
-
export const __wbg_roomid_free: (a: number, b: number) => void;
|
|
685
|
-
export const __wbg_outboundcreationresult_free: (a: number, b: number) => void;
|
|
686
|
-
export const wasm_bindgen_ff9af61e2d43a78a___convert__closures_____invoke___wasm_bindgen_ff9af61e2d43a78a___JsValue__core_ed718c3d60ebd546___result__Result_____wasm_bindgen_ff9af61e2d43a78a___JsError___true_: (a: number, b: number, c: any) => [number, number];
|
|
687
|
-
export const wasm_bindgen_ff9af61e2d43a78a___convert__closures_____invoke___wasm_bindgen_ff9af61e2d43a78a___JsValue__core_ed718c3d60ebd546___result__Result_____wasm_bindgen_ff9af61e2d43a78a___JsError___true__2: (a: number, b: number, c: any) => [number, number];
|
|
688
|
-
export const wasm_bindgen_ff9af61e2d43a78a___convert__closures_____invoke___js_sys_8badcad5ae9f3759___Function_fn_wasm_bindgen_ff9af61e2d43a78a___JsValue_____wasm_bindgen_ff9af61e2d43a78a___sys__Undefined___js_sys_8badcad5ae9f3759___Function_fn_wasm_bindgen_ff9af61e2d43a78a___JsValue_____wasm_bindgen_ff9af61e2d43a78a___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
|
|
689
|
-
export const wasm_bindgen_ff9af61e2d43a78a___convert__closures_____invoke___web_sys_4ec35d1b8222c725___features__gen_Event__Event______true_: (a: number, b: number, c: any) => void;
|
|
690
|
-
export const wasm_bindgen_ff9af61e2d43a78a___convert__closures_____invoke_______true_: (a: number, b: number) => void;
|
|
686
|
+
export const wasm_bindgen_49b719dbd852acb8___convert__closures_____invoke___js_sys_2784ec704a33ecc8___Function_fn_wasm_bindgen_49b719dbd852acb8___JsValue_____wasm_bindgen_49b719dbd852acb8___sys__Undefined___js_sys_2784ec704a33ecc8___Function_fn_wasm_bindgen_49b719dbd852acb8___JsValue_____wasm_bindgen_49b719dbd852acb8___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
|
|
687
|
+
export const wasm_bindgen_49b719dbd852acb8___convert__closures_____invoke___wasm_bindgen_49b719dbd852acb8___JsValue__core_ed718c3d60ebd546___result__Result_____wasm_bindgen_49b719dbd852acb8___JsError___true_: (a: number, b: number, c: any) => [number, number];
|
|
688
|
+
export const wasm_bindgen_49b719dbd852acb8___convert__closures_____invoke___wasm_bindgen_49b719dbd852acb8___JsValue__core_ed718c3d60ebd546___result__Result_____wasm_bindgen_49b719dbd852acb8___JsError___true__590: (a: number, b: number, c: any) => [number, number];
|
|
689
|
+
export const wasm_bindgen_49b719dbd852acb8___convert__closures_____invoke___web_sys_fe02f73cbd69cc6___features__gen_Event__Event______true_: (a: number, b: number, c: any) => void;
|
|
690
|
+
export const wasm_bindgen_49b719dbd852acb8___convert__closures_____invoke_______true_: (a: number, b: number) => void;
|
|
691
691
|
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
692
692
|
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
693
693
|
export const __wbindgen_exn_store: (a: number) => void;
|
|
@@ -2,6 +2,41 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.25.0 - 2026-10-08
|
|
6
|
+
|
|
7
|
+
### Highlights
|
|
8
|
+
|
|
9
|
+
- **Faster synchronous plugin captures:** 16% faster than pre-change main on a measured 6,000-file tree; the new `createRootFileCopyBatchSync` API on `advanced` also reuses directory admissions across copies. ([#878](https://github.com/openclaw/fs-safe/pull/878), [#849](https://github.com/openclaw/fs-safe/pull/849))
|
|
10
|
+
- **Guest workspace publication:** works on gVisor and other Linux filesystems that reject `RENAME_NOREPLACE`. ([#876](https://github.com/openclaw/fs-safe/pull/876))
|
|
11
|
+
- **Root-backed sidecar locks:** native asynchronous release and exit cleanup no longer strand locks after their Root moves. ([#879](https://github.com/openclaw/fs-safe/pull/879))
|
|
12
|
+
- **Guest cross-device moves:** preserve the admitted file permissions. ([#869](https://github.com/openclaw/fs-safe/pull/869))
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- **Guarded copy batches:** `createRootFileCopyBatchSync` on `advanced` reuses directory admissions across synchronous copies on canonical POSIX paths while rechecking ancestor and file identities for every copy; single-file copies also reuse admission within the operation. ([#849](https://github.com/openclaw/fs-safe/pull/849))
|
|
17
|
+
|
|
18
|
+
### Fixes
|
|
19
|
+
|
|
20
|
+
- **Root-backed file locks:** native asynchronous release and exit cleanup follow the created lock's retained identity after its Root moves, preserving replacement files and reporting ownership mismatches. ([#879](https://github.com/openclaw/fs-safe/pull/879)) Thanks @axiom-ncis.
|
|
21
|
+
- **Temp directory diagnostics:** name rejected roots and ancestors, explain ownership, mode, or symlink failures, and provide safe recovery guidance, including for root-run appliances. Thanks @joequant. ([#877](https://github.com/openclaw/fs-safe/pull/877))
|
|
22
|
+
- **Guest directory publication:** publish staged workspaces when Linux filesystems reject `RENAME_NOREPLACE`, with checked file link/unlink fallback and directory rename that can only replace a concurrently created empty directory. ([#876](https://github.com/openclaw/fs-safe/pull/876)) Thanks @valkyriweb.
|
|
23
|
+
- **Guest cross-device moves:** preserve the admitted source file's permissions instead of leaving the destination with a broader default mode. ([#869](https://github.com/openclaw/fs-safe/pull/869))
|
|
24
|
+
- **Move receipts:** publication receipts capture the source identity after synchronous authorization callbacks return, so a source replaced during authorization is reported accurately. ([#868](https://github.com/openclaw/fs-safe/pull/868))
|
|
25
|
+
- **Atomic copy fallback:** report a failed restoration as a failure even when the underlying error carries a restored receipt. ([#851](https://github.com/openclaw/fs-safe/pull/851))
|
|
26
|
+
- **Archive read limits:** keep the validated entry-read byte limit fixed when callers mutate the options during a read. ([#852](https://github.com/openclaw/fs-safe/pull/852))
|
|
27
|
+
- **Watch on macOS:** reconcile notifications for changes to the watched Root itself immediately instead of waiting for the periodic scan. ([#858](https://github.com/openclaw/fs-safe/pull/858))
|
|
28
|
+
- **`pathScope` tilde names:** keep literal `~` directory names inside scoped file and existing-path lookups instead of expanding them. ([#856](https://github.com/openclaw/fs-safe/pull/856))
|
|
29
|
+
|
|
30
|
+
### Performance
|
|
31
|
+
|
|
32
|
+
- **Guarded file copies:** reuse checked canonical POSIX roots during initial path admission, reducing repeated path-resolution work in synchronous plugin source captures without changing per-file identity or race checks.
|
|
33
|
+
- **Root walks:** reuse normalized directory prefixes, cutting a 50k-file walk by 5.6% and its sampled allocation by about 9% while keeping every filesystem and identity check. ([#870](https://github.com/openclaw/fs-safe/pull/870))
|
|
34
|
+
- **Atomic writes:** non-durable async POSIX writes skip a redundant mode change when the staged file already has the requested permissions. ([#871](https://github.com/openclaw/fs-safe/pull/871))
|
|
35
|
+
- **Guarded mutations:** fewer promise allocations around synchronous guard checks, with directory identity checks unchanged. ([#857](https://github.com/openclaw/fs-safe/pull/857))
|
|
36
|
+
- **Archive publication:** fewer promise allocations in archive guard checks, without removing identity or containment checks. ([#864](https://github.com/openclaw/fs-safe/pull/864))
|
|
37
|
+
- **Watch:** Linux and Windows watch passes skip macOS stream-path preparation. ([#860](https://github.com/openclaw/fs-safe/pull/860))
|
|
38
|
+
- **Permission diagnostics:** bound escaping work for large error messages without changing the displayed excerpts. ([#859](https://github.com/openclaw/fs-safe/pull/859))
|
|
39
|
+
|
|
5
40
|
## 0.24.2 - 2026-10-07
|
|
6
41
|
|
|
7
42
|
### Fixes
|
|
@@ -22,7 +22,7 @@ await fs.write("../escape.txt", "x"); // throws FsSafeError("outside-
|
|
|
22
22
|
|
|
23
23
|
That's the whole pitch. `root()` is the product; the rest of the package — JSON stores, atomic writes, secret files, archive extraction, temp workspaces — is supporting cast for the same boundary.
|
|
24
24
|
|
|
25
|
-
Full docs and reference at **[fs-safe.io](https://fs-safe.io)**.
|
|
25
|
+
Full docs and reference at **[fs-safe.io](https://fs-safe.io)**. For synchronous plugin captures, [guarded file copies and batches](docs/copy.md#synchronous-guarded-file-copies) return owned destination descriptors while preserving per-file checks.
|
|
26
26
|
|
|
27
27
|
## Contents
|
|
28
28
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { copyRootFileSync, type CopyRootFileSyncOptions, type CopiedRootFileSync } from "./copy-root-file-sync.js";
|
|
1
|
+
export { copyRootFileSync, createRootFileCopyBatchSync, type RootFileCopyBatchSync, type CopyRootFileSyncOptions, type CopiedRootFileSync } from "./copy-root-file-sync.js";
|
|
2
2
|
export { createAsyncLock } from "./async-lock.js";
|
|
3
3
|
export { createDirectory, createDirectorySync, createFileSync, type CreateDirectoryOptions, type CreateFileOptions, type OwnedFileDescriptorSync, } from "./create.js";
|
|
4
4
|
export { copyFileHandle, copyFileDescriptorSync, type CopyFileHandleOptions } from "./file-handle-transfer.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { copyRootFileSync } from "./copy-root-file-sync.js";
|
|
1
|
+
export { copyRootFileSync, createRootFileCopyBatchSync } from "./copy-root-file-sync.js";
|
|
2
2
|
// Advanced composition surface. These exports are less stable than the focused
|
|
3
3
|
// public subpaths; prefer root/json/store/temp/archive unless you are building a
|
|
4
4
|
// higher-level primitive.
|
|
@@ -65,7 +65,7 @@ export async function finalizeArchivePublication(params) {
|
|
|
65
65
|
const check = () => params.deadline?.check();
|
|
66
66
|
const assertGuards = async (guards) => {
|
|
67
67
|
for (const guard of [params.destinationGuard, ...guards, params.sourceGuard]) {
|
|
68
|
-
|
|
68
|
+
assertDirectoryIdentityGuard(guard);
|
|
69
69
|
check();
|
|
70
70
|
}
|
|
71
71
|
};
|
|
@@ -98,15 +98,15 @@ async function mergeTree(params, publication, durable = true, entryUmask = 0) {
|
|
|
98
98
|
assertSourceDirectory(ancestor);
|
|
99
99
|
};
|
|
100
100
|
const assertGuards = async () => {
|
|
101
|
-
|
|
101
|
+
assertDirectoryIdentityGuard(destinationGuard);
|
|
102
102
|
check();
|
|
103
103
|
for (const ancestor of ancestors) {
|
|
104
|
-
|
|
104
|
+
assertDirectoryIdentityGuard(ancestor.guard);
|
|
105
105
|
check();
|
|
106
106
|
await ancestor.owner.verify(check);
|
|
107
107
|
check();
|
|
108
108
|
}
|
|
109
|
-
|
|
109
|
+
assertDirectoryIdentityGuard(sourceGuard);
|
|
110
110
|
check();
|
|
111
111
|
};
|
|
112
112
|
const walk = async (sourceDir) => {
|
|
@@ -184,7 +184,7 @@ async function mergeTree(params, publication, durable = true, entryUmask = 0) {
|
|
|
184
184
|
await owner.apply(mode, { check, beforeChmod: async () => {
|
|
185
185
|
await assertGuards();
|
|
186
186
|
assertSourceAncestors();
|
|
187
|
-
|
|
187
|
+
assertDirectoryIdentityGuard(guard);
|
|
188
188
|
check();
|
|
189
189
|
await assertResolvedInsideDestination({
|
|
190
190
|
destinationRealDir, targetPath: destinationPath, originalPath,
|
|
Binary file
|
|
@@ -213,7 +213,8 @@ async function readNativeBufferEntry(native, buffer, kind, requested, displayPat
|
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
215
|
export async function readArchiveEntry(archivePath, entryPath, options) {
|
|
216
|
-
|
|
216
|
+
const maxBytes = options.maxBytes;
|
|
217
|
+
if (!Number.isSafeInteger(maxBytes) || maxBytes < 0) {
|
|
217
218
|
throw new RangeError("maxBytes must be a non-negative safe integer");
|
|
218
219
|
}
|
|
219
220
|
const kind = options.kind ?? resolveArchiveKind(archivePath);
|
|
@@ -228,7 +229,7 @@ export async function readArchiveEntry(archivePath, entryPath, options) {
|
|
|
228
229
|
admitZipBuffer(buffer, resolveExtractLimits(), entry => { zipEntries.push(entry); });
|
|
229
230
|
const native = getNativeBinding();
|
|
230
231
|
if (native)
|
|
231
|
-
return await readNativeBufferEntry(native, buffer, kind, requestedEntry, entryPath,
|
|
232
|
-
return kind === "zip" ? await readZipEntry(buffer, requestedEntry,
|
|
233
|
-
: await readTarEntry(buffer, requestedEntry,
|
|
232
|
+
return await readNativeBufferEntry(native, buffer, kind, requestedEntry, entryPath, maxBytes, zipEntries);
|
|
233
|
+
return kind === "zip" ? await readZipEntry(buffer, requestedEntry, maxBytes, zipEntries)
|
|
234
|
+
: await readTarEntry(buffer, requestedEntry, maxBytes, kind);
|
|
234
235
|
}
|
|
@@ -5,7 +5,7 @@ import { ArchiveSecurityError } from "./archive-errors.js";
|
|
|
5
5
|
export type ArchiveDirectoryGuard = AsyncDirectoryGuard<BigIntStats>;
|
|
6
6
|
export declare function createArchiveSymlinkTraversalError(originalPath: string): ArchiveSecurityError;
|
|
7
7
|
export declare function createDirectoryIdentityGuard(dir: string): Promise<ArchiveDirectoryGuard>;
|
|
8
|
-
export declare function assertDirectoryIdentityGuard(guard: ArchiveDirectoryGuard):
|
|
8
|
+
export declare function assertDirectoryIdentityGuard(guard: ArchiveDirectoryGuard): void;
|
|
9
9
|
export declare function prepareArchiveDestinationGuard(destDir: string): Promise<ArchiveDirectoryGuard>;
|
|
10
10
|
export declare function prepareArchiveDestinationDir(destDir: string): Promise<string>;
|
|
11
11
|
export declare function assertResolvedInsideDestination(params: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import fsSync, {} from "node:fs";
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import {
|
|
4
|
+
import { assertDirectoryGuard, createAsyncDirectoryGuard, } from "./directory-guard.js";
|
|
5
5
|
import { ownExtractionDestinationMutation, } from "./archive-deadline.js";
|
|
6
6
|
import { ArchiveSecurityError, } from "./archive-errors.js";
|
|
7
7
|
import { FsSafeError } from "./errors.js";
|
|
@@ -38,9 +38,9 @@ export async function createDirectoryIdentityGuard(dir) {
|
|
|
38
38
|
throw err;
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
export
|
|
41
|
+
export function assertDirectoryIdentityGuard(guard) {
|
|
42
42
|
try {
|
|
43
|
-
|
|
43
|
+
assertDirectoryGuard(guard, "native");
|
|
44
44
|
}
|
|
45
45
|
catch (err) {
|
|
46
46
|
if (err instanceof FsSafeError || isNotFoundPathError(err)) {
|
|
@@ -200,7 +200,7 @@ async function prepareOutputPath(params, assertGuards, privateWorkingMode = fals
|
|
|
200
200
|
if (existingDestinationGuard && assertGuards)
|
|
201
201
|
await assertGuards();
|
|
202
202
|
else {
|
|
203
|
-
|
|
203
|
+
assertDirectoryIdentityGuard(destinationGuard);
|
|
204
204
|
checkExtractionDeadline(params.deadline);
|
|
205
205
|
await assertGuards?.();
|
|
206
206
|
}
|
|
@@ -213,46 +213,30 @@ async function prepareOutputPath(params, assertGuards, privateWorkingMode = fals
|
|
|
213
213
|
originalPath: params.originalPath,
|
|
214
214
|
});
|
|
215
215
|
checkExtractionDeadline(params.deadline);
|
|
216
|
-
|
|
217
|
-
|
|
216
|
+
const relativePath = params.isDirectory ? relPath : path.posix.dirname(relPath);
|
|
217
|
+
if (params.isDirectory || relativePath !== ".") {
|
|
218
|
+
const directoryPath = params.isDirectory ? params.outPath : path.dirname(params.outPath);
|
|
219
|
+
await getFsSafeTestHooks()?.beforeArchiveOutputMutation?.("mkdir", directoryPath);
|
|
218
220
|
checkExtractionDeadline(params.deadline);
|
|
219
221
|
await ownExtractionDestinationMutation(params.deadline, async () => {
|
|
220
222
|
await assertOutputGuards();
|
|
221
223
|
checkExtractionDeadline(params.deadline);
|
|
222
|
-
await mkdirArchiveOutput({
|
|
223
|
-
targetRoot,
|
|
224
|
-
relativePath: relPath,
|
|
225
|
-
originalPath: params.originalPath,
|
|
226
|
-
});
|
|
227
|
-
checkExtractionDeadline(params.deadline);
|
|
228
|
-
await assertDirectoryIdentityGuard(destinationGuard);
|
|
224
|
+
await mkdirArchiveOutput({ targetRoot, relativePath, originalPath: params.originalPath });
|
|
229
225
|
checkExtractionDeadline(params.deadline);
|
|
230
|
-
|
|
231
|
-
destinationRealDir: params.destinationRealDir,
|
|
232
|
-
targetPath: params.outPath,
|
|
233
|
-
originalPath: params.originalPath,
|
|
234
|
-
});
|
|
235
|
-
checkExtractionDeadline(params.deadline);
|
|
236
|
-
});
|
|
237
|
-
return;
|
|
238
|
-
}
|
|
239
|
-
const parentRel = path.posix.dirname(relPath);
|
|
240
|
-
if (parentRel !== ".") {
|
|
241
|
-
await getFsSafeTestHooks()?.beforeArchiveOutputMutation?.("mkdir", path.dirname(params.outPath));
|
|
242
|
-
checkExtractionDeadline(params.deadline);
|
|
243
|
-
await ownExtractionDestinationMutation(params.deadline, async () => {
|
|
244
|
-
await assertOutputGuards();
|
|
245
|
-
checkExtractionDeadline(params.deadline);
|
|
246
|
-
await mkdirArchiveOutput({
|
|
247
|
-
targetRoot,
|
|
248
|
-
relativePath: parentRel,
|
|
249
|
-
originalPath: params.originalPath,
|
|
250
|
-
});
|
|
251
|
-
checkExtractionDeadline(params.deadline);
|
|
252
|
-
await assertDirectoryIdentityGuard(destinationGuard);
|
|
226
|
+
assertDirectoryIdentityGuard(destinationGuard);
|
|
253
227
|
checkExtractionDeadline(params.deadline);
|
|
228
|
+
if (params.isDirectory) {
|
|
229
|
+
await assertResolvedInsideDestination({
|
|
230
|
+
destinationRealDir: params.destinationRealDir,
|
|
231
|
+
targetPath: params.outPath,
|
|
232
|
+
originalPath: params.originalPath,
|
|
233
|
+
});
|
|
234
|
+
checkExtractionDeadline(params.deadline);
|
|
235
|
+
}
|
|
254
236
|
});
|
|
255
237
|
}
|
|
238
|
+
if (params.isDirectory)
|
|
239
|
+
return;
|
|
256
240
|
await assertResolvedInsideDestination({
|
|
257
241
|
destinationRealDir: params.destinationRealDir,
|
|
258
242
|
targetPath: path.dirname(params.outPath),
|
|
@@ -292,12 +276,12 @@ export async function withStagedArchiveDestination(params) {
|
|
|
292
276
|
const stagingGuard = await createDirectoryIdentityGuard(stagingDir);
|
|
293
277
|
try {
|
|
294
278
|
await fs.chmod(stagingDir, ARCHIVE_STAGING_MODE).catch(() => undefined);
|
|
295
|
-
|
|
279
|
+
assertDirectoryIdentityGuard(stagingGuard);
|
|
296
280
|
return await params.run(stagingDir);
|
|
297
281
|
}
|
|
298
282
|
finally {
|
|
299
283
|
try {
|
|
300
|
-
|
|
284
|
+
assertDirectoryIdentityGuard(stagingGuard);
|
|
301
285
|
await fs.rm(stagingDir, { recursive: true, force: true }).catch(() => undefined);
|
|
302
286
|
}
|
|
303
287
|
catch {
|