diff --git a/.gitea/workflows/sop-tier-check.yml b/.gitea/workflows/sop-tier-check.yml index 6df5fb7c..235ed633 100644 --- a/.gitea/workflows/sop-tier-check.yml +++ b/.gitea/workflows/sop-tier-check.yml @@ -28,15 +28,16 @@ # # Environment variables: # SOP_DEBUG=1 — per-API-call diagnostic lines. Default: off. -# SOP_LEGACY_CHECK=1 — revert to OR-gate for this run. Grace window -# for PRs in-flight when AND-composition deployed. -# Burn-in: remove after 2026-05-17 (7-day window). +# SOP_LEGACY_CHECK=1 — revert to OR-gate for this run. Intended for +# emergency use only; burn-in window closed +# 2026-05-17 (internal#189 Phase 1). # -# BURN-IN NOTE (internal#189 Phase 1): continue-on-error: true is set on -# the tier-check job below. This prevents AND-composition from blocking -# PRs during the 7-day burn-in. After 2026-05-17: -# 1. Remove `continue-on-error: true` from this job block. -# 2. Update this BURN-IN NOTE comment to mark the window closed. +# BURN-IN CLOSED 2026-05-17 (internal#189 Phase 1): The 7-day burn-in +# window closed. continue-on-error: true has been removed from the +# tier-check job; AND-composition is now fully enforced. If you need +# to temporarily re-introduce a mask, file a tracker and follow the +# mc#774 protocol (Tier 2e lint requires a current tracker within +# 2 lines of any continue-on-error: true). name: sop-tier-check @@ -63,10 +64,6 @@ on: jobs: tier-check: runs-on: ubuntu-latest - # BURN-IN: continue-on-error prevents AND-composition from blocking - # PRs during the 7-day window. Remove after 2026-05-17 (mc#774). - # mc#774: pre-existing continue-on-error mask; root-fix and remove, do not renew silently. - continue-on-error: true permissions: contents: read pull-requests: read diff --git a/canvas/src/components/__tests__/MemoryInspectorPanel.test.ts b/canvas/src/components/__tests__/MemoryInspectorPanel.test.ts index 2ea69e56..797f27ac 100644 --- a/canvas/src/components/__tests__/MemoryInspectorPanel.test.ts +++ b/canvas/src/components/__tests__/MemoryInspectorPanel.test.ts @@ -7,7 +7,7 @@ * itself (MemoryInspectorPanel) requires full API + store mocking and * is exercised by the existing MemoryTab.test.tsx. */ -import { describe, it, expect } from "vitest"; +import { describe, it, expect, vi, beforeEach, afterEach } from "vitest"; import { isPluginUnavailableError, formatTTL } from "../MemoryInspectorPanel"; // formatRelativeTime is not exported — tested via the component in MemoryTab.test.tsx @@ -47,6 +47,9 @@ describe("isPluginUnavailableError", () => { }); describe("formatTTL", () => { + beforeEach(() => { vi.useFakeTimers(); }); + afterEach(() => { vi.useRealTimers(); }); + it("returns '' for null", () => { expect(formatTTL(null)).toBe(""); });