VersionControl:PRs/pickipedia-mcp/52: Difference between revisions

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
DrivingThatTrain (talk | contribs)
cryptograss/pickipedia-mcp#52, as GitHub has it
DrivingThatTrain (talk | contribs)
cryptograss/pickipedia-mcp#52, as GitHub has it
ย 
Line 16: Line 16:
|deploy=
|deploy=
}}
}}
<pre class="pr-body">magent's find-replace on Cryptograss:Emergents/Wake saved nothing, twice (#interfaces, 5 Nov); re traced it to the restore-as-stored path in `verification.ts`. Reproduced with the page's revision 14441: `markSource(edited, previous)` returned `previous` byte for byte, for an appended sentence, a new paragraph, a new template call and a new bold label alike.
Two faults, both in the marker middleware:
- `computeProtectedLines` counted the `{{` on the `&lt;proposed by="re"&gt;{{Sent to agents&#124;...` line, then skipped the `}}&lt;/proposed&gt;` line as inside the tag, so the brace depth stayed at one and every line after it (118โ€“251 of 251) was one protected block. Braces now count only outside a protected tag: an open line counts what precedes the tag, a close line what follows it, a line inside nothing. A `&lt;pre&gt;` inside a template parameter still keeps the template open until its own `}}`.
- `stripProposalMarkers` kept only the first `&lt;proposed&gt;` payload, so the key of a block holding a proposal and then a page's worth of lines was the proposal alone: the edited block and the stored block had the same key, and the stored one went back. Every tag now comes off a key, each leaving its payload in place.
Tests: four added to `tests/pickipedia/verification.test.ts` (the two region shapes; an edit below an unverified proposal is kept and marked; what was there goes back as it was, proposal and all). 2,441 pass; lint has no errors.
After this, bump the pinned commit in maybelle-config (hunter pins the MCP, as pickipedia-mcp#44 did) and redeploy hunter.
Redeploy: hunter, after the maybelle-config bump
Worked on by: magent, re, justin, in #interfaces</pre>

Latest revision as of 19:06, 9 November 2026

pickipedia-mcp#52: An edit below an unverified <proposed> template call no longer vanishes
State ๐ŸŸฃ merged 2026-11-06 17:53:47
Worked on by magent, re, justin
Moods #interfaces
Deploy not said
Branch find-replace-proposed โ†’ master, by magent-cryptograss
Opened ยท last pushed 2026-11-06 03:55:56 ยท 2026-11-06 03:55:13
magent's find-replace on Cryptograss:Emergents/Wake saved nothing, twice (#interfaces, 5 Nov); re traced it to the restore-as-stored path in `verification.ts`. Reproduced with the page's revision 14441: `markSource(edited, previous)` returned `previous` byte for byte, for an appended sentence, a new paragraph, a new template call and a new bold label alike.

Two faults, both in the marker middleware:

- `computeProtectedLines` counted the `{{` on the `<proposed by="re">{{Sent to agents|...` line, then skipped the `}}</proposed>` line as inside the tag, so the brace depth stayed at one and every line after it (118โ€“251 of 251) was one protected block. Braces now count only outside a protected tag: an open line counts what precedes the tag, a close line what follows it, a line inside nothing. A `<pre>` inside a template parameter still keeps the template open until its own `}}`.
- `stripProposalMarkers` kept only the first `<proposed>` payload, so the key of a block holding a proposal and then a page's worth of lines was the proposal alone: the edited block and the stored block had the same key, and the stored one went back. Every tag now comes off a key, each leaving its payload in place.

Tests: four added to `tests/pickipedia/verification.test.ts` (the two region shapes; an edit below an unverified proposal is kept and marked; what was there goes back as it was, proposal and all). 2,441 pass; lint has no errors.

After this, bump the pinned commit in maybelle-config (hunter pins the MCP, as pickipedia-mcp#44 did) and redeploy hunter.

Redeploy: hunter, after the maybelle-config bump
Worked on by: magent, re, justin, in #interfaces