C.W.K.
Stream
Lesson 04 of 05 · published

Don't Rebuild the Editor

~11 min · rekindle, round-trip, prose, boundary

Level 0Unmarked Path
0 XP0/35 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"Logging requires a real editor. Waystone has one — it just lives in another repo, and that is fine."

The Second-Editor Temptation

Travel logging means writing, and writing means an editor. The obvious move is to build one: a nice markdown box in Waystone, autosave, some formatting. And that is exactly how a domain engine starts drifting into a worse copy of a sibling. A mature editor is not a text box — it is autosave, document history, attachments, undo, input-method handling, and a hundred details somebody already got right. Waystone refuses to build a second one. Prose belongs to Rekindle, the family's writing editor, and Waystone round-trips to it.

The Ownership Split Is Strict

The line is drawn precisely: Waystone is canonical for dates, places, itinerary, routes, reservations, status, decisions, and structured travel facts. Rekindle is canonical for prose bodies and writing history. Send a daily log to Rekindle to write it properly; pull the latest revision back to update the Waystone projection. What crosses the boundary is not a copy of the editor — it is a link: the document's stable ID, its kind, its revision, a content hash, and the last sync time. Filenames and titles are mutable presentation; the stable ID carries identity.

Round Trips Must Detect Divergence

The dangerous part of any two-system round trip is the moment both sides changed. The naive answer — last write wins — silently destroys somebody's work. Waystone's rule is that round-trip sync must detect divergent edits rather than resolve them silently. Better to surface "these two versions disagree, which do you want?" than to quietly pick one and lose the other. Notice the pattern: the same refusal to overwrite that governs plans, breadcrumbs, and baselines shows up again at the sibling boundary. Silent last-write-wins is the cross-repo version of a retrospective rewrite.

The forbidden shortcut is copy-pasting Rekindle's editor components into Waystone "just to get started." That produces a fork with no owner, which drifts from the original the moment either side improves. Integration through the canonical path costs more today and is the only version that stays correct next year.

Code

What crosses the boundary (a link, not an editor)·text
journey_uid          # which trip this prose belongs to
day_uid / event_uid  # which day or event, when applicable
rekindle_note_id     # STABLE identity (filename/title are presentation)
document_kind        # daily-log / script / description / ...
revision             # which version Waystone last saw
content_hash         # to detect that it changed
last_synced_at       # when the projection was refreshed

# Send to Rekindle -> write prose there (it owns the editor)
# Pull from Rekindle -> refresh Waystone's projection + analysis
# If BOTH sides changed: surface the divergence. Never last-write-wins.

External links

Exercise

Find two tools you use that sync the same content — notes across devices, a doc in two apps, a file in two clouds. Edit the same item in both while offline, then reconnect. Did it detect the conflict and ask, or did one version silently win? If something silently won, some version of your work was deleted without anyone telling you.
Hint
Silent last-write-wins is everywhere and almost never noticed, because the loss is invisible by construction — you never see the version that lost. A sync that surfaces conflicts is annoying exactly at the moments it is saving you from deleting your own work.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.