Repository navigation
test(capture-kit,maestro,selectors,provider-limrun): cover shared-package CRAP functions through public entries - #3440
Conversation
…-package CRAP functions through their public entries - png-rgb-difference: compare, dimension, and data-length outcomes through the worker client's synchronous parity path (png-rgb-difference.test.ts) - react-native-overlay: collapsed-warning dismissal scoring via analyzeReactNativeOverlay - facade-execution: every suggestionQuery branch through executeMaestroFlow and collectMaestroFailureSuggestions with a failing runtime port - selectors: alternative-collapse branches of projectSelectorExpression - provider-limrun runtime: app-state reader and device inventory through the platform module's loadRuntime/bind path Closes #3423
Size Report
Startup median (7 runs, lower is better):
|
There was a problem hiding this comment.
All reported issues were addressed across 5 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
…sis and name the banner fallback by its absent fact Follow-up on the cubic-dev-ai review of #3440: - the text-selector case had removed the identifier, so it only pinned the label basis; a second case now carries the selector text as the node's visible text and pins the id basis (mutation-checked: inverting that arm of suggestionBasis turns it red) - the tied-banner test said "no ref" while its nodes carry refs; the fact actually absent is hittable, which is now what the name states
|
This PR is ready at c026906. The diff is test-only, so it cannot affect any production route, and all 18 checks pass. I did not run the tests, the coverage or the CRAP script myself, so the mutation and CRAP claims rest on the PR body and the green Coverage job. No conflicts. Nothing stands between this PR and merge. Not blocking: Both earlier inline threads are fixed at this head, so please resolve them: the overlay test rename (#3440 (comment)) and the |
|
Summary
Burns down the shared-package CRAP findings from #3414 by covering each function's uncovered branches through its owning module's public entry point. No production changes, no test-only exports. Five test files, +640 lines, all test-only.
capture-kit/png-rgb-difference.tscomputePngRgbDifferencecapture-kit/react-native-overlay.tscollapsedWarningScoresmaestro/facade-execution.tssuggestionQueryselectors/index.tsvalues(inreadAgreedTextValue)provider-limrun/runtime.tsgetAppStateprovider-limrun/runtime.tsdeviceInventoryProvider(same file, scored 0% locally)getAppStateanddeviceInventoryProviderare covered through the real daemon load path (createLimrunRuntime(..., { includePlatformModule: true })→loadRuntime→bind);suggestionQuerythroughexecuteMaestroFlow+collectMaestroFailureSuggestionswith a failing runtime port. Each new test was mutation-checked (e.g. the swipe arm, the hittable score, the all-agree guard each turn one red).Closes #3423, part of #3414.
Validation
Tested at
c02690688(pushed head; baseda46f4c1c).pnpm check:affected --runlocally: all runnable checks passed (fallow diff audit clean, related tests passed).vitest related --coverage+pnpm check:coverage-crap --all: "no function(s) at or above 30" (was 6 on these files atda46f4c1c).c02690688, threads replied and resolved.