Skip to content

Conversation

@jordanverasamy
Copy link
Contributor

@jordanverasamy jordanverasamy commented Nov 25, 2025

WHY are these changes introduced?

Part 2/2 addressing https://github.com/shop/issues-api-foundations/issues/1142.

WHAT is this pull request doing?

Introduces new behaviour to shopify app bulk status to list all bulk operations from the last 7 days if --id is not provided.

How to test your changes?

Try running:

pnpm shopify app bulk status --path=<PATH_TO_YOUR_TEST_APP>

You should see either an info banner telling you there are no operations found, or a table displaying info about your bulk operations if there were some:

image image

(Note that we're in the midst of refactoring some access token issues on the backend, so you might not actually be able to see bulk operations created in the past because they were created with a different access token. This is unrelated to this PR and will be fixed soon. See https://docs.google.com/document/d/11oPgFRyJDYkHwv7zPVPGErG3vfDuGkhJKmICgTSYCcc/edit?tab=t.0)

@jordanverasamy jordanverasamy changed the title If --id is not provided to shopify app bulk status, show all bulk operations If --id is not provided to shopify app bulk status, show all bulk operations Nov 25, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 25, 2025

Coverage report

St.
Category Percentage Covered / Total
🟡 Statements
79.17% (-0.06% 🔻)
13845/17488
🟡 Branches
73.13% (+0.02% 🔼)
6758/9241
🟡 Functions
79.33% (-0.04% 🔻)
3551/4476
🟡 Lines
79.53% (-0.05% 🔻)
13081/16447
Show new covered files 🐣
St.
File Statements Branches Functions Lines
🟢
... / admin-as-app.ts
100% 100% 100% 100%
🟢
... / bulk-operation-run-mutation.ts
100% 100% 100% 100%
🟢
... / bulk-operation-run-query.ts
100% 100% 100% 100%
🟢
... / get-bulk-operation-by-id.ts
100% 100% 100% 100%
🟢
... / list-bulk-operations.ts
100% 100% 100% 100%
🟢
... / staged-uploads-create.ts
100% 100% 100% 100%
🔴
... / status.ts
0% 0% 0% 0%
🔴
... / pull.ts
0% 100% 0% 0%
🔴
... / pull.ts
0% 0% 0% 0%
🟢
... / bulk-operation-status.ts
96% 90.63% 100% 100%
🟢
... / download-bulk-operation-results.ts
100% 100% 100% 100%
🟢
... / execute-bulk-operation.ts
91.23% 83.33% 100% 92.59%
🟢
... / format-bulk-operation-status.ts
100% 100% 100% 100%
🟢
... / run-mutation.ts
100% 100% 100% 100%
🟢
... / run-query.ts
100% 100% 100% 100%
🟡
... / stage-file.ts
72.73% 62.5% 83.33% 71.88%
🟢
... / watch-bulk-operation.ts
100% 100% 100% 100%
🔴
... / promiseWithResolvers.ts
33.33% 50% 50% 33.33%
Show files with reduced coverage 🔻
St.
File Statements Branches Functions Lines
🔴
... / execute.ts
0%
0% (-100% 🔻)
0% 0%
🟢
... / extension-instance.ts
84.8% (+0.23% 🔼)
77.6% (-0.91% 🔻)
92.06% (+0.13% 🔼)
85.11% (+0.24% 🔼)
🟡
... / specification.ts
69.09%
75.61% (+2.44% 🔼)
76.47% (-1.31% 🔻)
68.75%
🟢
... / ui_extension.ts
85.38% (-9.44% 🔻)
72.34% (-8.91% 🔻)
84% (-16% 🔻)
88% (-8.46% 🔻)
🟢
... / developer-platform-client.ts
84.62% (-1.5% 🔻)
73.68% (+3.1% 🔼)
81.82% (+1.82% 🔼)
90.63% (-2.71% 🔻)
🟢
... / api.ts
87.07% (-0.43% 🔻)
76.71% (-0.1% 🔻)
100%
86.49% (-0.43% 🔻)
🔴
... / ui.tsx
50.82% (-0.79% 🔻)
42.86% (-5.53% 🔻)
54.55% (+1.42% 🔼)
50% (-0.82% 🔻)
🟢
... / console.ts
81.82% (+15.15% 🔼)
75% (-25% 🔻)
100% (+33.33% 🔼)
81.82% (+15.15% 🔼)
🔴
... / dev.ts
14.29% (+0.95% 🔼)
3.13% (+0.18% 🔼)
50% (-7.14% 🔻)
14.29% (+0.95% 🔼)
🟢
... / init.ts
88% (-0.89% 🔻)
71.43% (+4.76% 🔼)
86.67% (+4.85% 🔼)
88% (-0.89% 🔻)
🟡
... / theme-polling.ts
67.12% (-0.93% 🔻)
68.75% 78.57%
66.67% (-0.98% 🔻)

Test suite run success

3448 tests passing in 1396 suites.

Report generated by 🧪jest coverage report action from be16198

@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 1b17a01 to de15a6b Compare November 26, 2025 18:35
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch 2 times, most recently from 47deba6 to ba766c2 Compare November 26, 2025 18:51
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch 2 times, most recently from 16085c8 to d855b62 Compare November 26, 2025 22:14
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from ba766c2 to 06c54d9 Compare November 26, 2025 22:14
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from d855b62 to 15e649b Compare November 27, 2025 02:09
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 06c54d9 to f23864f Compare November 27, 2025 02:09
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 15e649b to 80235a5 Compare November 27, 2025 02:18
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from f23864f to 49dc53d Compare November 27, 2025 02:18
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 80235a5 to 04cb306 Compare November 27, 2025 02:51
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 49dc53d to 23dbbb9 Compare November 27, 2025 02:51
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 04cb306 to 3faa882 Compare November 27, 2025 02:54
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch 2 times, most recently from 586357c to 168f42f Compare November 27, 2025 03:00
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch 2 times, most recently from 33a2e16 to 3dc60f0 Compare November 27, 2025 03:12
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 168f42f to f6b7dd0 Compare November 27, 2025 03:12
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 3dc60f0 to 1220b22 Compare November 27, 2025 03:14
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from f6b7dd0 to 156dbef Compare November 27, 2025 03:14
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from 1220b22 to 8e4cd3b Compare November 27, 2025 03:37
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 156dbef to 739db4d Compare November 27, 2025 03:37
@jordanverasamy jordanverasamy changed the base branch from jtv/add-status-subcommand to graphite-base/6668 November 27, 2025 16:53
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 739db4d to d924028 Compare November 27, 2025 17:16
@jordanverasamy jordanverasamy changed the base branch from graphite-base/6668 to jtv/add-status-subcommand November 27, 2025 17:16
@jordanverasamy jordanverasamy force-pushed the jtv/add-status-subcommand branch from cc1db6c to bce54f6 Compare November 27, 2025 17:49
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from c542ecf to 3eaa19f Compare November 27, 2025 17:49
@github-actions
Copy link
Contributor

Differences in type declarations

We detected differences in the type declarations generated by Typescript for this branch compared to the baseline ('main' branch). Please, review them to ensure they are backward-compatible. Here are some important things to keep in mind:

  • Some seemingly private modules might be re-exported through public modules.
  • If the branch is behind main you might see odd diffs, rebase main into this branch.

New type declarations

We found no new type declarations in this PR

Existing type declarations

packages/cli-kit/dist/public/common/string.d.ts
@@ -120,4 +120,12 @@ export declare function pascalize(str: string): string;
  * @param delimiter - Delimiter used to split the string into tokens.
  * @returns String with the normalized list of tokens.
  */
-export declare function normalizeDelimitedString(delimitedString?: string, delimiter?: string): string | undefined;
\ No newline at end of file
+export declare function normalizeDelimitedString(delimitedString?: string, delimiter?: string): string | undefined;
+/**
+ * Given two dates, it returns a human-readable string representing the time elapsed between them.
+ *
+ * @param from - Start date.
+ * @param to - End date.
+ * @returns A string like "5 minutes ago" or "2 days ago".
+ */
+export declare function timeAgo(from: Date, to: Date): string;
\ No newline at end of file

Base automatically changed from jtv/add-status-subcommand to main November 27, 2025 18:06
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch 6 times, most recently from a25cc11 to 4907f19 Compare December 1, 2025 22:27
@jordanverasamy jordanverasamy self-assigned this Dec 1, 2025
@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 4907f19 to dfd44d7 Compare December 1, 2025 22:41
@jordanverasamy jordanverasamy marked this pull request as ready for review December 1, 2025 22:41
@jordanverasamy jordanverasamy requested review from a team as code owners December 1, 2025 22:41
@github-actions
Copy link
Contributor

github-actions bot commented Dec 1, 2025

We detected some changes at packages/*/src and there are no updates in the .changeset.
If the changes are user-facing, run pnpm changeset add to track your changes and include them in the next release CHANGELOG.

Caution

DO NOT create changesets for features which you do not wish to be included in the public changelog of the next CLI release.

@gonzaloriestra
Copy link
Contributor

/snapit

@github-actions
Copy link
Contributor

github-actions bot commented Dec 2, 2025

🫰✨ Thanks @gonzaloriestra! Your snapshot has been published to npm.

Test the snapshot by installing your package globally:

npm i -g --@shopify:registry=https://registry.npmjs.org @shopify/[email protected]

Caution

After installing, validate the version by running just shopify in your terminal.
If the versions don't match, you might have multiple global instances installed.
Use which shopify to find out which one you are running and uninstall it.

Copy link
Contributor

@gonzaloriestra gonzaloriestra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! Some suggestions:

  • I'd add a break line before and after the table
  • Instead gid://shopify/BulkOperation/5741750157554, why not showing externally simply the number (5741750157554)? Same for app execute, obviously.
Image

@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 3615084 to 2fa7198 Compare December 2, 2025 19:00
@jordanverasamy
Copy link
Contributor Author

Great feedback, thanks Gonzalo :) I made the description and newline changes.

I kept the IDs as GIDs for now, but logged it as a minor polish item (https://github.com/shop/issues-api-foundations/issues/1149) for Nick to look at and make a decision. Thanks for the thoughtful review as always!

@jordanverasamy jordanverasamy force-pushed the jtv/add-list-support-to-status-subcommand branch from 2fa7198 to be16198 Compare December 2, 2025 19:04
@jordanverasamy jordanverasamy added this pull request to the merge queue Dec 2, 2025
Merged via the queue into main with commit ec61dbe Dec 2, 2025
25 checks passed
@jordanverasamy jordanverasamy deleted the jtv/add-list-support-to-status-subcommand branch December 2, 2025 19:21
@nickwesselman
Copy link
Contributor

nickwesselman commented Dec 3, 2025

  • Instead gid://shopify/BulkOperation/5741750157554, why not showing externally simply the number (5741750157554)? Same for app execute, obviously.

I think to save room this is OK in the table, but only if the status subcommand will take a numeric id as well. However since our external APIs use the GID.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants