Commit Graph
255 Commits
Author SHA1 Message Date
Zeedif caa8c92cbe fix(i18n): keep activateReason default untranslated per review
Commonlib compares this value against the raw "updated" literal to
distinguish automatic activation from a user-requested run, so
translating it changes behaviour rather than just the displayed text.
Keep the default raw and drop the "updated" catalogue entry; the
manually-requested reason stays translated.
2026-08-26 20:41:00 -06:00
ZeedifandClaude Sonnet 5 2cefff43bb fix(i18n): repair Spanish catalogue placeholders and missing strings
- Fix %{Display language} placeholder mismatch so the language-switch
  notice resolves to the actual language name instead of leaving the
  raw token in the Spanish text.
- Translate the remaining English strings shown in the Setup Wizard
  Intro and CouchDB screens (missing setup/CouchDB copy, "Check server
  requirements", "Create/Connect to database and continue", etc.).
- Translate the Config Doctor's activation reason (previously spliced
  into the Spanish sentence as the raw English word "updated" or
  "you wanted(Thank you)!") by routing it through the catalogue at
  the two call sites that set it.
- Fix Spanish strings that kept English-style Title Case instead of
  sentence case, and route the "OK" button through the catalogue so it
  renders as "Aceptar".

Scope is limited to Spanish content plus the minimal code changes
needed to make two hard-coded strings translatable at all; no other
locale files were touched.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-23 20:33:57 -06:00
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