Commit Graph
253 Commits
Author SHA1 Message Date
vorotamoroz f09b4c779e Expose P2P transport compatibility profiles 2026-08-21 16:28:42 +00:00
nimulaandClaude Opus 5 f8ee3c8662 i18n: wire the display-language translator into the settings manifest
Commonlib's `getConfig(key, translate?)` and `getConfName(key, translate?)`
default `translate` to `englishMessageTranslator`, and this plug-in never
passed the second argument. Every automatically wired setting therefore
rendered its name and description in English, whatever `displayLanguage` was
set to. Commonlib's own Config Doctor already threads a translator through
`getConfName`, so this only restores the argument which was missing here.

`src/modules/features/SettingDialogue/settingConstants.ts` now re-exports the
names it supplies explicitly and adds thin `getConfig` and `getConfName`
wrappers which default the translator to `translateLiveSyncMessage`. That
reaches all three existing call sites, and therefore the 102 `setAuto` and
`autoWire*` calls across the setting panes, the setup-wizard configuration
summaries, and the externally-modified-setting prompt. Of the 225 distinct
name and description strings in the two manifest tables, 160 are already
catalogue keys with translations; the remaining 65 are not catalogue keys and
pass through unchanged.

`ModuleResolveMismatchedTweaks` used `confName()`, which accepts no
translator, so it gains a local `localisedConfName()` instead. Swapping in
`getConfName()` there would have silently dropped the `statusDisplay()`
suffix, replaced the empty-string fallback for an unknown key with
`${key} (No info)`, and introduced `SettingInformation` as a second source.

English output is unchanged: every catalogue key which contains a space has a
value identical to the key itself, so translating under the default language
is idempotent.

Verified with `npm run check`, `npm run test:unit`, and `npm run build`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-20 02:17:20 +00:00
vorotamoroz dc5274df27 fix: persist document history restoration in the database 2026-08-19 06:24:50 +00:00
vorotamoroz de03534d2f fix: close finite remote database connections 2026-08-14 10:29:29 +00:00
vorotamoroz c933674a0d Add safe Metadata document ID repair 2026-08-12 18:56:17 +00:00
vorotamoroz b42df389fb Distinguish absent and unreadable remote settings during setup
Use typed Commonlib outcomes to guide Fetch and Rebuild without treating a new remote as a failed read. Preserve automatic synchronisation choices when scheduled initialisation is cancelled.
2026-08-06 08:34:41 +00:00
vorotamoroz 9d25a00c1d Add sleep preferences for finite synchronisation 2026-08-05 09:50:13 +00:00
vorotamoroz 50a51bf07e Use setting control for remediation status 2026-07-31 10:08:34 +00:00
vorotamoroz 1570136703 Fix remediation status element insertion 2026-07-31 09:13:56 +00:00
vorotamoroz fbfb77440d Merge branch 'main' into pr/zeedif/1015 2026-07-31 07:14:14 +01:00
vorotamoroz a251648e48 Merge pull request #1009 from SeleiXi/feat/history-rev-nav
feat: Add revision prev/next buttons next to history slider
2026-07-31 13:43:14 +09:00
Ouyang Xingyuan 0df1f57f3b fix: keep replicated document application active
Why:
- Large downloaded batches can outlive the finite remote operation and be suspended before every document reaches the Vault.
- The v1.0 activity contract requires local application to remain distinct from remote-operation reporting.

Changes:
- Add an Obsidian-owned local application activity boundary which reuses Wake Lock policy without incrementing remote activity.
- Retain one boundary through queue processing and the final recovery snapshot, releasing and reacquiring it around suspension.
- Log final snapshot failures, preserve processing results, and cover the lifecycle with focused tests and documentation.
2026-07-31 11:06:18 +08:00
ZeedifandClaude Opus 5 b6746be73e refactor(i18n): route remaining Obsidian UI text through the message catalogue
Continues the source-key migration inside the application boundary introduced
in 1.0.0, where LiveSync owns its catalogue and consumes Commonlib as a
published package.

- Replace hardcoded user-visible strings in the Obsidian UI (Setup Wizard
  dialogues, P2P panes, Customisation Sync panes, Global History, the JSON
  conflict pane and the remote-configuration menu) with `$msg` calls, keeping
  the English source string as the key.
- Wire up strings whose translations already existed in the catalogue but were
  still rendered as literals, for example the whole Intro dialogue.
- Add the new entries to `src/common/messagesYAML/en.yaml` and `es.yaml`, then
  regenerate `messagesJson/` and `combinedMessages.prod.ts` through the
  documented `i18n:bake` pipeline.
- No Commonlib gitlink or catalogue is involved; every change is
  LiveSync-owned.

Regenerating the catalogue also normalises three pre-existing entries each in
`ko.json` and `zh.json`, where the committed JSON kept a trailing space before
a newline that YAML cannot represent.

