diff --git a/docs/ci/ci-cleanup-log.md b/docs/ci/ci-cleanup-log.md index 398b2d7c..1c4bbcdc 100644 --- a/docs/ci/ci-cleanup-log.md +++ b/docs/ci/ci-cleanup-log.md @@ -33,6 +33,9 @@ them wrong. | 2026-10-06 | unit `DirectVulkanSanity.MutableStorageImageViewsUseVulkanCompatibilityClasses` | Test / unit | P13 W6c: it pinned `VkTextureManager::AreStorageImageViewFormatsCompatible`, which only the frontend arm's storage-image path called; that path and the helper are deleted | the wire storage-image path's format checks (`InvalidImageUnitScenario`, `ImageFormatQualifierScenario`) | | 2026-10-06 | unit `VkClearManagerTest.{CollectGarbageRemovesExpiredTexturesAndTheirPendingClears, StalePendingClearsAreRejectedBeforePeriodicGarbageCollection}` | Test / unit | P13 W6e: they drove Magma's frontend pending-clear queue, keyed on frontend texture objects and only fed by the frontend `ClearNamedFramebuffer*` / render-pass entries, which the verb port replaces in every mode; the queue and the entries are deleted | the record arm's clears (`ClearThenReadPixelsScenario`, `MonolithAttachmentClearScenario`, `LayeredAttachmentShapeScenario`, both backends, every arm) | | 2026-10-06 | unit `FramebufferTest.WidenedDrawBufferIsIdentifiedPerDrawBufferSlotNotPerAttachmentPoint` | Test / unit | P13 W6e: it pinned Espryt's `ComputeAlphaWidenedDrawBufferMask` over a frontend `FramebufferObject`; the record arm computes the same mask from the framebuffer record (`IsAlphaWidenedColorSurface`) and the frontend form had no caller | `ThreeChannelAttachmentScenario` (widened RGB attachments end to end, both backends) | +| 2026-10-06 | unit `DirectGLESSlotTable.{ANegativeLookupIsNotCachedAcrossAnotherHoldersAcquire, GetOrCreateToleratesANullStateObject}` | Test / unit | P13 (`# P13` ratchet gate): they pinned the slot table's frontend-keyed half - `HandleOf`'s lifetime-id memo and the minting `GetOrCreate(StatePtr)`'s null-object parking - which minted handles off frontend lifetime ids from inside MG_Backend; that half is deleted (the table only receives client-minted handles now). The other ten `DirectGLESSlotTable` mechanics cases were RETARGETED at the handle entries (`GetOrCreate(handle)` / `FindByHandle` / `ReleaseTwinByHandle`), not removed | the retargeted `DirectGLESSlotTable` cases, `SlotAllocatorTest`, and the link ratchet's P13 exit gate (no server object references the client allocator) | +| 2026-10-06 | unit `RemoteGuards.{SlotTableHandleOfFromTheApplyThreadIsFatalByName, SlotTableMintingGetOrCreateFromTheApplyThreadIsFatalByName, AnAllocatorProbeInsideAnExemptionScopeFromTheApplyThreadIsFatalEvenAtTheOldDebtSites, BarrieredFrontendRegistryMembersRefuseBothLegacyScopes, LegacyRegistryWrapperCannotExposeFrontendKeysOnApply, AnExemptionScopeHeldOnTheGLThreadDoesNotExemptTheApplyThread}` | Test / unit (split) | P13 (`# P13` ratchet gate): they drove the apply-thread refusals hung on Espryt's frontend-keyed registry entries (`HandleOf`, `GetOrCreate(StatePtr)`, `NoteStateForHandle`, `StateForHandle`, `Find(object)`, `begin()`) and the two no-op marker scopes; the entries, the registry refusal and both scopes are deleted, so there is no apply-thread surface left to refuse | `RemoteGuards.AnAllocatorProbeFromTheApplyThreadOutsideEveryScopeIsFatalByName` / `BarrieredLegacyScopesCannotExemptAllocator` (the allocator's own guard, kept) and the link ratchet's P13 exit gate | +| 2026-10-06 | unit `ServerLoopEglTest.FrontendFramebufferDeathDeletesOnTheContextOwner` | Test / unit (split) | P13 (`# P13` ratchet gate): its pin was the refusal of the apply-thread `GetOrCreate(StatePtr)` mint of a framebuffer twin; that overload is deleted | `CtWireScenario`'s object_death cases (framebuffer death by handle on the server) | ## Kept after investigation diff --git a/scripts/data/skip_census_baseline.json b/scripts/data/skip_census_baseline.json index 8f68e029..94cd22b1 100644 --- a/scripts/data/skip_census_baseline.json +++ b/scripts/data/skip_census_baseline.json @@ -7697,7 +7697,6 @@ "DirectGLESSlotTable.ACompositeHandleDoesNotGrowTheOrdinaryTable", "DirectGLESSlotTable.ADeathNoticeForEveryP4aKindIsIdempotent", "DirectGLESSlotTable.AGenerationBehindTheLiveTwinIsRefusedRatherThanAdopted", - "DirectGLESSlotTable.ANegativeLookupIsNotCachedAcrossAnotherHoldersAcquire", "DirectGLESSlotTable.ARecycledSlotIsANewHandleAndTheStaleOneResolvesToNothing", "DirectGLESSlotTable.ASavedCopyOfARealRegistryDropsTheTwinOnTheSameNotice", "DirectGLESSlotTable.AWholeTableSavesResetsAndRestores", @@ -7706,7 +7705,6 @@ "DirectGLESSlotTable.EveryReKeyedObjectClassAnnouncesItsOwnDeath", "DirectGLESSlotTable.EverySwitchedOverKindResolvesItsTwinThroughTheHandleArm", "DirectGLESSlotTable.FindNeverMutatesTheTable", - "DirectGLESSlotTable.GetOrCreateToleratesANullStateObject", "DirectGLESSlotTable.OneDeathNoticeDropsTheTwinInEveryHolderOfTheKind", "DirectGLESSlotTable.RepeatedLookupsOfALiveObjectKeepOneHandle", "DirectGLESSlotTable.TheHandleArmInstallsTheDeathNoticeConsumer", @@ -9132,9 +9130,6 @@ "RemoteGuards.AllocatorFindByLifetimeIdFromTheApplyThreadIsFatalByName", "RemoteGuards.AllocatorFreeFromTheApplyThreadIsFatalByName", "RemoteGuards.AnAllocatorProbeFromTheApplyThreadOutsideEveryScopeIsFatalByName", - "RemoteGuards.AnAllocatorProbeInsideAnExemptionScopeFromTheApplyThreadIsFatalEvenAtTheOldDebtSites", - "RemoteGuards.AnExemptionScopeHeldOnTheGLThreadDoesNotExemptTheApplyThread", - "RemoteGuards.BarrieredFrontendRegistryMembersRefuseBothLegacyScopes", "RemoteGuards.BarrieredLegacyScopesCannotExemptAllocator", "RemoteGuards.BufferChangeSerialFromTheApplyThreadIsFatalByName", "RemoteGuards.BufferHasDefinedContentFromTheApplyThreadIsFatalByName", @@ -9149,9 +9144,6 @@ "RemoteGuards.ClientPipeInputsTouchInsideABarrieredFillUnderRunAheadIsAllowed", "RemoteGuards.ClientPipeInputsTouchOutsideABarrieredFillUnderRunAheadIsFatalByName", "RemoteGuards.HandleRegistryMembersWorkOnBarrieredAndUnbarrieredApply", - "RemoteGuards.LegacyRegistryWrapperCannotExposeFrontendKeysOnApply", - "RemoteGuards.SlotTableHandleOfFromTheApplyThreadIsFatalByName", - "RemoteGuards.SlotTableMintingGetOrCreateFromTheApplyThreadIsFatalByName", "RemoteGuards.TextureAllocateStorageFromTheApplyThreadIsFatalByName", "RemoteGuards.TextureGetCompressedByteSizeFromTheApplyThreadIsFatalByName", "RemoteGuards.TextureGetCompressedFormatFromTheApplyThreadIsFatalByName", @@ -9368,7 +9360,6 @@ "ServerLoopEglTest.AReadPixelsReplyIsTheTightExtentWhateverDstSizeTheClientSent", "ServerLoopEglTest.CreatingASecondContextLeavesTheFirstNativeContextAlive", "ServerLoopEglTest.CreatingAnotherSurfaceKeepsTheSameNativeContext", - "ServerLoopEglTest.FrontendFramebufferDeathDeletesOnTheContextOwner", "ServerLoopEglTest.MakeCurrentBindsNativelyOncePerContextAndNeverForwardsAClientRelease", "ServerLoopEglTest.RenderShadowCannotSkipAnUnchangedVersionAfterContextEpochChanges", "ServerLoopEglTest.ServerLivenessFollowsControlFramesAcrossReleaseAndRecreation", @@ -14968,7 +14959,6 @@ "DirectGLESSlotTable.ACompositeHandleDoesNotGrowTheOrdinaryTable", "DirectGLESSlotTable.ADeathNoticeForEveryP4aKindIsIdempotent", "DirectGLESSlotTable.AGenerationBehindTheLiveTwinIsRefusedRatherThanAdopted", - "DirectGLESSlotTable.ANegativeLookupIsNotCachedAcrossAnotherHoldersAcquire", "DirectGLESSlotTable.ARecycledSlotIsANewHandleAndTheStaleOneResolvesToNothing", "DirectGLESSlotTable.ASavedCopyOfARealRegistryDropsTheTwinOnTheSameNotice", "DirectGLESSlotTable.AWholeTableSavesResetsAndRestores", @@ -14977,7 +14967,6 @@ "DirectGLESSlotTable.EveryReKeyedObjectClassAnnouncesItsOwnDeath", "DirectGLESSlotTable.EverySwitchedOverKindResolvesItsTwinThroughTheHandleArm", "DirectGLESSlotTable.FindNeverMutatesTheTable", - "DirectGLESSlotTable.GetOrCreateToleratesANullStateObject", "DirectGLESSlotTable.OneDeathNoticeDropsTheTwinInEveryHolderOfTheKind", "DirectGLESSlotTable.RepeatedLookupsOfALiveObjectKeepOneHandle", "DirectGLESSlotTable.TheHandleArmInstallsTheDeathNoticeConsumer",