con, not yellow mod-- gritzko (order), agent-drafted
STALE (2026-07-29): durable con rows + red con landed; the marker-based liveness rule (markers gone → mod) is overturned by DIS-080 — markers are retired entirely, resolved==posted. See STATUS-017.
A merge that leaves conflict markers in a file records NOTHING: the wtlog gets only the bare get/patch row, and status shows the conflicted file as a plain yellow mod. Order: file conflicts must be recorded into the wtlog (.be) at merge time, and such files must be statused con and rendered red, not yellow. The existing cnf bucket (DIS-057) is a fragile mtime-stamp band tied only to patch rows — a get merge never gets it.
jab get ?#1a751c… merged JS-116 in, left ONE <<<</||||/>>>> block in shared/ingest.js; wtlog tail shows just the get row, jab status showed mod shared/ingest.js — indistinguishable from an ordinary edit.require()d the conflicted .js and leaked idxmaint: SyntaxError: Unexpected token '<<' into status output — a red con would have explained the state at a glance.shared/conflict.js hasConflictMarker (the POST-017 pre-flight scan, both WEAVEEmitMerged marker shapes); consumers verbs/get/get.js, verbs/patch/patch.js, verbs/post/post.js; shared/classify.js:150-170,241-260 the DIS-057 pat/mrg/cnf mtime-stamp band (ceil-2ms/-1ms/ceil on an in-scope patch row only).<ron60> <verb> <uri> (shared/wtlog.js); per-file rows already exist (put <file>), so a conflict row has a natural shape.status classifies such files con: wtlog row says "merge left conflicts here", hasConflictMarker on the wt bytes confirms still-unresolved; markers gone → the file degrades to ordinary mod (resolved, uncommitted).con red (mis/del-class severity), not the yellow mod class; summary line counts it (… 4 mod, 1 con, …).post pre-flight keeps refusing marker'd adds (POST-017) — unchanged, but its error can now name the recorded con rows.con, the existing DIS-057 bucket is cnf — reconcile (rename or alias), do NOT ship both; flag the choice in the report for gritzko's confirmation.<<<< is already excluded by the triple scan; --force posting stays the escape hatch.con <path> mirroring put <path>; one row per conflicted file per merge, duplicates across merges tolerated (newest wins, scan decides liveness).con rows scope status's patch-band (classify.js) or ride a separate check in the classifier walk.con (red), not mod; resolving the markers (edit) degrades to modcon <path> wtlog rows where weave reports conflictscon bucket wired from wtlog row + marker scan; red rendering; summary count