Shopflow is not a continuation of the current Terry_Tampermonkey workspace.
The current Terry workspace is a broad governed scripts factory with multiple surfaces, heavy repo-wide governance, and mixed product lines. The shopping line inside that workspace is already valuable, but it is still packaged as scripts and metadata records rather than as a dedicated browser extension product family.
Current live inventory from the Terry workspace is:
4825419The shopping line is the only scope that moves into Shopflow.
The business objective is also different from the Terry workspace objective:
The design pressure is therefore:
8+1 public apps into 9 independent engineering systemsShopflow is created as a new repository, not as an in-place evolution of Terry_Tampermonkey.
This means:
Shopflow will use one monorepo with a narrow product boundary.
Canonical top-level layout:
shopflow-suite/
apps/
packages/
tests/
docs/
tooling/
The repo is optimized for browser extension delivery, not for preserving legacy script authoring categories such as extractors, searchers, deals, or utilities.
8+1 appsShopflow owns:
8 Store apps1 Suite appCanonical app set:
ext-albertsonsext-krogerext-amazonext-costcoext-walmartext-weeeext-targetext-temuext-shopping-suitePublic product family:
Shopflow for Albertsons FamilyShopflow for Kroger FamilyShopflow for AmazonShopflow for CostcoShopflow for WalmartShopflow for WeeeShopflow for TargetShopflow for TemuShopflow SuiteCanonical shared packages:
packages/contractspackages/corepackages/runtimepackages/uipackages/testkitCanonical store adapter packages:
packages/store-albertsonspackages/store-krogerpackages/store-amazonpackages/store-costcopackages/store-walmartpackages/store-weeepackages/store-targetpackages/store-temuResponsibilities:
contracts: schemas, types, receipts, public claim boundariescore: orchestration, normalization, shared business rules, action pipelineruntime: browser messaging, storage repository, permission handling, side panel controlui: shared design system and extension UI surfacesstore-*: URL matching, DOM probing, selectors, parsing, action handlers, capability declarationext-shopping-suite exists to:
ext-shopping-suite must not:
In plain language: Suite is a lobby, not a second building.
Engineering naming and public claim naming are different concerns.
Internal package names may use family-level grouping:
store-albertsonsstore-krogerPublic claims must stay tied to verified scopes:
Shopflow for Albertsons Family must explicitly state that the current verified scope starts with SafewayShopflow for Kroger Family must explicitly state that the current verified scope is Fred Meyer + QFCThis repo must never promote “theoretical family compatibility” as “verified family-wide support”.
The following legacy surfaces are migration sources only:
metadata/scripts.jsonmetadata/install-manifest.jsonThey are not future Shopflow runtime truth.
After migration, Shopflow source of truth becomes:
packages/contractspackages/store-*apps/ext-*Shopflow only owns the shopping line.
In scope:
Out of scope:
Rejected because:
8 independent GitHub reposRejected because:
Rejected because:
core and ui into their own standalone reposRejected because:
apps/* must never import each otherpackages/* onlypackages/ui must not import packages/store-*packages/contracts must stay runtime-freeThis ADR is only complete when the following documents are also treated as binding: