Skip to content

Follow-ups from Spec 109-m parity/docs review (#1461) #1462

Description

@Dumbris

Low-severity findings left after the gpt-6.1-sol review of #1461 (Spec 109-m parity and docs). These are gaps in test, traceability or script hardening; none is a product defect.

  • specs/109-ux-navigation-consistency/acceptance-index.json:426 (R2): The SC-011 catalog-performance ref points to catalog_test.go#TestSearchAll_SourceTimeoutMarkedUnavailable, which only checks that a timed-out source is reported unavailable and does not assert p95. The real budget assertion is internal/registries/catalog_bench_test.go#TestSearchAll_PerformanceBudget, which the index omits. Codex rated it medium; downgraded to low because the real test exists and the fix is a one-line ref swap.
  • specs/109-ux-navigation-consistency/acceptance-index.json:415 (R3): SC-010 is indexed as automated, but no referenced test runs the combined A1 fixture (14 approvals plus 3 calls, default view shows exactly 3 calls, System events shows 1 folded row). The refs cover halves: activity-system-folding.spec.ts mocks only 14 approvals under view=system, and the view-to-type mapping is tested in Go. The default-view filtering is server-side, so the whole scenario is live-QA territory. Either mark it live_only with a reason or add a combined test. Codex rated it medium; downgraded to low.
  • internal/server/spec109_mcp_rest_names_test.go:117-123 (R4): The catalog MCP-vs-REST check asserts only six required keys plus the absence of added. It does not compare the full key sets M4/K3 promise, so an MCP-only key or a renamed description goes undetected. Strict equality is impractical because of omitempty, but an MCP-keys-subset-of-REST-tags check is cheap. Codex rated it medium; downgraded to low.
  • internal/httpapi/spec109_retired_names_test.go:55 (R5): The Vue template-text extractor >([^<>{}\n]+)< skips multi-line text and text containing {{ }}, so a retired label in those forms is not detected. Codex rated it medium; downgraded to low because there are no current hits and it is hardening of a self-checking scanner.
  • internal/httpapi/spec109_traceability_test.go:243 and :437 (R6): The task resolver accepts any existing file as coverage (a production-only path such as terminology.go passes). The go: acceptance ref regex accepts any func name, including a helper like p109LoadMatrix that Go never runs as a test.
  • scripts/check-no-unquarantine-callers.sh:25 (R7): If none of the five scan directories exist under ROOT, the script scans nothing and exits 0. Codex ran it against /usr and got a clean pass. The self-test fixtures always create all the dirs.
  • native/macos/MCPProxy/MCPProxyTests/CatalogOrderParityTests.swift:47 (R8): testTheSearchResponseWrapperDecodesTheSameResults feeds "results":[] and asserts only query and sections, never the decoded result order. It cannot detect reordering or loss inside the CatalogSearchResponse wrapper.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugSomething isn't workingpriority/lowNice to have; address when bandwidth allowstriage/acceptedTriaged and accepted for the backlog

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions