mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-07-17 16:37:43 +00:00
Record the LocalFile check-then-write TOCTOU race as an accepted limitation and correct stale references in the reliability doc: - §5 documents the non-atomic rev-check + write as an accepted limitation, honestly scoping each mitigation: the upload lock only serializes a single client's own uploads (not across machines); the mismatch-fallback catches only a concurrent write visible at check time (never force-overwriting), so a write landing inside the check→write window can still be lost; .bak recovery is best-effort and only covers a corrupt/interrupted primary, not a valid concurrent overwrite or a fully-missing one. - Distinguishes torn writes (prevented on Electron via temp-file + renameSync; still in-place on Android SAF) from the CAS race (not closed by atomic rename; needs OS-level CAS, left accepted). - §1 corrected: _uploadWithRetry()/:474/"retries once" → current _uploadWithMismatchFallback with _MAX_UPLOAD_RETRIES=2 (3 attempts), and clarify that genuine concurrency throws immediately rather than exhausting retries. |
||
|---|---|---|
| .. | ||
| long-term-plans | ||
| plans | ||
| promotion | ||
| research | ||
| screens | ||
| sync-and-op-log | ||
| wiki | ||
| add-new-integration.md | ||
| android-edge-to-edge-keyboard.md | ||
| apple-release-automation.md | ||
| build-and-publish-notes.md | ||
| documentation-guide.md | ||
| ENV_SETUP.md | ||
| github-access-token-instructions.md | ||
| gitlab-access-token-instructions.md | ||
| how-to-rate.md | ||
| howto-refresh-snap-credentials.md | ||
| i18n-script-usage.md | ||
| legacy-webview-analysis.md | ||
| mac-app-store-code-signing-guide.md | ||
| performance-project-tag-report.md | ||
| plainspace-api-extension-plan.md | ||
| plainspace-integration-plan.md | ||
| plugin-development.md | ||
| styling-guide.md | ||
| theming-contract.md | ||
| TRANSLATING.md | ||
| unused-translations-analysis.md | ||
| update-android-app.md | ||
| update-mac-certificates.md | ||