swung0x48
|
68d09bb585
|
[Refactor] (Espryt): index every decline site with the flip it takes at the verification round, and invalidate rather than stamp the forced framebuffer bind
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
5e7fb18c4a
|
[Fix] (Espryt): make a half-described framebuffer applier and a mis-keyed program record say the seam line, and refuse a short global-constant block instead of falling back to the frontend block
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
74d2daea1b
|
[Fix] (Espryt): unbind the sampler on every touched unit the pushed window does not describe instead of leaving an earlier draw's object on it
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
7afa2f18d3
|
[Fix] (Espryt): sweep every image unit the driver holds rather than only the pushed window, and say the seam line when a record names another texture at the validate point
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
64332060fd
|
[Refactor] (Espryt): read the applier's framebuffer records through one accessor, carry D-K2's fourth row into the temporary latches and tick the declining epoch arm as a miss
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
96dca5a8ba
|
[Refactor] (Espryt): name every emulation that cannot survive a split and take the format decisions from the descriptor
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
e24e30bbec
|
[Refactor] (Espryt): bind samplers and the program's resources from the applier's resolved sets and keep the raw-depth-fetch substitution on the server
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
929d162594
|
[Refactor] (Espryt): bind shader images from the pushed set and leave the format recast and the split view where they are
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
0b12f89f3b
|
[Refactor] (Espryt): drive the per-draw texture sync from the pushed sampler-view set and give a read-only attachment its texture parameters
|
2026-09-08 18:44:25 -04:00 |
|
swung0x48
|
31e6a7d6d8
|
[Refactor] (Espryt): resolve the current framebuffers from the pushed records and keep the shadowed default bind and the missing fast path exactly as they are
|
2026-09-08 18:44:25 -04:00 |
|
rereview
|
29bd4d2c94
|
[Fix, Test] (MG_Impl, Pipe): gate the four P4a families on D-K2's dependency bits as well - Espryt refuses bit 10 without bit 11 or bit 7, but the client had already emitted and the acceptance-cleared level flags left its legacy arm nothing to upload
|
2026-09-08 18:35:01 -04:00 |
|
rereview
|
588b2277c5
|
[Fix] (Espryt): stop calling a texture that was never glTexParameter-ed a malformed record - ParamsSerial 0 means no set_texture_params was ever applied, so there is no built-in sampler to push
|
2026-09-08 18:14:22 -04:00 |
|
rereview
|
1e8cdc5931
|
[Fix] (Espryt): take the sampler CSO record from the handle the caller carries - a content-addressed record can never be named by the twins own identity handle, so every bound sampler objects parameters were refused on the integrated tree
|
2026-09-08 18:14:22 -04:00 |
|
rereview
|
a632e26e47
|
[Fix] (Espryt): close the nine re-review minors - the framebuffer refusal now claims only what it can, the adoption refusals have a reachable caller, the carried region offsets and the sub-data resource byte are cross-checked, the remint-pull marker fires only when a level is owed, and a record-empty point the frontend still holds is refused
|
2026-09-08 18:14:22 -04:00 |
|
rereview
|
ee31944bce
|
[Fix, Test] (Pipe): spell the skip twin's line continuation as a real newline - the previous commit left a literal backslash-n and the pull build of the suite did not compile
|
2026-09-08 17:47:01 -04:00 |
|
rereview
|
245daca06a
|
[Test] (Pipe): give the no-consumer texture gate case its pull-build skip twin so the pull and push test-name sets stay equal
|
2026-09-08 17:46:05 -04:00 |
|
rereview
|
29d51ab98b
|
[Fix] (MG_Pipe, MG_Impl): gate the four P4a families on a backend having registered MGPipeResourceOps - Magma emitted, the applier accepted, and the acceptance-cleared dirty flags left its legacy path nothing to upload
|
2026-09-08 17:37:37 -04:00 |
|
swung0x48
|
17396216e0
|
[Fix] (Espryt): drop three #undefs for macros that were never defined and correct the attachment-version note that still called the record-driven walk another package's work
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
a666201708
|
[Test] (Espryt): assert an attachment-only texture's parameters reach the driver with no sampler view, prove every P4a kind's slot returns at a moved generation, and stop one refusal message claiming what it cannot tell
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
71a174a531
|
[Fix] (Espryt): consume the carried region offset, refuse a record whose regions disagree about the level pitch, stop reading the frontend border form on the handle arm, and drop a nested guard that repeats its parent
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
83a209bbd4
|
[Refactor] (Espryt): resolve framebuffer attachments and the four cross-object masks from the record's surfaces, adopting each twin by the handle the record carries, and drop the registry release helper nothing calls
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
832620ddeb
|
[Fix] (Espryt): allocate texture storage from the pushed descriptor, honour a metadata-only respecify's sticky mask, and arm the server's own re-dirty in the applier's pending set instead of a model the handle arm never reads
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
25e1a8483b
|
[Fix] (Espryt): decode the sub-data target's upload half through the contract's accessor, read the depth-stencil aspect and surface-kind constants c0c minted, and refuse bit 10 without bit 11
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
2bd8f3c82d
|
[Fix] (Espryt): resolve the framebuffer record by the handle it names and refuse before binding, so a DSA blit or clear configures the framebuffer it is about to write instead of one that never got its attachments
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
e021b4f62b
|
[Test] (Espryt): drive the sampler-view table through the handle arm and prove every P4a death notice is idempotent
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
a3bd7f0d7d
|
[Refactor] (Espryt): take the sampler parameters and the program artefacts from the applier instead of the frontend objects
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
5046b3fc89
|
[Refactor] (Espryt): sync the driver framebuffer from the pushed record and answer the read buffer from the resolved read surface
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
5e5dc36e57
|
[Refactor] (Espryt): allocate renderbuffer storage from the pushed descriptor and keep the deferred out-of-memory report where it is
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
2bd19d5ee2
|
[Refactor] (Espryt): drive texture storage, parameters and uploads from the pushed descriptors and take the upload strides from the record
|
2026-09-08 16:57:36 -04:00 |
|
swung0x48
|
33f5e878e7
|
[Refactor] (Espryt): key the texture, renderbuffer, framebuffer, sampler and program twins on the client-minted handle instead of the frontend object
|
2026-09-08 16:57:36 -04:00 |
|
rereview
|
568d587ae7
|
[Fix, Test] (Pipe): reconcile the framebuffer and texture emit suites after the client replay - the union of wire's and the client's cases in one file, spelled against the contract's Named enumerator
|
2026-09-08 16:54:50 -04:00 |
|
swung0x48
|
602326f379
|
[Docs] (Pipe): restate what the records-reach-the-applier predicate is for now that the constant is set - the A/B arm it keeps compilable, and the two places a discarded call may not be treated as an accepted one
|
2026-09-08 16:52:11 -04:00 |
|
swung0x48
|
0338812cf3
|
[Test] (Pipe): pin the region tail against what the applier stored, the dirty flag surviving a refusal, the metadata respecify an immutable texture needs, the per-object Named record and the six minors
|
2026-09-08 16:52:11 -04:00 |
|
swung0x48
|
09e0a83cee
|
[Fix] (GLImpl, Pipe): republish a texture parameters when a write lands on its built-in sampler and give every DSA entry point that hands a framebuffer over by name a record for it
|
2026-09-08 16:52:11 -04:00 |
|
swung0x48
|
771e8e06a1
|
[Fix] (Pipe, State): take the texture and framebuffer families through the contract own birth hooks, wire the texture subsystem bit, hand the applier the region tail it was promised and clear a level dirty flag only where the record was accepted
|
2026-09-08 16:52:11 -04:00 |
|
swung0x48
|
2d2090cf1c
|
[Feat, Test] (Pipe): wire the framebuffer subsystem bit and pin the resolved read surface, the sticky bind mask, the level-shadow strides and the union-box/region-list invariant
|
2026-09-08 16:52:11 -04:00 |
|
swung0x48
|
a11a5eb2af
|
[Feat] (Pipe): push the bound framebuffers with a resolved read surface, inline attachment formats and a content hash that covers the draw-buffer array
|
2026-09-08 16:52:10 -04:00 |
|
swung0x48
|
612dbac44f
|
[Feat] (Pipe, State): mint a {slot, gen} handle for every texture and renderbuffer and publish its create, respecify, parameters and accumulated sub-data as pipe calls
|
2026-09-08 16:52:10 -04:00 |
|
swung0x48
|
92dffb81b4
|
[Test] (Pipe): drive the sampler cache's two unaccountable-release counters - a handle it never handed out and a second release of a reference only one holder owed
|
2026-09-08 15:57:24 -04:00 |
|
swung0x48
|
79b581984b
|
[Fix, Test] (Pipe): read a forked refusal drive's log from the offset it had instead of unlinking the file - once a case initialises the library the log is already open, so the child was writing into a deleted inode and the parent read nothing
|
2026-09-08 15:41:13 -04:00 |
|
swung0x48
|
d6e52f75c3
|
[Fix] (Pipe): count the sampler cache's unaccountable releases and its referenced evictions rather than asserting them, and state what a shared reference count, an over-capacity cache and the per-unit reconciliation really cost
|
2026-09-08 15:33:42 -04:00 |
|
swung0x48
|
ac09e5b37a
|
[Fix] (Pipe): key the composite resolver's memo on the context as well as the pipeline's GL name - the resolver is a process singleton while GL names are per context, so a make-current released the other context's live composite
|
2026-09-08 15:33:42 -04:00 |
|
swung0x48
|
820d1a60b9
|
[Fix] (Pipe): stop a make-current disarming the composite resolver's release path - the memo's freshness and the slot's release obligation were one flag, so after the first Reset no signature move ever spoke a delete
|
2026-09-08 15:24:22 -04:00 |
|
swung0x48
|
f0f8cab682
|
[Fix] (Pipe): give the program family its birth-hook entry point and publication latch, invalidate the global-constants key whenever a create_shader_state is re-issued, and count a truncated module tail instead of asserting it
|
2026-09-08 15:24:22 -04:00 |
|
swung0x48
|
b2edca2728
|
[Fix] (Pipe): give the sampler family the birth-hook entry points the contract declares, take the publication latch where its creates go out, and reference-count cache entries so an LRU eviction can never take a handle a standing record still names
|
2026-09-08 15:24:22 -04:00 |
|
swung0x48
|
ccde29064a
|
[Test] (Pipe): wire the sampler and program subsystems and pin the padding-proof CSO identity, the program-resolved unit sets, the linked-snapshot stage mask and the composite band's single release
|
2026-09-08 15:24:22 -04:00 |
|
swung0x48
|
bc2aad2176
|
[Feat] (Pipe): resolve a program pipeline into one shader CSO out of the reserved composite band and release it exactly once
|
2026-09-08 15:20:36 -04:00 |
|
swung0x48
|
5a3e9f0857
|
[Feat] (Pipe): publish a program's per-stage SPIR-V and reflection archive as a shader CSO and its default uniform block as global constants
|
2026-09-08 15:20:36 -04:00 |
|
swung0x48
|
1534cf3784
|
[Feat] (Pipe): content-address sampler states, mint one sampler view per texture and push the three unit sets behind their own content hashes
|
2026-09-08 15:20:36 -04:00 |
|
swung0x48
|
712c946744
|
[Fix] (Pipe): retire wire's local Named constant now that the contract mints MGPipeFramebufferTarget::Named
|
2026-09-08 15:08:22 -04:00 |
|