Verified with tsc-check, tsc-check:apps, svelte-check and lint.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-30 18:59:19 -06:00
SeleiXi 93bbab4253 fix(history): align revision navigation with v1.0
Use the preferred Obsidian element helper and preseed the real-Obsidian scenario before startup. Register the focused test and strengthen revision boundary coverage.
2026-07-29 23:45:28 +08:00
SeleiXi 8b7d410327 chore: merge upstream main into history revision branch 2026-07-29 23:45:12 +08:00
vorotamoroz 4723771ee0 refactor: compose browser application runtimes 2026-07-29 09:11:57 +00:00
vorotamoroz da4b188b38 Clarify the file inspection action 2026-07-26 15:48:01 +00:00
vorotamoroz 51a749099d Verify P2P pane in a fresh mobile session 2026-07-26 08:06:48 +00:00
vorotamoroz 127d460e18 Improve conflict inspection and recovery workflow 2026-07-25 11:18:10 +00:00
vorotamoroz 12fc43a69c Improve recovery diagnostics and actions 2026-07-25 09:01:25 +00:00
vorotamoroz c8162fd0cd Make dialogue prose selectable 2026-07-24 17:53:55 +00:00
vorotamoroz 20fb027055 Protect conflict chunks during garbage collection 2026-07-24 17:09:22 +00:00
vorotamoroz 07cba4ce83 Keep unreadable revisions for explicit repair 2026-07-24 16:15:46 +00:00
vorotamoroz 658ad6dfe4 Describe saved connections consistently 2026-07-24 16:15:02 +00:00
vorotamoroz 0e5475b7e3 Limit commands to applicable contexts 2026-07-24 16:13:49 +00:00
vorotamoroz d489452583 Improve troubleshooting and compatible setting handling 2026-07-24 08:51:30 +00:00
vorotamoroz bf0fc0aea8 Retire orphaned WebApp tests and classify regression guards 2026-07-23 17:21:16 +00:00
vorotamoroz c8050322e4 Clarify remote setup and verify manual CouchDB onboarding 2026-07-23 16:46:50 +00:00
vorotamoroz 1df034f12a Refine P2P and manual setup workflows 2026-07-23 15:23:47 +00:00
vorotamoroz f8f11f358a Handle multiple conflict revisions deterministically 2026-07-23 06:38:16 +00:00
vorotamoroz d784799969 Improve postponed conflict resolution handling
Keep unresolved conflicts visible after Not now, reopen them only on explicit requests, and clear stale warning and dialogue state when a replicated resolution arrives. Add typed provisional English messages, revision-tree regressions, specifications, and a focused Real Obsidian E2E.
2026-07-23 02:00:24 +00:00
vorotamoroz 87152244d7 Reprocess stored documents after reflection filters change 2026-07-22 06:23:16 +00:00
vorotamoroz 1ef8c88139 Complete Commonlib rc.6 integration and setup workflows 2026-07-21 15:00:28 +00:00
vorotamoroz f195b9be0c Serialise startup compatibility dialogues 2026-07-21 03:39:12 +00:00
vorotamoroz 3eda3316c5 Re-evaluate optional features for 1.0 2026-07-21 01:53:13 +00:00
vorotamoroz ed7471fba5 Validate custom HTTP request bodies 2026-07-20 23:37:04 +00:00
vorotamoroz 104eeadb4b Reduce Community lint type-safety warnings 2026-07-20 18:08:09 +00:00
vorotamoroz 499f9e93e5 Generate current Setup URIs through Commonlib 2026-07-20 15:59:59 +00:00
vorotamoroz 893c08ad2a Create remote profiles during onboarding 2026-07-20 14:33:09 +00:00
vorotamoroz 40a4987b0b Reserve setup initialisation before enabling settings 2026-07-20 14:20:10 +00:00
vorotamoroz 80d1416a81 Align host settings with the 1.0 lifecycle 2026-07-20 13:20:48 +00:00
vorotamoroz 52e7bd25da feat: restore opt-in first-run onboarding 2026-07-20 11:28:41 +00:00
vorotamoroz d28282edad Group Obsidian startup notices by operation 2026-07-19 07:04:54 +00:00
vorotamoroz ed3f81e9f9 Prepare the 1.0 compatibility review flow 2026-07-19 04:34:08 +00:00
vorotamoroz 52138bf7a5 Prefer focused Commonlib entry points 2026-07-18 18:16:16 +00:00
vorotamoroz 81d27a932f Route application diagnostics through owned log paths 2026-07-18 16:53:20 +00:00
vorotamoroz f6b03dc811 refactor: make Svelte prop lifetimes explicit 2026-07-17 15:04:01 +00:00
vorotamoroz 6e00b8195a fix: remove ineffective trash setting toggle 2026-07-17 14:55:30 +00:00
vorotamoroz 326bf77183 refactor: align platform APIs with community review 2026-07-17 14:47:27 +00:00
vorotamoroz 298738fc67 fix: keep packaged dialogs inside mobile safe areas 2026-07-17 13:28:58 +00:00