Skip to content

fix(analytics): count repeated catalog searches after clearing the input - #77

Merged
appdevelopsk merged 3 commits into
mainfrom
fix/catalog-search-cleared-repeated-query-20261107
Nov 7, 2026
Merged

appdevelopsk merged 3 commits into
mainfrom
fix/catalog-search-cleared-repeated-query-20261107

Conversation

@appdevelopsk

Copy link
Copy Markdown
Owner

Fixes a real catalog analytics undercount: after searching for a term, clearing via the built-in HTML search-input × control, then re-entering the same term, lastReportedSearch still held the previous query, so the new catalog_search_used event was skipped. The input handler now resets deduplication when the normalized field is blank, while preserving live filtering and Enter/blur deduplication. No raw search term is transmitted. Adds scripts/test_catalog_search_events.cjs, which extracts and executes the actual input/reporting handlers from apps.html in a Node VM, with six regression cases covering unfinished typing, Enter+blur deduplication, clear/repeated search, empty submission, repeated blur, and no raw query disclosure. 6/6 Node tests passed locally with test file blob 7b66ad289a328ffe6e11b66aa7903e5240ad6068, exactly matching GitHub branch. Source-level checks confirm 92 Play cards and 5 app spotlight links unchanged. README manual QA runbook updated. No GitHub Actions; no live browser, GA4 DebugView, store publication, or install lift claimed.

@appdevelopsk
appdevelopsk marked this pull request as ready for review November 7, 2026 00:16
@appdevelopsk
appdevelopsk merged commit ff87f66 into main Nov 7, 2026
1 check failed
appdevelopsk added a commit that referenced this pull request Nov 7, 2026
… and unit gates

The deployed pages were correct but the gates still pinned old values:
- check_growth_live: #77 input handler (clears dedupe key, never reports per keystroke)
- check_app_discovery_live: #78 Debate Me title, #53 robots Allow: /icons/
- catalog-growth: #71 ?goal= landing needs URL/location/history/reset in sandbox; #63 app_detail_click
- debate-me / dotchi: current title; sitemap lastmod must not regress (not equal a fixed date)

python 72/72, node tests 52/52 (was 47/52 on main), live 92/92.

Claude-Session: https://claude.ai/code/session_01J5anYNmtTi1EKefKjB5aoV
appdevelopsk added a commit that referenced this pull request Nov 7, 2026
…78/#79 (#83)

* fix(deploy): publish TaleTime and Dog Breeds support pages updated in #78/#79

sitemap.xml (#81) advertises lastmod 2026-11-07 for both pages, but
publish_app_discovery.sh did not list them, so --apply would ship the
new sitemap while leaving their old HTML live.

Claude-Session: https://claude.ai/code/session_01J5anYNmtTi1EKefKjB5aoV

* test(release): follow intentional #53/#63/#71/#77/#78 changes in live and unit gates

The deployed pages were correct but the gates still pinned old values:
- check_growth_live: #77 input handler (clears dedupe key, never reports per keystroke)
- check_app_discovery_live: #78 Debate Me title, #53 robots Allow: /icons/
- catalog-growth: #71 ?goal= landing needs URL/location/history/reset in sandbox; #63 app_detail_click
- debate-me / dotchi: current title; sitemap lastmod must not regress (not equal a fixed date)

python 72/72, node tests 52/52 (was 47/52 on main), live 92/92.

Claude-Session: https://claude.ai/code/session_01J5anYNmtTi1EKefKjB5aoV
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant