Commit Graph
967 Commits
Author SHA1 Message Date
vorotamoroz a3b55ed439 Merge main for startup integrity follow-up 2026-10-24 11:42:35 +00:00
vorotamoroz fd2eebdf38 fix(startup): recheck sizes after reading storage 2026-10-24 11:41:56 +00:00
vorotamoroz 73a14d4e4b Releasing 1.0.40 2026-10-24 03:16:36 +00:00
vorotamoroz 916784c5c7 fix: clarify device version notices 2026-10-23 20:18:29 +00:00
vorotamoroz 1a54d21e71 test: cover Commonlib 0.2 consumer workflows 2026-10-23 17:37:42 +00:00
vorotamoroz b40784e66f Shorten device version compatibility guidance 2026-10-23 16:41:21 +00:00
vorotamoroz 4f7a6b7ae9 Explain compatibility costs in device review 2026-10-23 16:32:12 +00:00
vorotamoroz 39ef429d7b Clarify device review guidance and follow dialogue windows 2026-10-23 16:07:35 +00:00
s-qin fc2b35e0dc perf(startup): inspect storage sizes without loading healthy files 2026-10-23 23:54:13 +08:00
vorotamoroz 76808878da Merge Joined devices interface and notices 2026-10-23 15:24:18 +00:00
vorotamoroz 0a2b13c246 Merge initial Fast Fetch integration 2026-10-23 15:23:21 +00:00
vorotamoroz 1a68399dea Merge Hidden File Sync selector coverage 2026-10-23 15:22:25 +00:00
vorotamoroz 96ad2737a7 Adopt Commonlib 0.2.0 with injected device storage 2026-10-23 13:56:54 +00:00
vorotamoroz 404d4279c0 Add Joined devices dialogue and version notices 2026-10-23 10:13:46 +00:00
vorotamoroz d1e4c34054 Prepare consistent Chunk sizes and fresh Fast Fetch integration 2026-10-23 09:12:02 +00:00
vorotamoroz 9d30bed52d Clarify Hidden File Sync selectors and test normal allow-lists 2026-10-23 01:11:41 +00:00
github-actions[bot] 6842b9c013 Releasing 1.0.39 2026-10-20 10:25:53 +00:00
vorotamoroz 32874ea97f Polish diagnostic reporting and local pseudonym follow-up 2026-10-20 08:23:56 +00:00
vorotamoroz b332be6924 Show diagnostic name and report format choices as radio buttons 2026-10-19 18:49:54 +00:00
vorotamoroz c23b055cd6 Verify database diagnostics and keep mobile report controls visible 2026-10-19 13:49:01 +00:00
vorotamoroz 8aeb7c60ef Add read-only database diagnostics 2026-10-19 12:49:02 +00:00
github-actions[bot] c0275f8f4b Releasing 1.0.38 2026-10-17 14:45:16 +00:00
vorotamoroz e6794ca967 Integrate opt-in NFC path identity and combined regression coverage 2026-10-17 14:14:59 +00:00
vorotamoroz 6f2db09ca9 Integrate content evidence for unchanged files 2026-10-17 14:14:06 +00:00
vorotamoroz bf8e899bf7 Cover content evidence after conflict-base compaction 2026-10-17 13:49:11 +00:00
vorotamoroz 081d3f3339 Align multi-device tests with retained content evidence 2026-10-17 13:39:22 +00:00
vorotamoroz ddb4d52931 Add opt-in Unicode NFC path identity for CouchDB 2026-10-17 13:31:19 +00:00
vorotamoroz f47db4f256 Preserve unchanged-file reflection after revision history pruning 2026-10-17 13:24:53 +00:00
vorotamoroz 83d40a561f Preserve adopted encryption settings when prerequisites change 2026-10-17 08:43:04 +00:00
vorotamoroz d31ad56211 Fix tweak recovery for effective encryption settings 2026-10-17 08:23:08 +00:00
vorotamoroz 30f46649de Prepare release 1.0.37 2026-10-16 14:53:43 +00:00
vorotamoroz 1953bbefb7 Merge commit from fork
Reject unlisted filesystem aliases before vault mutations
2026-10-16 23:38:50 +09:00
vorotamoroz 0bcd9af6a5 Preserve CLI file creation times across in-place edits 2026-10-15 11:07:43 +00:00
Kim Jansheden b71cc14022 Reject unlisted filesystem aliases before vault mutations
(src/serviceModules/FileSystemAdapters/pathAliasGuard.ts)
- Require every existing, unindexed path component to use a name listed by its parent directory.
- Accept case-only and Unicode-normalisation differences while caching positive directory listings briefly.

(src/serviceModules/FileSystemAdapters/ObsidianStorageAdapter.ts, src/serviceModules/FileSystemAdapters/ObsidianVaultAdapter.ts)
- Apply the alias boundary before text, binary, append, directory, removal, create, modify, rename, delete, and trash operations.
- Check both the source and destination of vault renames before calling the host API.

(src/serviceModules/FileSystemAdapters/pathAliasGuard.unit.spec.ts)
- Cover directory and file aliases across every mutating adapter route with synthetic host behaviour.
- Exercise real host filesystem aliases where the platform exposes them, including new files and directories below an aliased folder.
- Preserve listed names, case-only differences, indexed paths, and new-file behaviour.

(src/serviceModules/FileSystemAdapters/ObsidianStorageAdapter.unit.spec.ts, src/serviceModules/FileSystemAdapters/ObsidianVaultAdapter.unit.spec.ts)
- Extend existing adapter fixtures with the vault-index contract used by the guard.
2026-10-14 17:15:20 +02:00
vorotamoroz 1413b63d1f Merge main into the CLI P2P host fix 2026-10-14 13:00:57 +00:00
vorotamoroz 51d16d06c5 Use CLI release tags for Docker image versions 2026-10-14 12:22:52 +00:00
vorotamoroz 8854eb9a15 Run CLI Docker validation on native architectures and publish tested images 2026-10-14 11:22:49 +00:00
vorotamoroz 8892f659f6 Reduce repeated CLI builds and isolate CI publication 2026-10-14 10:08:35 +00:00
vorotamoroz 3e2b4dcb3b Fix automatic P2P settings restoration in CLI host mode 2026-10-14 08:02:13 +00:00
vorotamoroz 4e9c3c8d48 Prepare release 1.0.36 2026-10-13 14:02:56 +00:00
vorotamoroz cbdab5484a Merge pull request #1245 from vrtmrz/fix/configuration-encryption-apply
Preserve configuration encryption edits when applying settings
2026-10-13 21:37:05 +09:00
vorotamoroz 4876374b7e Merge current main into Simplified Chinese translations 2026-10-13 12:14:03 +00:00
vorotamoroz 29c2a0c24c Merge current main into configuration encryption fixes 2026-10-13 12:13:15 +00:00
vorotamoroz 8c258c9224 Preserve Fast Setup choices while translating at display time 2026-10-13 11:04:09 +00:00
vorotamoroz d346bb27ab Merge current main and Maintenance keys into settings localisation 2026-10-13 11:01:31 +00:00
vorotamoroz 9aabbfe0b4 Merge current main into Maintenance translation key migration 2026-10-13 10:47:42 +00:00
vorotamoroz db9f7af4f1 Preserve configuration encryption edits when applying settings 2026-10-13 04:18:57 +00:00
llingting0 c54c716325 i18n(zh): complete Simplified Chinese catalogue
Fill the 408 entries that were missing from the Simplified Chinese
catalogue, bringing coverage of en.json from 72.5% to 100%
(1073 -> 1481 entries; 1480/1480 English keys now translated).

Files updated, per docs/adding_translations.md ("Commit the edited YAML
and all regenerated JSON and TypeScript resources together"):

- src/common/messagesYAML/zh.yaml            - source catalogue
- src/common/messagesJson/zh.json            - npm run i18n:yaml2json
- src/common/messages/combinedMessages.prod.ts
                                             - npm run i18n:bakejson

The TypeScript resource matters: the release workflow runs
`npm run build`, which is only `node esbuild.config.mjs production` and
does NOT re-run `i18n:bake`. Since src/common/translation.ts imports
combinedMessages.prod.ts directly, a catalogue change that omits this
file would not reach the shipped main.js.

Verification

- No existing translation was modified: every key already present in
  zh.json is byte-identical (0 changed, 0 removed).
- Placeholders checked string-for-string against the English source.
  15 new entries contain ${...} or {HERE}; all match.
- combinedMessages.prod.ts regenerated with _tools/bakei18n.ts and
  formatted with the project's Prettier config. The diff against main is
  408 added `zh:` lines plus the expected bookkeeping, and no other
  language changes.
- Terminology follows the existing catalogue (Vault -> 库,
  Passphrase -> 密码短语, Setup URI -> 设置 URI, chunk -> 块).
  Technical identifiers (URL, JWT, CouchDB, S3, TURN, IDB, P2P) are
  intentionally left in English, matching current practice.

Two unrelated upstream issues, not addressed here

1. `dialog.yourLanguageAvailable` defines its placeholder as
   `%{Display language}` while `$msg()` substitutes on `${...}`, so the
   placeholder is never expanded and the literal text is shown in every
   language.
2. The committed YAML catalogues appear stale relative to the JSON ones
   (e.g. `en.yaml` lacks entries that `en.json` already contains, and
   its wrapping differs from current tool output). This affects every
   language and probably deserves a separate change.
2026-10-12 13:59:57 +08:00
github-actions[bot] a5e3b47088 Releasing 1.0.35 2026-10-05 02:02:44 +00:00
Kim Jansheden 893a0e26c3 fix(sync): honour readiness and suspension in Customisation Sync
(src/features/ConfigSync/CmdConfigSync.ts)
- Call the readiness predicate before accepting configuration file events.
- Stop the periodic sweep while settings are applied and let the resume lifecycle scan and restart it once.

(src/features/ConfigSync/CmdConfigSync.applySettings.unit.spec.ts)
- Exercise the ControlService settings path while active, suspended, and resumed.
- Verify that suspended settings application performs no scan and leaves the periodic sweep stopped.

(src/features/ConfigSync/CmdConfigSync.readiness.unit.spec.ts)
- Cover configuration file events before and after application readiness.

(updates.md)
- Document the readiness and suspension behaviour.
2026-10-03 15:05:17 +02:00