refactor(shared): test favicon selection through public API - #10005
Effect Service Conventions: No issues found
All clear
Details
Note
Your check run agent prompt is: .macroscope/check-run-agents/effect-service-conventions.md
More information about how Check Run Agents work can be found in our Help Center.
In-scope changed file: packages/shared/src/favicon.ts (test file packages/shared/src/favicon.test.ts is excluded by the check's patterns).
The change only removes the export keyword from two pure helper functions (faviconUrlForPage, explicitFaviconUrl) that are now used solely through toolActivityFaviconUrl in the same module. No Effect service, layer, tag, error class, runtime boundary, or import-namespace convention is involved. Verified there are no remaining consumers or barrel re-exports of the two now-private helpers, so the narrowed visibility does not break callers.
🔍 Agent activity — 2 tool calls
💭 Looking at the diff, the favicon.ts changes just made two exported functions private rather than altering an Effect service, so that's likely not a relevant convention violation. The test change shows toolActivityFaviconUrl now falling back to a default favicon URL for chrome extension URLs, but test files are out of scope here—I should check favicon.ts to confirm there are no remaining external usages of those now-private functions.
1. browse_code — packages/shared/src/favicon.ts
2. browse_code — Find all usages/imports of faviconUrlForPage and explicitFaviconUrl across the repo (any app or package), including barrel re-exports from packages/shared.
💭 This is just a visibility cleanup of pure helper functions, no Effect service concerns. The test behavior change is purely compositional, not an actual production behavior shift, so there's nothing to flag here — all clear.
Agent Credits: 51 credits
Token usage: 18 uncached input · 105,492 cache-read input · 44,059 cache-write input · 6,010 output
Agent Credits may also include non-token charges from external tools such as web research.