fix: track noteHash separately to detect changes beyond 10k chars
space.remanso.note supports up to 30k chars while site.standard.document
only captures the first 10k chars of stripped text. A single contentHash
was insufficient to detect note-only changes in the 10k-30k range,
especially after running sync.
- Add computeNoteHash() hashing raw markdown content up to 30k chars
plus note-specific frontmatter fields (theme, fontSize, fontFamily,
discoverable)
- Store noteHash independently in state, written only after a successful
note create/update — so silent failures are retried on the next run
- Change detection now checks contentHash (document) and noteHash (note)
independently; only the changed record is updated
- Fix sync's matchesPDS to also compare the first 5k chars of note body
content against PDS, preventing incorrect "in sync" verdicts for notes
with content only in the 10k-30k range