No description
  • TypeScript 76.5%
  • CSS 16.4%
  • JavaScript 5.1%
  • Shell 1.5%
  • Dockerfile 0.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Benno Richters eaa8ff9ff6 Detect stale notes on save instead of failing the push
Saving pulled after writing the file, so an external git change left the
pull to fail, the push to be rejected, and the error to be swallowed by the
queue: the note looked saved but never reached origin, and the editor's
cached content silently overwrote the external edit.

Saves now pull (rebase) first, then compare the note against the baseHash
the editor was rendered with. A match writes, commits and pushes; a
mismatch returns a conflict and re-renders the editor with the submitted
text plus the version from git, with baseHash advanced so a second save
goes through. Saves are awaited end to end, so failures reach the user.

When the remote is unreachable the save still commits locally and the note
page says so; /sync now pushes as well as pulls to clear that backlog. A
failed pull aborts any in-progress rebase so the repo is never wedged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KbwQp5nGNCPfdAmsMp8YJa
2026-08-20 10:03:17 +00:00
.claude claude settings 2026-08-17 13:45:43 +00:00
.claude-box claude box 2026-08-17 15:21:52 +02:00
public Detect stale notes on save instead of failing the push 2026-08-20 10:03:17 +00:00
scripts claude box 2026-08-20 11:34:56 +02:00
src Detect stale notes on save instead of failing the push 2026-08-20 10:03:17 +00:00
.dockerignore Add Dockerfile to install git-remote-gcrypt in container 2026-01-13 19:03:59 +00:00
.env.example claude box 2026-08-20 11:34:56 +02:00
.gitignore Implement notes directory integration and SKIP_AUTH 2026-01-05 15:44:25 +00:00
app.json merge 2026-01-16 16:35:04 +01:00
CLAUDE.md Detect stale notes on save instead of failing the push 2026-08-20 10:03:17 +00:00
Dockerfile claude box 2026-08-20 11:34:56 +02:00
LICENSE Add MIT License to the project 2026-01-27 13:38:38 +01:00
package-lock.json Bump nanoid to 3.3.18 for CVE-2026-67213 2026-08-17 18:35:22 +00:00
package.json Bump nanoid to 3.3.18 for CVE-2026-67213 2026-08-17 18:35:22 +00:00
Procfile Add Procfile for Dokku deployment 2026-01-05 15:53:45 +00:00
README.md Simplify README to refer to CLAUDE.md 2026-03-13 15:18:57 +01:00
SECURITY-TODO.md claude box 2026-08-20 11:34:56 +02:00
tsconfig.json Exclude test files from tsc build so vitest stops running dist copies 2026-07-19 08:55:34 +02:00

Notes App

See CLAUDE.md for documentation.