Repository navigation
Conversation
yummybomb
force-pushed
the
hypeship/shopify-app-store-tools
branch
from
September 29, 2026 20:21
d96bfa3 to
38bfb55
Compare
yummybomb
force-pushed
the
hypeship/shopify-app-store-tools
branch
from
September 30, 2026 01:56
9fa7ea3 to
c6b0cbf
Compare
yummybomb
marked this pull request as ready for review
September 30, 2026 14:52
…store-tools # Conflicts: # registry.json
…store-tools # Conflicts: # registry.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds
search_appsandget_apppage tools for the public Shopify App Store, matched only tohttps://apps.shopify.com/*. Search uses the observedTurbo-Frame: search_pagerequest with works-with/category filters and pagination. Listing reads return allowlisted developer, pricing, rating and listing fields. Both work signed out, settle without navigating and never install apps or start trials.Both tools honor caller cancellation and bound text/warnings. Developer links omit query/fragment and reject embedded credentials. Listing ratings validate numeric metadata and complete visible count tokens before returning data. Malformed input is rejected before site interaction; wrong-page, rate-limit, challenge, missing-listing, changed-layout, timeout and cancellation outcomes are explicit. No automatic retries.
Store-admin scope and safety
App Store reads do not provide store-admin coverage. Product/order reads, product-draft preparation and reversible draft operations require an authorized store and observed mechanisms; these are not implemented. No store, trial or partner-account creation, installs or terms acceptance are included. Publishing, refunds, order edits and billing are omitted; future execution tools require a supported trusted human approval path for the exact store/action/parameters, not a model-supplied confirmation flag.
Tests
Rebased on current main
03616f7; only domain source/docs, fabricated site fixtures/tests and two sorted registry entries differ. Unrelated registry entries preserved exactly.node scripts/validate-registry.mjs: 81 tools valid.node --test "tests/*.test.mjs": 1609 passed, 0 failed; 32 site-specific tests.go test ./...: passed.node --test extension/sidepanel.test.mjs: passed (1 test).Independent QA and live evidence
Same independent reviewer completed one initial restart review plus two fix/rechecks. Initial review found an invalid JSON-LD count fallback; recheck 1 found partial regex matches in malformed visible counts. Both were reproduced and fixed with regression tests. Final recheck PASS on source
2c96853be1212569615c27983c80047ea708fca6, no remaining minor-or-higher defects, 438 scratch assertions. Later changes only update README/registry evidence/status, not tool source or tests.Registry statuses are
verified, supported by dated live success on current tool source from a non-entry page. PR remains draft; do not merge automatically.Limitations
English label parsing; no signed-in/store-specific state, permissions or individual reviews. Built-in feature cards are skipped with a warning. Sponsored-card layouts remain fixture-only. Site rate limits are uncharacterised. Missing known markup produces explicit failures, but arbitrary redesigns can still require parser updates. Cancellation propagation and malformed-site/oversized/credential-bearing fields are fixture-tested, not live mutation evidence. No mutation tool or mutation success is claimed.