docs(6209): preference door, systems and notes tools, lesson surfacing, rule versions, backup round trip, JSON reader, charter search, provenance, location filter

Ten more test files: issue, milestone, rule, decision and snippet numbers
come out of docstrings, comments and messages; the preference door states
what a preference is instead of quoting the framing; the JSON reader says
why jq is not assumed instead of what every hook used to do; the backup
round trip's column warning no longer claims the import side is unguarded.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-21 21:33:08 -04:00
co-authored by Claude Opus 5.5
parent fa41e006a7
commit ead4a7e2ad
10 changed files with 69 additions and 74 deletions
+6 -6
View File
@@ -1,12 +1,12 @@
"""Real-Postgres tests for the rule-history write path (milestone 323 step 2).
"""Real-Postgres tests for the rule-history write path.
Every assertion here is about ORDERING or ABSENCE, which is why none of them
can be made with mocks.
What a version is for: it holds what the rule USED TO SAY. The edit destroys
that, and nothing can recompute it — the rescoping of rule 79 had to be
hand-copied into a task log to survive (#3237), which is not a process, it is
a person remembering.
that, and nothing can recompute it — without a version, a rescoped rule's old
wording survives only if a person copies it somewhere, which is not a
process.
Two of these pin a DELIBERATE ABSENCE. `note_versions` carries a 300-second
interval gate and a 50-version cap, both defences against note autosave. Rules
@@ -199,9 +199,9 @@ async def test_history_reads_newest_first(constraint):
]
# ── The read path is ACL-scoped (milestone 323 step 3) ─────────────────
# ── The read path is ACL-scoped ───────────────────────────────────────
#
# Rule 47: every read of user data is scoped by owner. A version carries a
# Every read of user data is scoped by access. A version carries a
# `user_id`, which makes it tempting to scope the history by it — that would
# be wrong in both directions, and these pin which way round it goes.