===== analytics-report-live-m9k2h-archive-logs-pod.log ===== [pod/analytics-report-live-m9k2h-archive-logs-pod/prepare] 2026-08-03T13:48:43.408370565-05:00 2026/08/03 18:48:43 Entrypoint initialization [pod/analytics-report-live-m9k2h-archive-logs-pod/place-scripts] 2026-08-03T13:48:43.799020617-05:00 2026/08/03 18:48:43 Decoded script /tekton/scripts/script-0-wrtdc [pod/analytics-report-live-m9k2h-archive-logs-pod/place-scripts] 2026-08-03T13:48:43.816732268-05:00 2026/08/03 18:48:43 Decoded script /tekton/scripts/script-1-zp92c [pod/analytics-report-live-m9k2h-archive-logs-pod/step-collect-logs] 2026-08-03T13:48:48.865439546-05:00 ==> collecting pod logs for PipelineRun=analytics-report-live-m9k2h ===== analytics-report-live-m9k2h-clone-pod.log ===== [pod/analytics-report-live-m9k2h-clone-pod/prepare] 2026-08-03T13:47:14.728243110-05:00 2026/08/03 18:47:14 Entrypoint initialization [pod/analytics-report-live-m9k2h-clone-pod/place-scripts] 2026-08-03T13:47:15.395263517-05:00 2026/08/03 18:47:15 Decoded script /tekton/scripts/script-0-q555w [pod/analytics-report-live-m9k2h-clone-pod/step-clone] 2026-08-03T13:47:22.581245235-05:00 From https://github.com/storeminder-ai/storeminder [pod/analytics-report-live-m9k2h-clone-pod/step-clone] 2026-08-03T13:47:22.581271074-05:00 * branch d17d6eef5eda6daa55500af31781415a6cb22020 -> FETCH_HEAD [pod/analytics-report-live-m9k2h-clone-pod/step-clone] 2026-08-03T13:47:22.643566090-05:00 Cloned d17d6eef5eda6daa55500af31781415a6cb22020 ===== analytics-report-live-m9k2h-live-build-pod.log ===== [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.255714768-05:00 INFO[0000] Retrieving image manifest registry.storeminder.ai/images/storeminder:latest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.255770148-05:00 INFO[0000] Retrieving image registry.storeminder.ai/images/storeminder:latest from registry registry.storeminder.ai [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.282279784-05:00 INFO[0000] Retrieving image manifest registry.storeminder.ai/images/storeminder:latest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.282299383-05:00 INFO[0000] Returning cached image manifest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299512249-05:00 INFO[0000] Built cross stage deps: map[] [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299531799-05:00 INFO[0000] Retrieving image manifest registry.storeminder.ai/images/storeminder:latest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299536559-05:00 INFO[0000] Returning cached image manifest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299543479-05:00 INFO[0000] Retrieving image manifest registry.storeminder.ai/images/storeminder:latest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299547639-05:00 INFO[0000] Returning cached image manifest [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.299811868-05:00 INFO[0000] Executing 0 build triggers [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.300154177-05:00 INFO[0000] Building stage 'registry.storeminder.ai/images/storeminder:latest' [idx: '0', base-idx: '-1'] [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.354108975-05:00 INFO[0000] Checking for cached layer registry.storeminder.ai/images/cache:21d32c9bd0038d895469b7ec2d245c9fe1038e6da7866db1806ddb322649265c... [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.377814912-05:00 INFO[0000] No cached layer found for cmd RUN if [ -d /prsrc/packages ]; then for p in /prsrc/packages/*/ ; do pip install --no-cache-dir --no-deps -e "$p"; done; fi && pip install --no-cache-dir --no-deps -e /prsrc/analytics && (pip install --no-cache-dir -e "/prsrc/analytics[test]" || pip install --no-cache-dir pytest) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:42.377845622-05:00 INFO[0000] Unpacking rootfs as cmd COPY . /prsrc requires it. [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:53.615233202-05:00 INFO[0011] COPY . /prsrc [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:53.799482734-05:00 INFO[0011] Taking snapshot of files... [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034640675-05:00 INFO[0011] WORKDIR /prsrc [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034656155-05:00 INFO[0011] Cmd: workdir [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034660955-05:00 INFO[0011] Changed working directory to /prsrc [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034958873-05:00 INFO[0011] No files changed in this command, skipping snapshotting. [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034972993-05:00 INFO[0011] RUN if [ -d /prsrc/packages ]; then for p in /prsrc/packages/*/ ; do pip install --no-cache-dir --no-deps -e "$p"; done; fi && pip install --no-cache-dir --no-deps -e /prsrc/analytics && (pip install --no-cache-dir -e "/prsrc/analytics[test]" || pip install --no-cache-dir pytest) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034981293-05:00 INFO[0011] Initializing snapshotter ... [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:47:54.034985443-05:00 INFO[0011] Taking snapshot of full filesystem... [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:01.405235810-05:00 INFO[0019] Cmd: /bin/sh [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:01.405347200-05:00 INFO[0019] Args: [-c if [ -d /prsrc/packages ]; then for p in /prsrc/packages/*/ ; do pip install --no-cache-dir --no-deps -e "$p"; done; fi && pip install --no-cache-dir --no-deps -e /prsrc/analytics && (pip install --no-cache-dir -e "/prsrc/analytics[test]" || pip install --no-cache-dir pytest)] [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:01.405366530-05:00 INFO[0019] Running: [/bin/sh -c if [ -d /prsrc/packages ]; then for p in /prsrc/packages/*/ ; do pip install --no-cache-dir --no-deps -e "$p"; done; fi && pip install --no-cache-dir --no-deps -e /prsrc/analytics && (pip install --no-cache-dir -e "/prsrc/analytics[test]" || pip install --no-cache-dir pytest)] [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:01.743847385-05:00 Obtaining file:///prsrc/packages/storeminder-config [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:01.746314634-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:03.792119863-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:03.793250188-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:03.915155356-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:03.916175222-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.062543903-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.063566428-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.204498523-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.243025745-05:00 Building wheels for collected packages: storeminder-config [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.243702702-05:00 Building editable for storeminder-config (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.427778438-05:00 Building editable for storeminder-config (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.428544725-05:00 Created wheel for storeminder-config: filename=storeminder_config-0.1.6-0.editable-py3-none-any.whl size=1448 sha256=fb2dfa56d59184db86ea51d58b9101d84594554f8c1be530e3b0960c0a5fc7e0 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.428711114-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-6v9ht02q/wheels/c8/b7/ed/799e8d0938926d17720d45f014fd606224a2bdbd8f166b8ac7 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.430892155-05:00 Successfully built storeminder-config [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.431108114-05:00 Installing collected packages: storeminder-config [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.431236273-05:00 Attempting uninstall: storeminder-config [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.471163289-05:00 Found existing installation: storeminder-config 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.472526333-05:00 Uninstalling storeminder-config-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.473760638-05:00 Successfully uninstalled storeminder-config-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.593724134-05:00 Successfully installed storeminder-config-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.593928963-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.716264119-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.716291689-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:04.716296439-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:05.133210708-05:00 Obtaining file:///prsrc/packages/storeminder-core [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:05.135052390-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.238346307-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.239156784-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.359780616-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.360710132-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.514854008-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.515873894-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.691085477-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.738877188-05:00 Building wheels for collected packages: storeminder-core [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.739627355-05:00 Building editable for storeminder-core (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.900968079-05:00 Building editable for storeminder-core (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.901541476-05:00 Created wheel for storeminder-core: filename=storeminder_core-0.1.6-0.editable-py3-none-any.whl size=1421 sha256=5bde4b625e369b0a4eff87628fdb738727a0786cb590a5bf6cf479852a955260 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.901682796-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-8lrtaau_/wheels/cf/0a/8d/363b61b456e5493d58ab68e2df84ed6525b00451460548e2ec [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.903444128-05:00 Successfully built storeminder-core [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.903616197-05:00 Installing collected packages: storeminder-core [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.903744137-05:00 Attempting uninstall: storeminder-core [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.943025625-05:00 Found existing installation: storeminder-core 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.944432739-05:00 Uninstalling storeminder-core-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:07.946060552-05:00 Successfully uninstalled storeminder-core-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.018247046-05:00 Successfully installed storeminder-core-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.018455185-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.150556947-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.150570937-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.150575297-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.625735697-05:00 Obtaining file:///prsrc/packages/storeminder-integrations [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:08.628017487-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:10.743769379-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:10.744556545-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:10.864753228-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:10.865846534-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.004154008-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.005299742-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.185871671-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.234144609-05:00 Building wheels for collected packages: storeminder-integrations [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.234823606-05:00 Building editable for storeminder-integrations (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.396036079-05:00 Building editable for storeminder-integrations (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.396665816-05:00 Created wheel for storeminder-integrations: filename=storeminder_integrations-0.1.6-0.editable-py3-none-any.whl size=1541 sha256=46572d3ac9d9c2e6c35f2c6266aa942641ee6612395754546ac16023bcda5a7b [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.396801885-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-zsxflnun/wheels/49/2a/42/c8229e571dd70e2121aa4920cf73feb5ab909b22f329251d8c [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.398835687-05:00 Successfully built storeminder-integrations [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.399040006-05:00 Installing collected packages: storeminder-integrations [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.399170025-05:00 Attempting uninstall: storeminder-integrations [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.438373283-05:00 Found existing installation: storeminder-integrations 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.439908596-05:00 Uninstalling storeminder-integrations-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.441342640-05:00 Successfully uninstalled storeminder-integrations-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.524569805-05:00 Successfully installed storeminder-integrations-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.524792474-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.662718359-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.662761699-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:11.662768809-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:12.232411370-05:00 Obtaining file:///prsrc/packages/storeminder-tools [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:12.234406851-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.362202299-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.363040145-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.476812065-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.477835921-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.630352940-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.631628955-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.807474042-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.853835118-05:00 Building wheels for collected packages: storeminder-tools [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:14.854773544-05:00 Building editable for storeminder-tools (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.043495795-05:00 Building editable for storeminder-tools (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.070026438-05:00 Created wheel for storeminder-tools: filename=storeminder_tools-0.1.6-0.editable-py3-none-any.whl size=1538 sha256=a870590f0683de0c2f2bbfd10af06e05fee62d0aa9c77ab07357bd1721c73922 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.070124998-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-6tam780v/wheels/a0/21/f1/6f60f0b2e970907d4c5c8c7175e076b35d88919c960e079b86 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.071977800-05:00 Successfully built storeminder-tools [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.072146229-05:00 Installing collected packages: storeminder-tools [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.072255778-05:00 Attempting uninstall: storeminder-tools [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.107656583-05:00 Found existing installation: storeminder-tools 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.109286776-05:00 Uninstalling storeminder-tools-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.111045068-05:00 Successfully uninstalled storeminder-tools-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.187205983-05:00 Successfully installed storeminder-tools-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.187426262-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.311388377-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.311419567-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.311428157-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.768544757-05:00 Obtaining file:///prsrc/analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:15.770803767-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:17.976665590-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:17.977465626-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.106539118-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.107455404-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.267375529-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.268603044-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.435997736-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.483273048-05:00 Building wheels for collected packages: storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.484108574-05:00 Building editable for storeminder-analytics (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.666140182-05:00 Building editable for storeminder-analytics (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.666847289-05:00 Created wheel for storeminder-analytics: filename=storeminder_analytics-0.1.6-0.editable-py3-none-any.whl size=2198 sha256=3cd3ad4b287e9971c5c51ffaceab6decb92c24d6832b7bae4e2450014402a85c [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.666991549-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-e0jsi86x/wheels/3d/79/a1/5b9945b9b299ef8e95d41afe8b877f821e7a9e81cca81ac5fa [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.669770136-05:00 Successfully built storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.669998065-05:00 Installing collected packages: storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.670137835-05:00 Attempting uninstall: storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.716447271-05:00 Found existing installation: storeminder-analytics 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.721748687-05:00 Uninstalling storeminder-analytics-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.723644619-05:00 Successfully uninstalled storeminder-analytics-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.799418225-05:00 Successfully installed storeminder-analytics-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.799614284-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.933844073-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.933869603-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:18.933875113-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:19.349466261-05:00 Obtaining file:///prsrc/analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:19.351565962-05:00 Installing build dependencies: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.363735907-05:00 Installing build dependencies: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.364599113-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.491677643-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.492669898-05:00 Getting requirements to build editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.652495813-05:00 Getting requirements to build editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.653651028-05:00 Preparing editable metadata (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.813722561-05:00 Preparing editable metadata (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.889721736-05:00 Requirement already satisfied: storeminder-config==0.1.6 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.890355433-05:00 Requirement already satisfied: storeminder-core==0.1.6 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.891127560-05:00 Requirement already satisfied: storeminder-integrations==0.1.6 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.891804086-05:00 Requirement already satisfied: storeminder-tools==0.1.6 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.897220383-05:00 Requirement already satisfied: pandas>=1.5.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (3.0.5) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.898188708-05:00 Requirement already satisfied: numpy>=1.23.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (2.4.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.899002555-05:00 Requirement already satisfied: requests>=2.28.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (2.34.2) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.899734831-05:00 Requirement already satisfied: openpyxl>=3.0.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (3.1.5) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.900502698-05:00 Requirement already satisfied: anthropic>=0.25.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (0.120.2) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.901673073-05:00 Requirement already satisfied: psycopg>=3.1 in /usr/local/lib/python3.11/site-packages (from psycopg[binary,pool]>=3.1->storeminder-analytics==0.1.6) (3.3.4) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.903107077-05:00 Requirement already satisfied: boto3>=1.34 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (1.43.60) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.903840353-05:00 Requirement already satisfied: PyYAML>=6.0 in /usr/local/lib/python3.11/site-packages (from storeminder-analytics==0.1.6) (6.0.3) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:21.906032194-05:00 Requirement already satisfied: omegaconf>=2.3 in /usr/local/lib/python3.11/site-packages (from storeminder-config==0.1.6->storeminder-analytics==0.1.6) (2.3.1) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.087266184-05:00 Collecting pytest>=7 (from storeminder-analytics==0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.166389814-05:00 Downloading pytest-9.1.1-py3-none-any.whl.metadata (7.6 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.181051859-05:00 Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (4.14.2) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.181966335-05:00 Requirement already satisfied: distro<2,>=1.7.0 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (1.9.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.182974221-05:00 Requirement already satisfied: docstring-parser<1,>=0.15 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.18.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.183933277-05:00 Requirement already satisfied: httpx<1,>=0.25.0 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.28.1) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.184722793-05:00 Requirement already satisfied: jiter<1,>=0.4.0 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.16.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.187108453-05:00 Requirement already satisfied: pydantic<3,>=1.9.0 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (2.13.4) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.187689020-05:00 Requirement already satisfied: sniffio in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (1.3.1) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.188452747-05:00 Requirement already satisfied: typing-extensions<5,>=4.14 in /usr/local/lib/python3.11/site-packages (from anthropic>=0.25.0->storeminder-analytics==0.1.6) (4.16.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.193056816-05:00 Requirement already satisfied: botocore<1.44.0,>=1.43.60 in /usr/local/lib/python3.11/site-packages (from boto3>=1.34->storeminder-analytics==0.1.6) (1.43.60) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.193893063-05:00 Requirement already satisfied: jmespath<2.0.0,>=0.7.1 in /usr/local/lib/python3.11/site-packages (from boto3>=1.34->storeminder-analytics==0.1.6) (1.1.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.194707419-05:00 Requirement already satisfied: s3transfer<0.20.0,>=0.19.0 in /usr/local/lib/python3.11/site-packages (from boto3>=1.34->storeminder-analytics==0.1.6) (0.19.2) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.198404083-05:00 Requirement already satisfied: et-xmlfile in /usr/local/lib/python3.11/site-packages (from openpyxl>=3.0.0->storeminder-analytics==0.1.6) (2.0.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.244759908-05:00 Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.11/site-packages (from pandas>=1.5.0->storeminder-analytics==0.1.6) (2.9.0.post0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.283791366-05:00 Requirement already satisfied: psycopg-binary==3.3.4 in /usr/local/lib/python3.11/site-packages (from psycopg[binary,pool]>=3.1->storeminder-analytics==0.1.6) (3.3.4) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.284811631-05:00 Requirement already satisfied: psycopg-pool in /usr/local/lib/python3.11/site-packages (from psycopg[binary,pool]>=3.1->storeminder-analytics==0.1.6) (3.3.1) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.322982153-05:00 Collecting iniconfig>=1.0.1 (from pytest>=7->storeminder-analytics==0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.337703657-05:00 Downloading iniconfig-2.3.0-py3-none-any.whl.metadata (2.5 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.339848678-05:00 Requirement already satisfied: packaging>=22 in /usr/local/lib/python3.11/site-packages (from pytest>=7->storeminder-analytics==0.1.6) (25.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.391354191-05:00 Collecting pluggy<2,>=1.5 (from pytest>=7->storeminder-analytics==0.1.6) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.414464439-05:00 Downloading pluggy-1.6.0-py3-none-any.whl.metadata (4.8 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.417113617-05:00 Requirement already satisfied: pygments>=2.7.2 in /usr/local/lib/python3.11/site-packages (from pytest>=7->storeminder-analytics==0.1.6) (2.20.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.425502880-05:00 Requirement already satisfied: charset_normalizer<4,>=2 in /usr/local/lib/python3.11/site-packages (from requests>=2.28.0->storeminder-analytics==0.1.6) (3.4.9) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.426294256-05:00 Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.28.0->storeminder-analytics==0.1.6) (3.18) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.427101963-05:00 Requirement already satisfied: urllib3<3,>=1.26 in /usr/local/lib/python3.11/site-packages (from requests>=2.28.0->storeminder-analytics==0.1.6) (2.7.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.427901909-05:00 Requirement already satisfied: certifi>=2023.5.7 in /usr/local/lib/python3.11/site-packages (from requests>=2.28.0->storeminder-analytics==0.1.6) (2026.7.22) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.459723189-05:00 Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.11/site-packages (from httpx<1,>=0.25.0->anthropic>=0.25.0->storeminder-analytics==0.1.6) (1.0.9) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.466746698-05:00 Requirement already satisfied: h11>=0.16 in /usr/local/lib/python3.11/site-packages (from httpcore==1.*->httpx<1,>=0.25.0->anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.16.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.484130591-05:00 Requirement already satisfied: antlr4-python3-runtime==4.9.* in /usr/local/lib/python3.11/site-packages (from omegaconf>=2.3->storeminder-config==0.1.6->storeminder-analytics==0.1.6) (4.9.3) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.503871714-05:00 Requirement already satisfied: annotated-types>=0.6.0 in /usr/local/lib/python3.11/site-packages (from pydantic<3,>=1.9.0->anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.8.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.504743180-05:00 Requirement already satisfied: pydantic-core==2.46.4 in /usr/local/lib/python3.11/site-packages (from pydantic<3,>=1.9.0->anthropic>=0.25.0->storeminder-analytics==0.1.6) (2.46.4) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.505792075-05:00 Requirement already satisfied: typing-inspection>=0.4.2 in /usr/local/lib/python3.11/site-packages (from pydantic<3,>=1.9.0->anthropic>=0.25.0->storeminder-analytics==0.1.6) (0.4.2) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.517789372-05:00 Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.11/site-packages (from python-dateutil>=2.8.2->pandas>=1.5.0->storeminder-analytics==0.1.6) (1.17.0) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.595954027-05:00 Downloading pytest-9.1.1-py3-none-any.whl (386 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.936428233-05:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 386.5/386.5 kB 1.2 MB/s eta 0:00:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.960422217-05:00 Downloading iniconfig-2.3.0-py3-none-any.whl (7.5 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:22.988106435-05:00 Downloading pluggy-1.6.0-py3-none-any.whl (20 kB) [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.002515771-05:00 Checking if build backend supports build_editable: started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.115475212-05:00 Checking if build backend supports build_editable: finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.115992790-05:00 Building wheels for collected packages: storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.116990076-05:00 Building editable for storeminder-analytics (pyproject.toml): started [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.299932167-05:00 Building editable for storeminder-analytics (pyproject.toml): finished with status 'done' [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.300583154-05:00 Created wheel for storeminder-analytics: filename=storeminder_analytics-0.1.6-0.editable-py3-none-any.whl size=2198 sha256=4a2205c4471cb0167ed17ab141faadd7dca96c7bb8e33c245ded512135439df3 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.300777933-05:00 Stored in directory: /tmp/pip-ephem-wheel-cache-d8e71ktp/wheels/3d/79/a1/5b9945b9b299ef8e95d41afe8b877f821e7a9e81cca81ac5fa [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:23.302964144-05:00 Successfully built storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:24.232025857-05:00 Installing collected packages: pluggy, iniconfig, pytest, storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:24.528424427-05:00 Attempting uninstall: storeminder-analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:24.578867834-05:00 Found existing installation: storeminder-analytics 0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:24.580458897-05:00 Uninstalling storeminder-analytics-0.1.6: [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:24.776163861-05:00 Successfully uninstalled storeminder-analytics-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.318004014-05:00 Successfully installed iniconfig-2.3.0 pluggy-1.6.0 pytest-9.1.1 storeminder-analytics-0.1.6 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.318254823-05:00 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.493395908-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.493423828-05:00 [notice] A new release of pip is available: 24.0 -> 26.2 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.493430838-05:00 [notice] To update, run: pip install --upgrade pip [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:25.601435500-05:00 INFO[0043] Taking snapshot of full filesystem... [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:27.809452733-05:00 INFO[0045] Pushing layer registry.storeminder.ai/images/cache:21d32c9bd0038d895469b7ec2d245c9fe1038e6da7866db1806ddb322649265c to cache now [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:27.809645833-05:00 INFO[0045] Pushing image to registry.storeminder.ai/images/cache:21d32c9bd0038d895469b7ec2d245c9fe1038e6da7866db1806ddb322649265c [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:27.982788595-05:00 INFO[0045] Pushed registry.storeminder.ai/images/cache@sha256:46e8968b306e40f0193adc7c43c99142832bb47a1a6df8e1de0f354e8dd6b71b [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:27.983536522-05:00 INFO[0045] Pushing image to registry.storeminder.ai/images/storeminder-report-live:d17d6eef5eda6daa55500af31781415a6cb22020 [pod/analytics-report-live-m9k2h-live-build-pod/step-build-pr-image] 2026-08-03T13:48:28.225719289-05:00 INFO[0046] Pushed registry.storeminder.ai/images/storeminder-report-live@sha256:6523da83e956d5891e008a00b057fad20f76c6c9bcfb98355ea5aaffb9beaf39 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:28.836306942-05:00 /tekton/scripts/script-2-2jgnz: line 27: steps.build-pr-image.exitCode.path: command not found [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:28.960198533-05:00 job.batch/report-live-d17d6ee created [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.323235986-05:00 ----- live Job logs (report-live-d17d6ee) ----- [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822863106-05:00 Running live report trait suite (real Vertex + DB, DRY_RUN): analytics/tests/test_report_traits_live.py [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822882766-05:00 ============================= test session starts ============================== [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822887636-05:00 platform linux -- Python 3.11.15, pytest-9.1.1, pluggy-1.6.0 -- /usr/local/bin/python [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822892096-05:00 cachedir: .pytest_cache [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822896246-05:00 rootdir: /prsrc/analytics [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822899446-05:00 configfile: pyproject.toml [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822903246-05:00 plugins: anyio-4.14.2, langsmith-0.10.13 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822907596-05:00 collecting ... collected 10 items [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822919916-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822924786-05:00 analytics/tests/test_report_traits_live.py::test_daily_builds_and_renders ERROR [ 10%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822929396-05:00 analytics/tests/test_report_traits_live.py::test_daily_is_sendable_and_no_weekly_leak ERROR [ 20%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822933326-05:00 analytics/tests/test_report_traits_live.py::test_daily_headline_labeled_total_sales ERROR [ 30%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822936776-05:00 analytics/tests/test_report_traits_live.py::test_daily_sms_not_truncated ERROR [ 40%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822940126-05:00 analytics/tests/test_report_traits_live.py::test_daily_artifact_bundle_written ERROR [ 50%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822943386-05:00 analytics/tests/test_report_traits_live.py::test_weekly_builds_and_renders ERROR [ 60%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822947076-05:00 analytics/tests/test_report_traits_live.py::test_weekly_is_sendable ERROR [ 70%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822950546-05:00 analytics/tests/test_report_traits_live.py::test_weekly_headline_labeled_total_sales ERROR [ 80%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822954336-05:00 analytics/tests/test_report_traits_live.py::test_weekly_sms_not_truncated ERROR [ 90%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822957636-05:00 analytics/tests/test_report_traits_live.py::test_weekly_artifact_bundle_written ERROR [100%] [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822960746-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822964026-05:00 ==================================== ERRORS ==================================== [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822967416-05:00 _______________ ERROR at setup of test_daily_builds_and_renders ________________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822970516-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822973836-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822977266-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822980876-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822984076-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822987196-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822990446-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822993766-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.822997366-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823001205-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823004445-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823007625-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823010965-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823014385-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823017695-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823031445-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823033885-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823036185-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823038375-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823040515-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823042615-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823044735-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823047025-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823049225-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823051465-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823053755-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823055935-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823058095-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823060285-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823062515-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823064735-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823067035-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823069225-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823071455-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823073745-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823076015-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823078195-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823080405-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823082605-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823084805-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823086985-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823089195-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823091375-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823093635-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823095745-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823097915-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823100105-05:00 _________ ERROR at setup of test_daily_is_sendable_and_no_weekly_leak __________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823102225-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823104505-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823106715-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823108915-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823111115-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823113215-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823115445-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823117655-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823121785-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823129755-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823132075-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823134355-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823141005-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823143235-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823145345-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823147575-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823149785-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823152005-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823154095-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823157015-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823159115-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823161245-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823163435-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823165645-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823167985-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823170245-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823172435-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823174745-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823176935-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823179085-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823181375-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823183535-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823185775-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823187985-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823190185-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823192435-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823194675-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823196885-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823199065-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823201245-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823203435-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823205625-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823207785-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823209995-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823212105-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823214355-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823216685-05:00 __________ ERROR at setup of test_daily_headline_labeled_total_sales ___________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823218785-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823221004-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823223234-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823228644-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823230904-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823233004-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823235154-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823239694-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823241984-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823244784-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823251524-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823253774-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823256004-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823258154-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823260294-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823262524-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823264674-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823266894-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823269014-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823271164-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823273274-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823275454-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823277734-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823279904-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823282184-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823284464-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823286684-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823289584-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823291784-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823293944-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823296134-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823298294-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823300554-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823302794-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823304994-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823307184-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823309344-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823311514-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823313724-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823315914-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823318104-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823320284-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823322594-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823324874-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823326974-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823329154-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823335014-05:00 ________________ ERROR at setup of test_daily_sms_not_truncated ________________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823337154-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823339354-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823341744-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823344014-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823346154-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823348224-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823350374-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823352554-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823358234-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823360524-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823362724-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823364894-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823367094-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823369254-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823371384-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823373584-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823375734-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823378084-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823380204-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823382344-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823384444-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823386584-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823388784-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823390984-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823393254-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823395514-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823397734-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823399944-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823402144-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823404354-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823406554-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823408734-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823413024-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823415304-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823417604-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823419784-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823421974-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823424194-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823426414-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823428584-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823430814-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823432984-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823435204-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823437454-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823439554-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823441844-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823444083-05:00 _____________ ERROR at setup of test_daily_artifact_bundle_written _____________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823446203-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823448343-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823450533-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823452743-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823458433-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823460563-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823462703-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823464883-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823467043-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823469223-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823471423-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823473633-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823475813-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823477983-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823480143-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823482293-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823484463-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823486633-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823488703-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823490863-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823492973-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823495113-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823497343-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823499513-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823501713-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823503983-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823506183-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823508543-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823510733-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823512893-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823515073-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823517263-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823519423-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823521673-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823523873-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823526063-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823528223-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823530403-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823535733-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823537983-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823540153-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823542723-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823545003-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823547263-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823549363-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823551503-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823553693-05:00 _______________ ERROR at setup of test_weekly_builds_and_renders _______________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823555783-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823561523-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823563733-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823565953-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823568123-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823570223-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823572403-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823574603-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823576773-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823580133-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823582403-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823584623-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823586803-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823588993-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823591163-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823593303-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823595453-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823597633-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823599723-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823601873-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823603973-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823606113-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823608393-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823610553-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823613213-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823615493-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823617683-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823619953-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823622133-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823624313-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823626483-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823628633-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823630803-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823638743-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823644103-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823647423-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823650353-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823652683-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823654903-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823657073-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823659243-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823661393-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823663892-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823666182-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823668292-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823670442-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823676752-05:00 __________________ ERROR at setup of test_weekly_is_sendable ___________________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823678872-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823681062-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823683222-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823685392-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823687572-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823689662-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823691822-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823694092-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823696282-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823698462-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823700692-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823702972-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823705272-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823707462-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823709692-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823711862-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823714022-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823716202-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823718282-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823720432-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823722562-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823724732-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823726912-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823729102-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823731372-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823734022-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823736222-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823738412-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823740622-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823742832-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823748412-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823750662-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823752832-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823755782-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823758042-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823760252-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823762412-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823764572-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823766732-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823768912-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823771052-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823773232-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823775472-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823781812-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823783942-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823786182-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823788352-05:00 __________ ERROR at setup of test_weekly_headline_labeled_total_sales __________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823790442-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823792562-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823794712-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823796962-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823799192-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823801282-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823803432-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823805622-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823807852-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823810592-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823812752-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823814942-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823817152-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823819342-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823821532-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823823672-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823825822-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823827982-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823830072-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823832212-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823834332-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823836472-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823838642-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823840832-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823843032-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823845272-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823847452-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823849642-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823851822-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823853992-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823856182-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823858362-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823860532-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823862702-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823864862-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823867152-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823869352-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823871552-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823873702-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823875872-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823881662-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823883872-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823886031-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823888271-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823890391-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823892531-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823894731-05:00 _______________ ERROR at setup of test_weekly_sms_not_truncated ________________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823896821-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823898941-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823901101-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823903261-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823905421-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823907531-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823909681-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823911881-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823914051-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823916221-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823918381-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823920531-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823922711-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823924941-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823927131-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823929291-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823931441-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823933611-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823935671-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823937831-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823939911-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823942091-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823947561-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823949761-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823951971-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823954461-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823958001-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823960261-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823962461-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823964661-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823966851-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823969011-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823971201-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823973481-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823975681-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823977871-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823980081-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823986001-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823988191-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823990361-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823992521-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823994661-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823996951-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.823999301-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824001421-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824003661-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824005831-05:00 ____________ ERROR at setup of test_weekly_artifact_bundle_written _____________ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824007921-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824010051-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824012201-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824014371-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824016561-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824018691-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824020831-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824022991-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824025151-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824027311-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824029521-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824031681-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824033841-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824036021-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824038201-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824040381-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824042541-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824044691-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824046761-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824048901-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824050981-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824053131-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824055841-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824058021-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824060201-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824062381-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824064591-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824066831-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824069011-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824071231-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824073391-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824075551-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824077721-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824080591-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824086241-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824088431-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824090611-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824092831-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824095061-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824097221-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824099381-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824101601-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824103761-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824105951-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824108040-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824110320-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824112580-05:00 --------------------- generated xml file: /tmp/traits.xml ---------------------- [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824114810-05:00 =========================== short test summary info ============================ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824116960-05:00 ERROR analytics/tests/test_report_traits_live.py::test_daily_builds_and_renders [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824119190-05:00 ERROR analytics/tests/test_report_traits_live.py::test_daily_is_sendable_and_no_weekly_leak [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824121330-05:00 ERROR analytics/tests/test_report_traits_live.py::test_daily_headline_labeled_total_sales [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824123520-05:00 ERROR analytics/tests/test_report_traits_live.py::test_daily_sms_not_truncated [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824126130-05:00 ERROR analytics/tests/test_report_traits_live.py::test_daily_artifact_bundle_written [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824131710-05:00 ERROR analytics/tests/test_report_traits_live.py::test_weekly_builds_and_renders [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824134020-05:00 ERROR analytics/tests/test_report_traits_live.py::test_weekly_is_sendable - s... [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824136160-05:00 ERROR analytics/tests/test_report_traits_live.py::test_weekly_headline_labeled_total_sales [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824138840-05:00 ERROR analytics/tests/test_report_traits_live.py::test_weekly_sms_not_truncated [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824141710-05:00 ERROR analytics/tests/test_report_traits_live.py::test_weekly_artifact_bundle_written [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824143910-05:00 ============================== 10 errors in 1.39s ============================== [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824146100-05:00 ===JUNIT_BEGIN=== [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824148980-05:00 @pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824152580-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824154760-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824156920-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824159000-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824161240-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824163430-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824165620-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824167870-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824173510-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824175700-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824177930-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824180190-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824182320-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824184520-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824186670-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824188880-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824190980-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824193140-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824195230-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824197460-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824199640-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824201880-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824204230-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824206450-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824208740-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824210970-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824213150-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824215300-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824217470-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824219620-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824221800-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824224000-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824226190-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824228380-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824230550-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824232720-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824234910-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824237100-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824239270-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824241460-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824243710-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824246010-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824248100-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824250820-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824253030-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824255220-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824257410-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824260220-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824262450-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824264680-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824271540-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824273750-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824275930-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824278120-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824280290-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824282480-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824284640-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824289970-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824292180-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824294370-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824296630-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824298900-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824301040-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824303250-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824305460-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824307660-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824309880-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824312120-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824314290-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824316500-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824318710-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824320870-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824323050-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824325200-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824327409-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824329619-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824331809-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824334009-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824336269-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824338519-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824340689-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824342849-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824344999-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824347199-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824349379-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824351629-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824353739-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824356389-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824358569-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824360729-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824366979-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824369129-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824371509-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824373769-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824375999-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824378229-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824380399-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824382649-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824384859-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824387039-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824389269-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824392089-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824394419-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824396679-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824398849-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824401059-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824403159-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824405339-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824407619-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824409849-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824412079-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824414319-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824416599-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824418809-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824420979-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824423169-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824425359-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824427579-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824429799-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824432029-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824434229-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824436429-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824438619-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824440799-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824442989-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824445199-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824447419-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824449599-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824451849-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824454129-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824456239-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824472489-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824491619-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824502109-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824505969-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824508679-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824511599-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824514489-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824517889-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824520689-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824523509-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824526399-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824529179-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824531889-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824534629-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824537329-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824540089-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824542849-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824545659-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824548409-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824551048-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824553758-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824558708-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824561518-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824564408-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824567138-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824569908-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824572618-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824575388-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824578148-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824580968-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824583748-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824586508-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824589258-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824592048-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824594798-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824597528-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824600348-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824603068-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824605838-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824608538-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824611278-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824614058-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824616828-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824625638-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824628588-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824637478-05:00 def daily_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824644278-05:00 > return _run("daily") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824647128-05:00 ^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824649738-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824652518-05:00 analytics/tests/test_report_traits_live.py:94: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824655298-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824658048-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824660778-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824663578-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824666328-05:00 analytics/src/storeminder/runner.py:317: in run_daily [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824669178-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824671928-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824674778-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824677508-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824680218-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824682998-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824685628-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824688348-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824690988-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824693758-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824696648-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824699438-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824702298-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824705108-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824707838-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824710708-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824713478-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824716218-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824718998-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824721698-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824724498-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824727308-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824730048-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824732778-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824735568-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824742348-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824745188-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824747908-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824750668-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824753348-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824761608-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824764468-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824767108-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824770138-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824773158-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824775908-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824778637-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824781247-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824783967-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824786747-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824789497-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824792317-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824795157-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824797877-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824800587-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824803297-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824806017-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824808747-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824811527-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824814277-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824816897-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824819747-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824822377-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824825137-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824827977-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824830757-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824833587-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824836437-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824839247-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824842047-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824844787-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824847667-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824850437-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824853137-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824855927-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824858797-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824861567-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824864327-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824867157-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824869887-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824877837-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824880637-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824883367-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824886137-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824888947-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824891767-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824894437-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824897247-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824900097-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824902857-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824905587-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824908267-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824911007-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824913727-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824916477-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824919187-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824921957-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824924687-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824927447-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824930277-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824933027-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824935747-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824938507-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824941317-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824943967-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824946677-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824949337-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824952377-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824958437-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824961297-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824964097-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824966887-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824969657-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824972407-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824975177-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824977947-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824980707-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824983437-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824986177-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824988917-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824991647-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.824999087-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825001997-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825004797-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825007537-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825010256-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825012976-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825015706-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825018496-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825022346-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825025056-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825028356-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825031196-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825033966-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825036836-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825039436-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825042136-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825044936-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825047716-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825050506-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825053246-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825056036-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825058766-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825061516-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825064256-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825067346-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825070076-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825072846-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825075506-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825078236-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825080936-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825083636-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825086376-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825089166-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825092036-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825094886-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825097656-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825100406-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825103146-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825105896-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825108636-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825115976-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825118776-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825121536-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825124296-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825127006-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825129766-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825132516-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825135366-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825138166-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825141016-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825143836-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825147376-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825150346-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825152996-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825155816-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825158606-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825161386-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825164236-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825166896-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825172886-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825175746-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825178636-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825181406-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825184286-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825188236-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825191016-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825193756-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825196476-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825199246-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825202746-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825205546-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825208206-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825210936-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825213576-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825216326-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825219026-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825221806-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825225236-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825228016-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825230746-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825238676-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825241525-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825244295-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825247075-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825249845-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825252615-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825255365-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825258135-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825260965-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825263735-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825266515-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825269225-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825271975-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825274705-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825277425-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825280265-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825283905-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825286555-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825289315-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError@pytest.fixture(scope="module") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825292175-05:00 def weekly_report(): [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825294895-05:00 > return _run("weekly") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825297715-05:00 ^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825300355-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825303115-05:00 analytics/tests/test_report_traits_live.py:99: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825307105-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825309895-05:00 analytics/tests/test_report_traits_live.py:75: in _run [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825312665-05:00 res = fn(store, end_date=d, dry_run=True, deliver=False, clean=True) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825315405-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825318105-05:00 analytics/src/storeminder/runner.py:336: in run_weekly [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825320915-05:00 return _run_report(params, clean=clean) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825323635-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825326415-05:00 analytics/src/storeminder/runner.py:161: in _run_report [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825329175-05:00 conf = manage_api.store_config(store_id) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825331895-05:00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825334605-05:00 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825337215-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825339895-05:00 store_id = 'Fastime' [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825342535-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825345225-05:00 def store_config(store_id: str) -> dict[str, Any] | None: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825347945-05:00 """The store's authoritative report config (== the legacy conf/{slug}.yaml). [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825350735-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825353495-05:00 Returns the config dict on 200, or None on a 404 (unknown store — the caller [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825364025-05:00 turns this into an explicit error). Raises ManageApiError when the base URL is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825366865-05:00 unset or the manage app is unreachable / returns any other status: config is [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825369605-05:00 Django-only, so we fail loud rather than run an unconfigured store. [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825372365-05:00 """ [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825375275-05:00 base = _require_base() [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825378025-05:00 try: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825380935-05:00 import requests [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825383705-05:00 r = requests.get(f"{base}/api/stores/{store_id}/config/", [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825387015-05:00 headers=_headers(), timeout=10) [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825389785-05:00 except Exception as e: # transport error → loud [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825392535-05:00 raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825395275-05:00 f"manage_api store_config({store_id}) transport error: " [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825398015-05:00 f"{type(e).__name__}: {e}") from e [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825408445-05:00 if r.status_code == 404: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825411435-05:00 return None [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825414175-05:00 if r.status_code != 200: [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825416875-05:00 > raise ManageApiError( [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825420195-05:00 f"manage_api store_config({store_id}) returned HTTP {r.status_code}") [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825423105-05:00 E storeminder.manage_api.ManageApiError: manage_api store_config(Fastime) returned HTTP 400 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825425745-05:00 [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825428805-05:00 packages/storeminder-integrations/src/storeminder/manage_api.py:93: ManageApiError===JUNIT_END=== [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.825431625-05:00 ----- end live Job logs ----- [pod/analytics-report-live-m9k2h-live-build-pod/step-run-live] 2026-08-03T13:48:39.887787796-05:00 ==> live build: status=Failed conclusion=failure [pod/analytics-report-live-m9k2h-live-build-pod/prepare] 2026-08-03T13:47:35.599190729-05:00 2026/08/03 18:47:35 Entrypoint initialization [pod/analytics-report-live-m9k2h-live-build-pod/place-scripts] 2026-08-03T13:47:36.501423315-05:00 2026/08/03 18:47:36 Decoded script /tekton/scripts/script-0-tqpn2 [pod/analytics-report-live-m9k2h-live-build-pod/place-scripts] 2026-08-03T13:47:36.520995401-05:00 2026/08/03 18:47:36 Decoded script /tekton/scripts/script-2-2jgnz [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.994605691-05:00 Wrote Dockerfile.reportcheck: [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995306788-05:00 # Throwaway image for the live report build. Layers the checkout [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995324598-05:00 # (analytics/ + notebooks/ + tests) over the prod runtime so the live [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995330298-05:00 # trait suite can run with real deps + real secrets (mounted by the Job). [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995335108-05:00 FROM registry.storeminder.ai/images/storeminder:latest [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995339598-05:00 COPY . /prsrc [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995344578-05:00 WORKDIR /prsrc [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995349048-05:00 # Overlay the report package over the baked one (deps already resolved in [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995353578-05:00 # the base), then add the test runner. Prefer the [test] extra (adds [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995360128-05:00 # papermill/nbclient/scrapbook); fall back to bare pytest. [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995364578-05:00 # Overlay the sibling storeminder-* dists first when the checkout has [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995369258-05:00 # them (#781 package family; guard keeps pre-carve branches working). [pod/analytics-report-live-m9k2h-live-build-pod/step-prepare-dockerfile] 2026-08-03T13:47:41.995374748-05:00 RUN if [ -d /prsrc/packages ]; then for p in /prsrc/packages/*/ ; do pip install --no-cache-dir --no-deps -e "$p"; done; fi && pip install --no-cache-dir --no-deps -e /prsrc/analytics && (pip install --no-cache-dir -e "/prsrc/analytics[test]" || pip install --no-cache-dir pytest) ===== analytics-report-live-m9k2h-notify-on-failure-pod.log ===== [pod/analytics-report-live-m9k2h-notify-on-failure-pod/prepare] 2026-08-03T13:48:43.314583735-05:00 2026/08/03 18:48:43 Entrypoint initialization [pod/analytics-report-live-m9k2h-notify-on-failure-pod/place-scripts] 2026-08-03T13:48:43.793726261-05:00 2026/08/03 18:48:43 Decoded script /tekton/scripts/script-0-cwfbx [pod/analytics-report-live-m9k2h-notify-on-failure-pod/step-slack-alert] 2026-08-03T13:48:49.156996488-05:00 slack-preview-token absent — skipping Slack alert (see the storeminder/slack Vault grant) ===== analytics-report-live-m9k2h-post-check-live-pod.log ===== [pod/analytics-report-live-m9k2h-post-check-live-pod/prepare] 2026-08-03T13:48:45.311976345-05:00 2026/08/03 18:48:45 Entrypoint initialization [pod/analytics-report-live-m9k2h-post-check-live-pod/place-scripts] 2026-08-03T13:48:47.855905075-05:00 2026/08/03 18:48:47 Decoded script /tekton/scripts/script-0-xlwbv Error from server (BadRequest): container "step-post-check" in pod "analytics-report-live-m9k2h-post-check-live-pod" is waiting to start: PodInitializing ===== analytics-report-live-m9k2h-post-status-live-pod.log ===== [pod/analytics-report-live-m9k2h-post-status-live-pod/prepare] 2026-08-03T13:48:43.415638583-05:00 2026/08/03 18:48:43 Entrypoint initialization [pod/analytics-report-live-m9k2h-post-status-live-pod/place-scripts] 2026-08-03T13:48:43.750761483-05:00 2026/08/03 18:48:43 Decoded script /tekton/scripts/script-0-4dk4v [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:46.998073421-05:00 Posting commit status to GitHub [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:46.998104281-05:00 Repo: storeminder-ai/storeminder [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:46.998108661-05:00 SHA: d17d6eef5eda6daa55500af31781415a6cb22020 [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:46.998117081-05:00 State: failure (Failed) [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:46.998119901-05:00 Target URL: https://ci-logs.storeminder.ai/storeminder-ai/storeminder/pr-d17d6eef5eda6daa55500af31781415a6cb22020/analytics-report-live-m9k2h/logs.txt [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715650044-05:00 { [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715738253-05:00 "url": "https://api.github.com/repos/storeminder-ai/storeminder/statuses/d17d6eef5eda6daa55500af31781415a6cb22020", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715743993-05:00 "avatar_url": "https://avatars.githubusercontent.com/u/702924?v=4", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715748443-05:00 "id": 51566368928, [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715752553-05:00 "node_id": "SC_kwDOS9o4_c8AAAAMAZhYoA", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715756643-05:00 "state": "failure", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715760513-05:00 "description": "Checks failed", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715764603-05:00 "target_url": "https://ci-logs.storeminder.ai/storeminder-ai/storeminder/pr-d17d6eef5eda6daa55500af31781415a6cb22020/analytics-report-live-m9k2h/logs.txt", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715768613-05:00 "context": "tekton/report-build-live", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715772483-05:00 "created_at": "2026-08-03T18:48:47Z", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715776293-05:00 "updated_at": "2026-08-03T18:48:47Z", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715780183-05:00 "creator": { [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715784083-05:00 "login": "steveblackmon", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715790023-05:00 "id": 702924, [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715794503-05:00 "node_id": "MDQ6VXNlcjcwMjkyNA==", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715798433-05:00 "avatar_url": "https://avatars.githubusercontent.com/u/702924?v=4", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715802313-05:00 "gravatar_id": "", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715806273-05:00 "url": "https://api.github.com/users/steveblackmon", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715810053-05:00 "html_url": "https://github.com/steveblackmon", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715814033-05:00 "followers_url": "https://api.github.com/users/steveblackmon/followers", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715818953-05:00 "following_url": "https://api.github.com/users/steveblackmon/following{/other_user}", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715822893-05:00 "gists_url": "https://api.github.com/users/steveblackmon/gists{/gist_id}", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715826853-05:00 "starred_url": "https://api.github.com/users/steveblackmon/starred{/owner}{/repo}", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715830833-05:00 "subscriptions_url": "https://api.github.com/users/steveblackmon/subscriptions", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715834703-05:00 "organizations_url": "https://api.github.com/users/steveblackmon/orgs", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715838603-05:00 "repos_url": "https://api.github.com/users/steveblackmon/repos", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715842593-05:00 "events_url": "https://api.github.com/users/steveblackmon/events{/privacy}", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715846753-05:00 "received_events_url": "https://api.github.com/users/steveblackmon/received_events", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715850873-05:00 "type": "User", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715854783-05:00 "user_view_type": "public", [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715858683-05:00 "site_admin": false [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715862713-05:00 } [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.715866693-05:00 } [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.719918275-05:00 [pod/analytics-report-live-m9k2h-post-status-live-pod/step-post-status] 2026-08-03T13:48:47.719965165-05:00 Status posted successfully ===== analytics-report-live-m9k2h-reclaim-workspace-pod.log ===== [pod/analytics-report-live-m9k2h-reclaim-workspace-pod/prepare] 2026-08-03T13:48:47.056851868-05:00 2026/08/03 18:48:47 Entrypoint initialization [pod/analytics-report-live-m9k2h-reclaim-workspace-pod/place-scripts] 2026-08-03T13:48:47.850270300-05:00 2026/08/03 18:48:47 Decoded script /tekton/scripts/script-0-ghzkh Error from server (BadRequest): container "step-delete-run-pvcs" in pod "analytics-report-live-m9k2h-reclaim-workspace-pod" is waiting to start: PodInitializing