28 KiB
Changelog
Unreleased
STEP20C experimental evidence
-
Record the separate CORE-C V2 follow-up V4: five consumed runs/32 output captures, migration/refocus and root/nested OOM SAMPLED_ONLY / PARTIALLY_FEASIBLE. FS-P and fullscreen comparison remain NOT_EXERCISED, FS-C NOT_RUN; G3 INCONCLUSIVE after client exit2 before SHM, with no diagnostic acquisition. Preserve scientific cleanup false for G3, raw process/terminal IPC codes and the historical V2 results.
-
Record c553 source publication before runs, distinct G3 build/stage identity, scoped offline reviews and the separate OFFLINE_ONLY post-campaign fixture repairs. No consumed run is retried or requalified. Result PARTIALLY_ADVANCED, recommendation PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE, production OOM policy UNDECIDED; STEP20C NEXT, production multi-output NOT_YET_SUPPORTED, PRODUCTION_AUTHORIZED FALSE. Native buffer identity, atomic generation, complete damage, GPU completion, legal approval and maintenance owners remain open; no production, UX or package change.
-
Record the new CORE-C V2 integration decision: reconstructible source-only CORE/OOM/G2 kit, three private binary identities, 12 consumed runs and 102 output captures. C7/C8/O1/G2 stay INCONCLUSIVE, O2/R1 NOT_RUN; bounded O1 survival and strict first-A G2 refusal do not close production gates. Disposition PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE, recommendation C_FURTHER_NATIVE_REVIEW, production availability UNDECIDED. Historical lost bytes remain missing; STEP20C NEXT and production multi-output NOT_YET_SUPPORTED, with no production authorization.
-
Record the separate CORE-C preallocation/native/GPU precision source gate as BLOCKED after user-confirmed deletion of required historical LABs: three seal receipts absent, 0/979 entries and 0/916 files reverified. Keep historical identities/results REPORTED without transfer to CORE-C.
-
Preserve five failed current offline commands and their raw exit 1 receipts, including missing-input and EDQUOT limits. Record zero new native C/sanitizer tests, builds, stages, runs and captures; all 11 intended scenarios NOT_RUN. Document prospective GPU precision/read-success/error-attribution limits without adopting a hook contract, tolerance, OOM policy or candidate redesign. Recommendation UNDECIDED; final review NOT_PROVEN/publication BLOCKED at this edition. STEP20C NEXT, production multi-output NOT_YET_SUPPORTED and PRODUCTION_AUTHORIZED FALSE.
-
Record a separate CORE recovery campaign: nine new runs/102 output PNG, comparable12-state standard RGB controls, two-chain horizontal return, Y600 vertical clipping/input, same-chain hidden return and saved phased timeout/ACK/normal-close/SHM3/3. All runner/client/compositor exits0, nine terminal IPC1 and raw architecture INCONCLUSIVE remain distinct.
-
Keep fullscreen crossing NOT_EXERCISED and comparison INCONCLUSIVE for non-equivalent trees. Preserve the raw vertical X/0 field while documenting the executed Y/600 predicate. No historical failure or UX policy is rewritten.
-
Record private OOM A/B/C studies:40 expected C commands/six rejected mutants, bounded independent review ACCEPTED, A abort/P1 and production policy UNDECIDED. Modifier-aware DCC plane repair passes its isolated check, while effective halfpixel/read-success/GL-error gates remain INCONCLUSIVE and G2 NOT_RUN. No new compositor/GPU build, staging, dependency or production edit.
-
Add V3 and the exact-CORE integration draft, retaining native lifetime, coherence, complete damage/effects, whole-field GPU, maintenance and legal gates. Recommendation PRIVATE_CORE_NEEDS_TARGETED_EVIDENCE, ticket PARTIALLY_ADVANCED; final audit/publication pending at this edition. Document prior immutable-archive whitespace exit2 and reversible EOF-only normalization of new public fixture copies. STEP20C NEXT, production multi-output NOT_YET_SUPPORTED, PRODUCTION_AUTHORIZED FALSE.
-
Record the new minimal-core campaign separately from historical source-only evidence: exact replay, six actual C UB reproductions, private camera guard, extracted C unit normal/UBSan/ASan, OOM abort/P1, static build/local ABI and five-file private Stage1. No compositor sanitizer or full package build.
-
Preserve12 unique runs/88 output captures (90 PNG including two markers), no retries, scale 1.25/R90 and resize/migration sampled results, incomplete standard/vertical/fullscreen/hidden-return gates and E6 frozen-validator FAIL despite actual native five-second timeout before ACK/teardown. All E terminal IPC1/compositor0 and client-normal-closure limits remain separate.
-
Record core whole-H1 optimized return FAIL 33,789/max RGB 6/5/1, H2 exact, shadow NOT EXERCISED and distinct GPU diagnostic's sole rejected epoch. Modifier-aware audit establishes an all-plane stride fixture predicate defect without qualifying GPU read_success or whole-field causality. Native lifetime, atomic generation, complete damage and package/notices/legal/maintenance gates remain open. Recommendation PRIVATE_CORE_NEEDS_TARGETED_EVIDENCE; scientific result PARTIALLY_ADVANCED. Evidence delta review ACCEPTED; final dossier review pending and publication PREPARED at this edition. Production STEP20C NEXT, multi-output NOT YET SUPPORTED; no production/UX/package or historical rewrite.
-
Record the distinct saved/input/GPU batch: six runs,59 captures,240 reserved actions,42 common/six GPU offline tests. Native five-second saved timeout and whole-H2 sampled restoration pass on C3/A/G; C3 natural instance retirement is observed without transferring native identity to A/G or GPU completion. Input A/G completes mutation and targeted standard return. GPU native ROIs support local outside-fresh-domain FBO history, first fresh divergence down-2; whole-H1 restoration remains FAIL and whole-field causality INCONCLUSIVE.
-
Preserve six raw INCONCLUSIVE terminal IPC1 outcomes, saved/input helper error32 scientific cleanup limits, GPU scientific cleanup PASS and separate mechanical cleanup. Record private source-only core review ACCEPTED with build/runtime/C UBSan/OOM NOT RUN. Correct current draft's bind-before-failed provenance: ordering already exists in pristine SceneFX. Historical evidence stays immutable. Final dossier review ACCEPTED / audit PASS; publication PREPARED at this edition, with actual refs in the private post-push receipt; production STEP20C NEXT/multi-output NOT YET SUPPORTED unchanged.
-
Record the targeted private campaign: 14 unique runs, 125 captures and 520 reserved events, with exact A/G/pristine/C3 identities and separate measurement, raw runtime, scientific cleanup and architecture statuses. Scale grabs/input and G dynamic/hidden/R90 extend sampled evidence; terminal IPC exit 1 remains INCONCLUSIVE in every run.
-
Preserve real held configure 39 with saved A/G measurement stops and client error 32 during compositor teardown; timeout/native saved identity/normal close remain unqualified. Classic blur is exercised, whole-H1 A/B/A RGB restoration still fails in pristine/A/G, and input camera changes during the click window remain an incomplete fixture measurement. New native replay pairs 789 of 821 final commits without claiming atomic generation or GPU lifetime.
-
Update the integration draft to the twenty requested evidence questions and retain private stage/source-verification success, full package build NOT RUN, ABI/notice/legal/maintenance and instrumentation limits. C3 is consumed with INCONCLUSIVE runtime: native creation/draw/teardown are partially observed, but a frozen unique-address predicate rejects actual node-address reuse. Its bounded wait stop is not a natural transaction timeout; held/live PNG, normal close and GPU completion remain unqualified. Final independent review is ACCEPTED / audit PASS for experimental evidence fidelity: 43 offline tests,22 additional mutations rejected,0 BLOCKING,1 NON_BLOCKING editorial finding and3 FUTURE_SCOPE. Documentary publication is authorized and prepared, not executed at this edition; final refs belong to the private closeout and final handoff. Production source, current package, UX and historical evidence are unchanged; STEP20C NEXT, production multi-output NOT YET SUPPORTED.
-
Local offline nested geometry/fixture review protocol: separate SHM, assigned/rendered, scene, XDG and PNG spaces; exhaustive assertion/source/test register and independent review required. No graphical launch authorized; final offline verdict INCONCLUSIVE.
-
Preserved static nested-grab fixture failure: sole unchanged-binary run confirms identity/output/camera/tiled clip and exact whole-H2 pre-popup references, then fails before any click/grab on a native-SHM versus painted-height assertion. INCONCLUSIVE / UNDECIDED; additional IPC-y/titlebar assumption invalid, offline assertion audit insufficient. Raw runner exit1 and compositor exit0 retained; popup/standard gates NOT TESTED, no retry/build/production change. Historical runner and sealed artifacts preserved.
-
Preserved independent static RGB/input/standard retest: corrected shared predicate and real replay pass; exact whole-H2 RGB, H1 retained/H2 forbidden pixels, real target/reference clicks and targeted splith clip removal/input pass. FEASIBLE for this matrix. Terminal exit IPC makes runner exit 1 after measured gates and compositor exit 0; raw failure retained and offline diagnosis passes. No new compositor/library build or production change.
-
Preserved static focus/input/standard fixture failure: exact static binary and loaded pair verified; one run stopped before captures/input on an incorrect border-width fixture assertion. INCONCLUSIVE / UNDECIDED; camera and clip traces retained, RGB/clicks/splith NOT TESTED, no retry or production change.
-
Approved private static candidate decisions (2026-10-13): separate notices, project maintenance and exact-pair qualification. Current package unchanged; private real
/usrstatic build/model/staging/library identity/headless startup pass. Whole-H2 reference fixture failed after a focus change; input and splith return NOT TESTED. PARTIALLY_FEASIBLE / UNDECIDED, preserved historical evidence; the original manifests and fixture bytes remain unchanged. -
Preserved static distribution contract: one hash-qualified static executable staged through private Meson metadata at /usr/bin/swayfx-mosaic, exact-one-file shape PASS without recompilation. Existing scene interposition is characterized, version/security/notice obligations and an unsubmitted upstream API dossier are explicit. PARTIALLY_FEASIBLE, contract decision required; no recipe, packaging contract, production or system change. Historical verdict retained; later user decisions authorize a separate private gate only.
-
Preserved SceneFX/wlroots ABI/package audit: current stock build and exact-one-file staging PASS; experimental shared clip functions absent from stock despite common SONAME. Private static build/loader passes, but wlroots interposition, notices, security and version-maintenance gates remain. PARTIALLY_FEASIBLE; architectural decision required. No integration or system change; the historical ABI evidence is published separately from any later distribution-contract investigation.
-
Preserved optimized-edge gate: four completed controls reproduce the same boundary differences in pristine SceneFX, private splith and Mosaic without OPT traces. Same-binary Mosaic trace-off/on and pristine/private standard match full RGB at six states; central freshness, H2 stability and sampled clipping hold. PARTIALLY_FEASIBLE, architecture UNDECIDED: reduced-domain FBO history has source/model support but no native causal observation. Separate ABI/package audit justified; optional bounded GPU study remains unexecuted. No production change; historical graphical campaign closed.
-
Preserved optimized blur cache probe: private splith/Mosaic used a real background source and output-scoped GPU cache, naturally reconstructed A/B/A and restored exact central filtered pixels with stable whole H2 RGB. Boundary equivalence still differs by up to six RGB levels in both private modes. Pristine C0 failed before captures; its duplicate initial image was charged after observation, with no retry or numerical budget overrun. PARTIALLY_FEASIBLE, architecture UNDECIDED; neutrality and whole-cache correctness unqualified. No production change; the historical campaign is closed.
-
Preserved saved-target natural timeout gate: one Mosaic run used a static SHM H2 reference with four identical whole-RGB captures. The measured target saved node crossed x=0, rendered 182,214 retained-color pixels on H1, contributed no H2 pixels and was removed after a real 2500 ms timeout while the client held serial 50 alive. Two sampled pointer points found the H2 reference and visible H1 saved node. PARTIALLY_FEASIBLE because complete damage, broader input and GPU/texture lifetime remain unqualified; no production change.
-
Local target-crossing saved-buffer probe: one measured signed camera delta placed the real target source and saved node across x=0. The target node rendered within H1's clip and retained its SHM pixels; H2 showed no target color but had a repeated 253-pixel reference difference. Mosaic E2 timeout stopped through stale fixture pointer correlation. PARTIALLY_FEASIBLE, architecture UNDECIDED; no production change, commit or push for this campaign.
-
Freeze audit of that target crossing: the repeated H2 difference is one filled 11×23 rectangle with Kitty cursor/background colors in pristine and Mosaic runs, strongly compatible with cursor blinking but not causally proven. The E2 visible bound at x=-30 matches the applied tiled clip narrowed by gaps. Timeout/input remain untested.
-
Preserved saved-transaction-buffer probe: real held XDG configures produced nonempty saved scene buffers; private saved nodes entered rendering and sampled ACK/timeout paths removed their trees. Mosaic's target was outside H1 after the applied camera reached 1760, so partial-boundary clipping is NOT EXERCISED and the verdict is INCONCLUSIVE. Three distinct executed runner copies and the private-standard fixture timeout are retained; no production change.
-
Local static-R90 partial-popup probe: a legal nested B popup crossed the Mosaic viewport by 72 logical pixels; 46,455 B pixels and a real button survived on H1, while H2 was pixel-identical to its reference and delivered no B button. Both standard controls showed 35,360 B pixels and a B button on H2. A crossed visually, but its forbidden-side input was not independently clicked. PARTIALLY_FEASIBLE for the tested matrix; no production change or phase-B commit/push.
-
Preserved rotated-output probe: actual 90° output keeps an 800×600 logical viewport while the physical mode becomes 750×1000 and
grimremains logical-oriented 1000×750. Private standard shows 15,860 B-popup pixels on H2; private Mosaic shows zero, but its B popup ends before the boundary, so partial clipping is unchallenged. Fully hidden owner, pointer, measured physical damage and R0/standard returns pass sampled checks. Pristine R90 capture stopped on a fixture IPC-direction assertion; no replay. PARTIALLY_FEASIBLE, architectural conclusion UNDECIDED; no production change. -
Preserved dynamic-output ownership probe: real 800→960→800 logical resize and H1→H2→H1 workspace migration preserve IDs and sampled applied clips. Exact vacated-output backgrounds and measured physical damage are compatible; two standard-control final calibrations fail through reference occlusion. PARTIALLY_FEASIBLE; maximum clamp, migrated clipped-popup input, opaque spill and effects remain open. Six reconfigurations/six migrations, zero extra camera pairs; no production change. The original temporary evidence manifest was verified before an offline analyzer rerun replaced it; the report records the provenance limit.
-
Preserved fractional-scale probe: actual 1.25 uniform/mixed and 1.5 mixed outputs, calibrated logical input, sampled root/nested popup and effects clipping, two exact camera returns and physical settled-damage coverage. PARTIALLY_FEASIBLE; opaque tiled controls, interior shadow, restored Mosaic hit and broader gates remain unqualified. No production/package change.
-
Added a source-only private effects/damage probe with a real translucent SHM buffer and striped background. Both standard controls show 27,594 shadow-overflow pixels on the neighboring output; private Mosaic excludes that sampled spill, renders a visibly filtered blur within its viewport and restores exact settled pixels after three camera pairs. Sampled private damage covers changed pixels, while interior shadow, optimized cache, popup effects and saved buffers remain unqualified. The result is PARTIALLY_FEASIBLE; no production or package files changed.
-
Recorded an effects-probe campaign deviation: replay/trace variants ran 15 camera pairs against the requested maximum of three. All raw runs are retained; the final runner now reserves a finite campaign budget before launch and rejects excess repetitions.
-
Preserved and independently replayed a bounded event-loop pending-input probe. The client flush and server application were observed after decoupled request submission, but no input mutation fell between a matching native headless commit and present in five attempts per private mode. The temporal case remains INCONCLUSIVE / NOT EXERCISED; this research line is closed for the tested backend and geometry. No production or package files changed.
-
Preserved and independently replayed a commit/present/input ordering probe. A passive private top-level listener and native headless traces found 20 applied input-region mutations but no natural mutation between an accepted output commit and its matching present; sampled hit and client delivery followed effective input. The temporal verdict is INCONCLUSIVE and the generation-contract decision remains UNDECIDED. A complete outside-Git raw evidence manifest now covers all 94 run/result files. No production or package files changed.
-
Preserved a reproducible mutation-coverage fixture and source audit. A fresh-clone replay rebuilt private SceneFX/Mosaic and verified pinned wlroots sources in its own lab. Bounded trace-only runs separated camera/clip, popup lifecycle, same-size client content and input-region hits; the latter changed hit testing at an unchanged partial epoch. A real private output-destroy path released one held reference, while backend rejected-commit cleanup remains untested. The architectural generation decision is UNDECIDED; STEP20C stays NEXT.
-
Preserved a private applied-scene/input probe. A separate corrective patch scopes retained output buffers to their owner, samples three buffers through present, and logs partial applied-scene epochs at build and real pointer hits with client delivery kept separate. The tested matrix is PARTIALLY_FEASIBLE; STEP20C remains NEXT and multi-output Mosaic unsupported.
-
Preserved a private output-buffer identity fixture and protocol. In fixed headless geometry, 32 GBM buffers were read through SceneFX FX and linked to native commits and presents; three second reads matched. Four references were released early by a cross-output scope defect in the private instrumentation, not by demonstrated same-output buffer replacement. Readback changed timing, so transaction/input coherence and production readiness remain unproven. STEP20C stays NEXT and multi-output Mosaic unsupported.
-
Added a source-only private presentation-identity probe at fixed negative-origin headless geometry. Native wlroots output present events paired with 470 accepted commits by output and
commit_seq; applied scene/clip and sampled input agreed at the target states, but exact commit-buffer pixels remain unproven. STEP20C stays NEXT and production multi-output Mosaic unsupported. -
Added a source-only temporal damage fixture at the fixed negative-origin geometry. Ten XDG open/close cycles in each of three modes and sampled camera transitions restored popup regions without a detected ghost pixel; private damage/commit traces remain insufficient for a presented-frame guarantee. STEP20C remains NEXT and multi-output Mosaic unsupported.
-
Added a source-only negative-origin nested-grab probe. Two outputs at
x=-800/0verified signed pointer conversion, real standard popup crossing, sampled private Mosaic clipping, hidden-owner return, standard-layout return and a positive horizontal regression. Production STEP20C support remains open. -
Added a source-only stacked-output nested valid-grab probe. Both standard controls showed real popup overflow and pointer delivery below
y=600; the private guarded Mosaic build clipped A/B at sampled lower points, preserved hidden-owner and standard-layout return, and reproduced the horizontal control. STEP20C production support remains open. -
Added a source-only nested XDG grab fixture and a comparative headless probe. Two real button serials produced an interactive toplevel → popup A → popup B chain; sampled guarded Mosaic clipping, child-first dismissal, hidden-owner camera return and standard-layout return were feasible. STEP20C production support remains open.
-
Preserved the valid-serial XDG grab / hidden-owner probe's original C and Python sources, private patches and protocol XML with hashes and a disposable headless replay procedure. Its result remains PARTIALLY_FEASIBLE; no production source, package or UX policy changed.
Patch export tooling
- Fixed cumulative Mosaic patch export to diff against the verified pristine SwayFX 0.6 import, preserve the real Git index, validate clean-base application and source equivalence, and replace the patch atomically only after successful checks.
- Added offline regression coverage for complete and repeatable export, working and staged edits, source additions/deletions and mode changes, index preservation, conflict refusal, and artifact preservation on failure or interruption.
Documentation
- Established a public landing page, original source-controlled SVG banner, canonical documentation index, UX contract, packaging contract, known limitations, and documentation-first roadmap.
- Clarified the current single-row implementation, historical STEP evidence, package coexistence, and upstream forward-port policy.
Existing implementation
- Native Mosaic layout with workspace-local state and real tiled Row 0.
- Insertion/reflow/focus model tests and
layout mosaiccommand. - Workspace-local
layout toggle mosaic, logical scrolling, and first viewport scene translation. - Mosaic
get_treeIPC state and headless compositor validation. - Isolated Arch packaging path for
/usr/bin/swayfx-mosaic.
Safety and limitations
- Ordinary SwayFX remains separately installed and independently updatable; no automatic session replacement.
- Multi-output clipping, multiple runtime rows, camera animation, Session V2 restore, final cell sizing, and daily-driver qualification remain open. See known limitations.
Preserved offline nested geometry gate — EXPERIMENTAL / INCONCLUSIVE
- Replayed true static failure SHM/configure/destination/titlebar/paint data and nine preserved private/control popup campaigns, without any graphical run.
- Prepared typed shared geometry, actual-configure/lifecycle/input validators, exhaustive145 historical assertions/2288 AST-site register and195 passing offline tests; compiled only three C17 client utilities, never executed.
- Preserved the independent deep review and bounded repair/delta review: input correlation and terminal IPC evidence fixes accepted, readiness receipt semantic-completeness defect remains CORRECTION_REQUIRED. No READY claim.
- Preserved the geometry gate and experimental source fixture with its historical INCONCLUSIVE verdict; STEP20C NEXT, architecture UNDECIDED and production multi-output NOT YET SUPPORTED. No production/package/UX change.
Local receipt semantic integrity gate — offline only
The R02 receipt-integrity gate is local and experimental. The real writer/aggregate share semantic validation through the existing immutable-data replay and R01 input correlation; typed receipt content, scenario-specific omissions, AST/test inventories and final review bindings are checked. Historical geometry evidence remains INCONCLUSIVE; this correction cannot retroactively qualify static popups. The final local gate is READY_FOR_NEW_RUNTIME: 206 offline tests pass, 13478 recorded invalid mutations are rejected, and independent review accepts the final 18-source/15-receipt bindings after one bounded B-01 writer repair. The actual writer returns READY with five PASS markers and no blockers. R02 is RESOLVED for this offline fixture; partial AST coverage and runtime limitations remain explicit. Phase B is uncommitted and unpublished, and readiness only permits requesting a separate future authorization. No compositor/runtime authorization, production/UX/package change or STEP20D work follows. Architecture UNDECIDED; STEP20C NEXT; production multi-output NOT YET SUPPORTED.
Static E2 completion and private integration evidence — 2026-10-13
- Recorded the independently accepted shared applied-standard-transition gate: 104 targeted offline tests PASS, historical replay and 277 classified assertion sites, with the separate older-suite 145 PASS/61 setup errors preserved.
- Recorded the sole unchanged-static-binary E2 run as EXPERIMENTAL / FEASIBLE for two genuine grabs, Mosaic pixels, applied splith return, standard B/A input, explicit B close/A survival and normal owner close/full-H2 restoration. Raw terminal IPC1, startup entries and historical INCONCLUSIVE findings remain.
- Recorded a private initial integration candidate BUILDABLE from one SceneFX build, one Mosaic build/model/ELF check and one exact five-file DESTDIR stage. Its distinct binary is graphically NOT TESTED. Independent P2 comment repair is accepted as COMMENT-ONLY / NOT REBUILT; initial recipe/build evidence stays unchanged, recipe execution NOT RUN and legal compliance NOT APPROVED.
- Added the completion report and current fixture results, preserving the original README as a sealed pre-execution protocol. Final batch audit is PASS / ACCEPTED with no BLOCKING finding. No production source, UX, package, public ABI or cumulative patch change; STEP20C NEXT, multi-output NOT YET SUPPORTED.
2026-10-14 — preserved private STEP20C overnight qualification
- Record the fresh annotated private rebuild, exact local ABI and five-file DESTDIR stage, 18 unique graphics attempts/196 captures, and separately built release-shape horizontal smoke with its own binary identity.
- Preserve positive sampled clip/input observations alongside D2 fixture ambiguity, saved-buffer NOT EXERCISED, failed whole-H1 effects restoration, stale-coordinate F assertion, terminal IPC incidents and unproven lifetime, atomic generation, full damage, legal and package qualification.
- Add the 22-question production integration decision draft and compact source-only provenance. PRIVATE_CANDIDATE_NEEDS_TARGETED_EVIDENCE remains a recommendation; STEP20C NEXT and production multi-output NOT YET SUPPORTED. Final independent review is ACCEPTED / audit PASS for experimental evidence fidelity; documentary publication is prepared, not executed at this edition. No production source, current package, UX or historical evidence contract is changed.