4.2 KiB
4.2 KiB
Convention Drift Audit
Date: 2026-03-23
Scope notes:
CLAUDE.mdreviewed.CODEX.mdwas not present anywhere under/workspace, so this audit is based onCLAUDE.mdand the checked-in repository docs.go test ./...passes.go test -coverprofile=webview.cover ./...reports16.1%statement coverage.- No source fixes were applied as part of this audit.
stdlib -> core.*
docs/development.md:120still tells contributors to wrap errors withfmt.Errorf("context: %w", err)so callers can useerrors.Isanderrors.As;CLAUDE.mdnow requirescoreerr.E("Scope.Method", "description", err). This is documentation drift rather than code drift.
UK English
README.md:2usesLicensein the badge alt text and badge label.CONTRIBUTING.md:34uses the US headingLicenseinstead ofLicence.docs/development.md:138useslicenced; that is inconsistent with the repo's other licence/licensed wording.webview.go:705sayscenter coordinatesin a comment.webview.go:718sayscenter pointin a comment.actions.go:511sayscenter pointsin a comment.
Missing tests
actions.go:22,actions.go:33,actions.go:43,actions.go:74,actions.go:85,actions.go:97,actions.go:109,actions.go:121,actions.go:133,actions.go:153,actions.go:172,actions.go:189,actions.go:216,actions.go:263,actions.go:307,actions.go:378,actions.go:391,actions.go:404,actions.go:461,actions.go:471,actions.go:490have no behavioural coverage. Existing action tests inwebview_test.goonly check field assignment and builder length, not execution paths.angular.go:19,angular.go:27,angular.go:33,angular.go:41,angular.go:56,angular.go:93,angular.go:183,angular.go:214,angular.go:251,angular.go:331,angular.go:353,angular.go:384,angular.go:425,angular.go:453,angular.go:480,angular.go:517,angular.go:543,angular.go:570are entirely uncovered. The Angular helper layer has no_Good,_Bad, or_Uglybehavioural tests.cdp.go:78is only lightly exercised by the invalid-debug-URL path; there is no success-path coverage for target discovery, tab creation, or WebSocket connection setup.cdp.go:156,cdp.go:163,cdp.go:205,cdp.go:212,cdp.go:255,cdp.go:267,cdp.go:279,cdp.go:284,cdp.go:289,cdp.go:340,cdp.go:351,cdp.go:372,cdp.go:387have no direct behavioural coverage for transport lifecycle, event dispatch, tab management, target enumeration, or version probing.console.go:33,console.go:72,console.go:79,console.go:84,console.go:168,console.go:207,console.go:246,console.go:371,console.go:427,console.go:434,console.go:469have no direct tests. The concurrency-sensitive watcher subscription, wait APIs, and event parsing paths are currently unverified.webview.go:81andwebview.go:110are only partially covered; there is no success-path test forWithDebugURLplusNewinitialisation, includingRuntime.enable,Page.enable, andDOM.enable.webview.go:143,webview.go:152,webview.go:168,webview.go:176,webview.go:184,webview.go:192,webview.go:200,webview.go:219,webview.go:224,webview.go:238,webview.go:245,webview.go:272,webview.go:280,webview.go:288,webview.go:306,webview.go:324,webview.go:349,webview.go:363,webview.go:374,webview.go:387,webview.go:398,webview.go:422,webview.go:453,webview.go:495,webview.go:517,webview.go:541,webview.go:569,webview.go:604,webview.go:648,webview.go:704,webview.go:740have no direct behavioural coverage across the main browser API, DOM lookup helpers, CDP evaluation path, and console capture path.
SPDX headers
actions.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.angular.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.cdp.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.console.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.webview.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.webview_test.go:1is missing the required// SPDX-License-Identifier: EUPL-1.2header.