@bitmagic/cli 0.1.52-dev.10 → 0.1.52-dev.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +44 -8
  2. package/dist/cli.d.ts +8 -0
  3. package/dist/commands/judge.d.ts +5 -0
  4. package/dist/commands/judge.js +28 -7
  5. package/dist/commands/judge.js.map +1 -1
  6. package/dist/commands/publish.d.ts +6 -1
  7. package/dist/commands/publish.js +29 -15
  8. package/dist/commands/publish.js.map +1 -1
  9. package/dist/commands/verify.d.ts +4 -0
  10. package/dist/commands/verify.js +94 -51
  11. package/dist/commands/verify.js.map +1 -1
  12. package/dist/judge/record.d.ts +3 -0
  13. package/dist/judge/record.js +3 -0
  14. package/dist/judge/record.js.map +1 -1
  15. package/dist/project/platform-declaration.d.ts +51 -0
  16. package/dist/project/platform-declaration.js +81 -0
  17. package/dist/project/platform-declaration.js.map +1 -0
  18. package/dist/publish/platform.d.ts +4 -8
  19. package/dist/publish/platform.js +19 -53
  20. package/dist/publish/platform.js.map +1 -1
  21. package/dist/scaffold/project-files.js +19 -5
  22. package/dist/scaffold/project-files.js.map +1 -1
  23. package/dist/verify/artifacts.d.ts +19 -0
  24. package/dist/verify/artifacts.js +34 -0
  25. package/dist/verify/artifacts.js.map +1 -0
  26. package/dist/verify/browser.d.ts +10 -0
  27. package/dist/verify/browser.js +79 -9
  28. package/dist/verify/browser.js.map +1 -1
  29. package/dist/verify/classify.d.ts +37 -1
  30. package/dist/verify/classify.js +66 -2
  31. package/dist/verify/classify.js.map +1 -1
  32. package/dist/verify/device.d.ts +43 -0
  33. package/dist/verify/device.js +59 -0
  34. package/dist/verify/device.js.map +1 -0
  35. package/dist/verify/iterate.d.ts +21 -2
  36. package/dist/verify/iterate.js +43 -36
  37. package/dist/verify/iterate.js.map +1 -1
  38. package/dist/verify/mobile-parity.d.ts +42 -0
  39. package/dist/verify/mobile-parity.js +84 -0
  40. package/dist/verify/mobile-parity.js.map +1 -0
  41. package/dist/verify/platform.d.ts +47 -0
  42. package/dist/verify/platform.js +89 -0
  43. package/dist/verify/platform.js.map +1 -0
  44. package/dist/verify/result.d.ts +90 -6
  45. package/dist/verify/result.js +89 -10
  46. package/dist/verify/result.js.map +1 -1
  47. package/dist/verify/url.d.ts +9 -1
  48. package/dist/verify/url.js +10 -2
  49. package/dist/verify/url.js.map +1 -1
  50. package/package.json +4 -4
package/README.md CHANGED
@@ -186,7 +186,7 @@ browser reloads itself on every change and the assets panel shows each generatio
186
186
  | `bitmagic check` | Typecheck (`tsc --noEmit`) against the vendored engine. Fast; does not prove the game runs. |
187
187
  | `bitmagic dev [--port <port>] [--editor-port <port>] [--no-open]` | Build, then serve everything and keep it running: `tsc --watch`, `vite` on 3010, and a **Game / Editor** view on 3011 that reloads itself when the project changes. Opens the view in your browser; `--no-open` (or `BITMAGIC_NO_OPEN=1`) skips that. The one command to leave open. See **The dev view** below. |
188
188
  | `bitmagic reload [--port <port>]` | Tell a running `bitmagic dev` to reload the browser now. For agents: run it when you finish a round of edits. Exits 0 and does nothing when no dev server is running. |
189
- | `bitmagic verify [--timeout <ms>] [--renderer webgpu\|webgl] [--fast] [--watch]` | Build, boot the game in a headless browser, click the engine's Play button like a player would, and report what broke. A game without the button passes as long as gameplay starts by itself (auto-starting genres, custom start UIs); a run where gameplay never starts fails. The settle is adaptive: the run ends as soon as the live engine proves stable gameplay (state, rendered frames, no fresh errors, player standing), with `--timeout` as the cap. The verdict includes live engine state — actual GPU backend, fps, player position, physics body count, gameplay events (see **Gameplay events** below) — recorded in `result.json`. `--renderer` pins the pipeline (default `webgpu`, what players run; a silent WebGPU→WebGL2 fallback **fails** the run, and `--renderer webgl` is the deliberate escape hatch). A run failing on a lost WebGL context retries once on software rendering automatically. `--fast` skips the screenshot pipeline (then there is no thumbnail candidate from this run). `--watch` keeps everything warm — incremental `tsc --watch`, one vite, one browser — and re-verifies on file change in seconds; `--fast` is the watch default (`--no-fast` restores the screenshot). Writes the artifacts the publish gate reads (see below). |
189
+ | `bitmagic verify [--timeout <ms>] [--renderer webgpu\|webgl] [--platform desktop\|mobile\|both] [--fast] [--watch]` | Build, boot the game in a headless browser, press the engine's Play button like a player would, and report what broke. A game without the button passes as long as gameplay starts by itself (auto-starting genres, custom start UIs); a run where gameplay never starts fails. The settle is adaptive: the run ends as soon as the live engine proves stable gameplay (state, rendered frames, no fresh errors, player standing), with `--timeout` as the cap. The verdict includes live engine state — actual GPU backend, fps, player position, physics body count, gameplay events (see **Gameplay events** below) — recorded in `result.json`. `--renderer` pins the pipeline (default `webgpu`, what players run; a silent WebGPU→WebGL2 fallback **fails** the run, and `--renderer webgl` is the deliberate escape hatch). A run failing on a lost WebGL context retries once on software rendering automatically. `--fast` skips the screenshot pipeline (then there is no thumbnail candidate from this run). `--watch` keeps everything warm — incremental `tsc --watch`, one vite, one browser — and re-verifies on file change in seconds; `--fast` is the watch default (`--no-fast` restores the screenshot). `--platform` picks what the run emulates — see **Verifying the mobile path** below. Every run also reports the engine's mobile-parity check: a desktop action with no touch button is a warning, and a **failure** when `game.json` declares `primaryPlatform: "mobile"`. Writes the artifacts the publish gate reads (see below). |
190
190
  | `bitmagic build` | Bundle the game into one self-contained `.bitmagic/build/index.html`. Rarely needs to be run by hand — `publish` builds automatically when the project changed. |
191
191
  | `bitmagic publish [--visibility public\|private] [--name <name>] [--description <desc>] [--force]` | Verify-gate, build if needed, and upload straight to GCS. **Private unless `--visibility public` is passed.** |
192
192
  | `bitmagic upgrade [--engine <version>] [--force]` | Refresh vendored platform files and the CLI's own skills to the currently published engine. Refuses a dirty git tree unless `--force`. Also records the project's `environment` in `bitmagic.json` if it has none yet — the engine it just vendored came from that api-server — and says so when it does. |
@@ -195,7 +195,7 @@ browser reloads itself on every change and the assets panel shows each generatio
195
195
  | `bitmagic assets list` | The assets in `world.json`: id, name, type, size, placed instances, and total references. Local, no network. |
196
196
  | `bitmagic assets remove <assetId> [--force]` | Remove an asset from `world.json` (the uploaded file stays in storage). Refuses while anything in `world.json` still references it; `--force` removes the asset and its placed instances together. |
197
197
  | `bitmagic cover [--prompt "..."] [--force] [--no-start-screen]` | Generate the game's cover art from `GAME-DESIGN.md`: sets the start screen, saves `.bitmagic/cover.webp`, becomes the publish thumbnail. Costs sparks. |
198
- | `bitmagic judge [--genre <name>] [--min-score <1-10>]` | Grade the screenshot `bitmagic verify` captured against a quality rubric built from `GAME-DESIGN.md` (plus an optional genre hint) with a vision model, and print a scorecard: four dimension scores and at most three actionable findings, also written to `.bitmagic/judge.json`. Informs rather than gates — exits 0 whatever the score, unless `--min-score` sets a bar (exit 4 below it). Warns when the project changed since the screenshot. Costs sparks (one small model call). |
198
+ | `bitmagic judge [--genre <name>] [--platform desktop\|mobile] [--min-score <1-10>]` | Grade the screenshot `bitmagic verify` captured against a quality rubric built from `GAME-DESIGN.md` (plus an optional genre hint) with a vision model, and print a scorecard: four dimension scores and at most three actionable findings, also written to `.bitmagic/judge.json`. Informs rather than gates — exits 0 whatever the score, unless `--min-score` sets a bar (exit 4 below it). `--platform` picks which frame to grade; with no flag it grades the mobile one when the game is mobile-primary and `screenshot.mobile.png` exists, and the mobile rubric folds touch-HUD legibility, thumb reach and phone framing into the existing `readability` and `polish` dimensions rather than adding a fifth score. Warns when the project changed since the screenshot. Costs sparks (one small model call). |
199
199
  | `bitmagic forge --prompt "..." [--city\|--dungeon\|--platformer\|--freeform] [--name <name>] [--resume <jobId>]` | Design and bake a whole playable level into `world.json`. Costs sparks, and takes many minutes — the bake alone can take twenty. `--resume <jobId>` picks a failed run back up from the last step that finished, rather than redoing the whole thing. |
200
200
  | `bitmagic levels <list\|add\|rename\|set-start\|remove> ...` | Manage the levels `forge` creates: which one boots, their names, registering a bake you already have, deleting one. Local, no network, no sparks. See **Managing levels** below. |
201
201
 
@@ -321,10 +321,12 @@ my-game/
321
321
  publish/
322
322
  source.zip # the source archive each publish uploads (see Publishing)
323
323
  verify/
324
- result.json # bitmagic verify's verdict — ok, failures, warnings, fingerprint, at, renderer, settle, snapshot
324
+ result.json # bitmagic verify's verdict — ok, failures, warnings, fingerprint, at, platform, renderer, settle, snapshot, mobileParity (and platforms[] after a --platform both run)
325
325
  screenshot.png # the publish thumbnail when there is no cover art (not written by --fast runs)
326
+ screenshot.mobile.png # the same for a --platform mobile run
326
327
  console.log # captured browser console output
327
- console.retry.log # the software-GL retry's console, when a lost context forced one
328
+ console.mobile.log # the mobile run's console, kept separate so a --platform both run keeps both
329
+ console.retry.log # the software-GL retry's console, when a lost context forced one
328
330
  ```
329
331
 
330
332
  ### Gameplay events
@@ -338,6 +340,38 @@ spontaneous events are judged): the player dying 3+ times in the first 10 second
338
340
  and the match ending within 5 seconds of starting. A vendored engine too old to know
339
341
  `?eventlog=1` yields `events: null` and no output — run `bitmagic upgrade` to get the session.
340
342
 
343
+ ### Verifying the mobile path
344
+
345
+ Most of what the engine does differently on a phone is decided by one branch — the touch
346
+ controls, a pixel-ratio clamp, a lower level-detail tier, a lighter light warmup, postFX and SSR
347
+ off, a rescaled HUD, fullscreen on start. `--platform mobile` runs that branch for real:
348
+ Playwright emulates an iPhone 14 (a phone viewport, touch input, device pixel ratio 3), the game
349
+ boots with the engine's own `?platform=mobile` override, and Play is **tapped** rather than
350
+ clicked. That is more than the web Creator's Mobile tab can do — it letterboxes an iframe and
351
+ moves a mouse pointer around, which never reaches the branch at all.
352
+
353
+ With no flag, the platform comes from the project: `mobile` when `src/work/game.json` declares
354
+ `primaryPlatform: "mobile"`, `desktop` otherwise. `--platform both` runs one after the other and
355
+ passes only if both do. A game whose `world.json` sets `worldProfileData.mobileOrientation:
356
+ "landscape"` is verified on its side.
357
+
358
+ The mobile run writes `screenshot.mobile.png`, which `bitmagic judge` grades by default for a
359
+ mobile-primary game and `bitmagic publish` uses as the thumbnail when there is no cover art.
360
+
361
+ **The parity gate.** The engine already checks, at every game start, whether every desktop key
362
+ has a touch button to match — and logs the gaps. `bitmagic verify` now reads that, on desktop
363
+ runs too, and names both the key and the system that registered it:
364
+
365
+ ```
366
+ warning: These actions have no touch button, so phone players cannot reach them: KeyF(CombatSystem).
367
+ ```
368
+
369
+ It is a **failure** rather than a warning when `game.json` says `primaryPlatform: "mobile"`: on a
370
+ game built for phones, an action a phone cannot reach is not a portability nicety. The fix is to
371
+ bind both sides in one call — `playerController.registerCustomAction({ action, desktop: { keys:
372
+ ['KeyF'] }, mobile: { label: 'ATTACK', behavior: 'tap' } })` — never a raw `registerKeyHandler`.
373
+ The gaps are also in `result.json` as `mobileParity`.
374
+
341
375
  ## Cover art
342
376
 
343
377
  `bitmagic cover` generates the game's cover from `GAME-DESIGN.md` — the same artwork the web
@@ -702,8 +736,8 @@ publicly again.
702
736
 
703
737
  `--force` overrides a **stale or failed** verify verdict. It does **not** override a missing
704
738
  verify record — a project with no cover art has only the verify screenshot to publish a thumbnail
705
- from, so `bitmagic verify` must have produced at least one `.bitmagic/verify/screenshot.png`, ever,
706
- before `--force` has anything to work with.
739
+ from, so `bitmagic verify` must have produced at least one screenshot — `screenshot.png` or
740
+ `screenshot.mobile.png` — ever, before `--force` has anything to work with.
707
741
 
708
742
  `--name` and `--description` apply to that one publish call only. They are never written back to
709
743
  `src/work/game.json`, so pass them again on every future `bitmagic publish` if you want them to
@@ -725,8 +759,10 @@ elsewhere (an admin edit, say) is replaced by your next publish, and removing `m
725
759
  from `world.json` clears the stored lock. A project whose `game.json` declares no
726
760
  `primaryPlatform` at all leaves the stored value alone rather than forcing it to `desktop`.
727
761
 
728
- Only the catalogue entry is at stake here the game itself is playable from a phone either way.
729
- Making it *good* on a phone is code, and the scaffolded `AGENTS.md` tells your agent how: bind every
762
+ `primaryPlatform` is not only a catalogue entry. It also decides what `bitmagic verify` boots and
763
+ `bitmagic judge` grades by default, and it turns the mobile-parity gap from a warning into a
764
+ failure — see **Verifying the mobile path**. The game itself is playable from a phone either way;
765
+ making it *good* on a phone is code, and the scaffolded `AGENTS.md` tells your agent how: bind every
730
766
  action with `registerCustomAction`/`declareMobileActions` so each desktop key gets a touch button,
731
767
  and never with a raw `keydown` listener.
732
768
 
package/dist/cli.d.ts CHANGED
@@ -211,6 +211,10 @@ declare const rawCommands: {
211
211
  readonly type: "string";
212
212
  readonly description: "Renderer to boot the game with: webgpu (default, what players run) or webgl.";
213
213
  };
214
+ readonly platform: {
215
+ readonly type: "string";
216
+ readonly description: string;
217
+ };
214
218
  readonly fast: {
215
219
  readonly type: "boolean";
216
220
  readonly description: string;
@@ -260,6 +264,10 @@ declare const rawCommands: {
260
264
  readonly type: "string";
261
265
  readonly description: "Genre hint for the rubric: platformer, racing, shooter, combat, driving, tower-defense.";
262
266
  };
267
+ readonly platform: {
268
+ readonly type: "string";
269
+ readonly description: string;
270
+ };
263
271
  readonly 'min-score': {
264
272
  readonly type: "string";
265
273
  readonly description: "Fail (exit 4) when the overall score is below this 1-10 bar. Without it the judge informs and exits 0.";
@@ -8,6 +8,7 @@ import { type CommandRunDeps } from './run-deps.js';
8
8
  export declare const EXIT_BELOW_MIN_SCORE = 4;
9
9
  export interface JudgeArgs {
10
10
  genre?: string;
11
+ platform?: string;
11
12
  'min-score'?: string;
12
13
  json?: boolean;
13
14
  }
@@ -25,6 +26,10 @@ export declare const judgeCommand: import("citty").CommandDef<{
25
26
  readonly type: "string";
26
27
  readonly description: "Genre hint for the rubric: platformer, racing, shooter, combat, driving, tower-defense.";
27
28
  };
29
+ readonly platform: {
30
+ readonly type: "string";
31
+ readonly description: string;
32
+ };
28
33
  readonly 'min-score': {
29
34
  readonly type: "string";
30
35
  readonly description: "Fail (exit 4) when the overall score is below this 1-10 bar. Without it the judge informs and exits 0.";
@@ -27,6 +27,9 @@ import { resolveEnvironmentForCommand, resolveAuth0ClientId } from '../config/en
27
27
  import { getAccessToken } from '../auth/session.js';
28
28
  import { computeFingerprint } from '../publish/fingerprint.js';
29
29
  import { readVerifyRecord } from '../verify/result.js';
30
+ import { verifyArtifactPaths } from '../verify/artifacts.js';
31
+ import { parseJudgePlatformArg, resolveJudgePlatform } from '../verify/platform.js';
32
+ import { readPlatformDeclaration } from '../project/platform-declaration.js';
30
33
  import { requestJudge } from '../judge/stream.js';
31
34
  import { buildSceneFacts, buildVerifyContext } from '../judge/facts.js';
32
35
  import { judgeRecordPath, writeJudgeRecord } from '../judge/record.js';
@@ -54,9 +57,9 @@ function parseMinScoreArg(raw) {
54
57
  }
55
58
  return value;
56
59
  }
57
- function readConsoleTail(artifactDir) {
60
+ function readConsoleTail(consolePath) {
58
61
  try {
59
- const raw = fs.readFileSync(path.join(artifactDir, 'console.log'), 'utf-8');
62
+ const raw = fs.readFileSync(consolePath, 'utf-8');
60
63
  return raw.split('\n').slice(-CONSOLE_TAIL_LINES).join('\n');
61
64
  }
62
65
  catch {
@@ -116,14 +119,20 @@ export async function runJudge(args, deps = defaultDeps(args.json === true)) {
116
119
  const minScore = parseMinScoreArg(args['min-score']);
117
120
  const genre = args.genre?.trim() || undefined;
118
121
  const artifactDir = verifyArtifactDir(root);
119
- const screenshotFile = path.join(artifactDir, 'screenshot.png');
122
+ const declaration = readPlatformDeclaration(root);
123
+ const platform = resolveJudgePlatform(parseJudgePlatformArg(args.platform), declaration, fs.existsSync(verifyArtifactPaths(artifactDir, 'mobile').screenshotPath));
124
+ const paths = verifyArtifactPaths(artifactDir, platform);
125
+ const screenshotFile = paths.screenshotPath;
120
126
  let screenshot;
121
127
  try {
122
128
  screenshot = fs.readFileSync(screenshotFile);
123
129
  }
124
130
  catch {
131
+ // Name the command that produces THIS frame: telling someone whose phone game has no mobile
132
+ // screenshot to "run bitmagic verify" is advice that produces the wrong file.
133
+ const verifyCommand = platform === 'mobile' ? 'bitmagic verify --platform mobile' : 'bitmagic verify';
125
134
  throw new CliError(`No verify screenshot at ${screenshotFile}. The judge grades the frame \`bitmagic verify\` ` +
126
- 'captures, so run `bitmagic verify` first — without --fast, which skips the screenshot.');
135
+ `captures, so run \`${verifyCommand}\` first — without --fast, which skips the screenshot.`);
127
136
  }
128
137
  // Staleness is a warning, not a refusal: judging yesterday's frame is
129
138
  // sometimes exactly what was asked for, but it must never pass silently as
@@ -138,9 +147,10 @@ export async function runJudge(args, deps = defaultDeps(args.json === true)) {
138
147
  const rubric = buildJudgeRubric({
139
148
  designText: readDesignText(root),
140
149
  genre,
150
+ platform,
141
151
  sceneFacts: readSceneFacts(root),
142
152
  });
143
- const verifyContext = buildVerifyContext(verifyRecord, readConsoleTail(artifactDir));
153
+ const verifyContext = buildVerifyContext(verifyRecord, readConsoleTail(paths.consolePath));
144
154
  const environment = resolveEnvironmentForCommand({ cwd: root, baseDir: deps.baseDir });
145
155
  const clientId = resolveAuth0ClientId(environment);
146
156
  const token = await getAccessToken(environment, clientId, { fetch: deps.fetch, sleep: deps.sleep, now: deps.now }, deps.baseDir);
@@ -150,8 +160,11 @@ export async function runJudge(args, deps = defaultDeps(args.json === true)) {
150
160
  ...(verifyContext !== null ? { verifyContext } : {}),
151
161
  images: [{ dataBase64: screenshot.toString('base64'), mediaType: 'image/png' }],
152
162
  };
153
- await withJobRecord({ root, kind: 'judge', label: genre ? `Quality judge (${genre})` : 'Quality judge', log: deps.log }, async (log) => {
154
- log(`Judging game ${context.metadata.gameId} from ${path.relative(root, screenshotFile) || screenshotFile}...`);
163
+ // The label names the frame, so `.bitmagic/jobs/` shows WHICH screen was graded two judges
164
+ // of the same game on different platforms are otherwise indistinguishable in that list.
165
+ const label = `Quality judge (${[platform, genre].filter(Boolean).join(', ')})`;
166
+ await withJobRecord({ root, kind: 'judge', label, log: deps.log }, async (log) => {
167
+ log(`Judging the ${platform} frame of game ${context.metadata.gameId} from ${path.relative(root, screenshotFile) || screenshotFile}...`);
155
168
  const outcome = await deps.request(environment, token, body, {
156
169
  fetch: deps.fetch,
157
170
  onProgress: log,
@@ -165,6 +178,7 @@ export async function runJudge(args, deps = defaultDeps(args.json === true)) {
165
178
  at: new Date().toISOString(),
166
179
  model: outcome.model,
167
180
  screenshotPath: path.relative(root, screenshotFile),
181
+ platform,
168
182
  ...(genre !== undefined ? { genre } : {}),
169
183
  });
170
184
  renderScorecard(outcome.scorecard, outcome.model, outcome.sparks, log);
@@ -178,6 +192,7 @@ export async function runJudge(args, deps = defaultDeps(args.json === true)) {
178
192
  }
179
193
  deps.result({
180
194
  ok: true,
195
+ platform,
181
196
  scorecard: outcome.scorecard,
182
197
  judgePath: judgeRecordPath(root),
183
198
  fingerprintStale,
@@ -196,6 +211,11 @@ export const judgeCommand = defineCommand({
196
211
  type: 'string',
197
212
  description: 'Genre hint for the rubric: platformer, racing, shooter, combat, driving, tower-defense.',
198
213
  },
214
+ platform: {
215
+ type: 'string',
216
+ description: 'Which frame to grade: desktop or mobile. Defaults to mobile when '
217
+ + 'src/work/game.json declares primaryPlatform "mobile" and a mobile screenshot exists.',
218
+ },
199
219
  'min-score': {
200
220
  type: 'string',
201
221
  description: `Fail (exit ${EXIT_BELOW_MIN_SCORE}) when the overall score is below this 1-10 bar. Without it the judge informs and exits 0.`,
@@ -208,6 +228,7 @@ export const judgeCommand = defineCommand({
208
228
  async run({ args }) {
209
229
  await runJudge({
210
230
  genre: args.genre,
231
+ platform: args.platform,
211
232
  'min-score': args['min-score'],
212
233
  json: args.json,
213
234
  });
@@ -1 +1 @@
1
- {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/commands/judge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/commands/judge.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,12 @@ interface ThumbnailSource {
52
52
  * screenshot remains the fallback rather than being retired, because `bitmagic cover` costs sparks
53
53
  * and is optional — a creator who never runs it must still be able to publish.
54
54
  *
55
- * Returns null when neither exists, which the caller turns into exit 3.
55
+ * Between the two screenshots, the one matching the game's OWN platform wins: `bitmagic verify`
56
+ * boots a mobile-primary game as a phone by default and then writes only `screenshot.mobile.png`,
57
+ * so preferring the desktop file would both pick a picture the game is not about and, on a
58
+ * mobile-only project, find nothing at all.
59
+ *
60
+ * Returns null when none of the three exists, which the caller turns into exit 3.
56
61
  */
57
62
  export declare function resolveThumbnailSource(root: string, readFile?: (file: string) => Buffer): ThumbnailSource | null;
58
63
  /**
@@ -44,6 +44,7 @@ import { buildSourceArchive } from '../publish/source-zip.js';
44
44
  import { readVerifyRecord } from '../verify/result.js';
45
45
  import { readFaviconOverride } from '../publish/favicon.js';
46
46
  import { readPlatformIndicators } from '../publish/platform.js';
47
+ import { allVerifyScreenshotPaths, verifyArtifactPaths } from '../verify/artifacts.js';
47
48
  import { checkVerifyGate, injectMetaBlock } from '../publish/meta-block.js';
48
49
  import { runBuild as runBuildImpl, readBuildManifest as readBuildManifestImpl, buildBundlePaths, } from '../publish/bundle.js';
49
50
  import { beginPublish, completePublish, putBundle, putSourceArchive, requestThumbnailUploadUrl, putThumbnail, } from '../publish/client.js';
@@ -83,7 +84,12 @@ function defaultDeps() {
83
84
  * screenshot remains the fallback rather than being retired, because `bitmagic cover` costs sparks
84
85
  * and is optional — a creator who never runs it must still be able to publish.
85
86
  *
86
- * Returns null when neither exists, which the caller turns into exit 3.
87
+ * Between the two screenshots, the one matching the game's OWN platform wins: `bitmagic verify`
88
+ * boots a mobile-primary game as a phone by default and then writes only `screenshot.mobile.png`,
89
+ * so preferring the desktop file would both pick a picture the game is not about and, on a
90
+ * mobile-only project, find nothing at all.
91
+ *
92
+ * Returns null when none of the three exists, which the caller turns into exit 3.
87
93
  */
88
94
  export function resolveThumbnailSource(root, readFile = (file) => fs.readFileSync(file)) {
89
95
  try {
@@ -98,18 +104,25 @@ export function resolveThumbnailSource(root, readFile = (file) => fs.readFileSyn
98
104
  catch {
99
105
  // No cover — fall through to the verify screenshot the gate above already guaranteed a run for.
100
106
  }
101
- try {
102
- return {
103
- bytes: readFile(path.join(verifyArtifactDir(root), 'screenshot.png')),
104
- filename: 'thumbnail.png',
105
- contentType: 'image/png',
106
- label: 'verify screenshot',
107
- generated: false,
108
- };
109
- }
110
- catch {
111
- return null;
107
+ const mobileFirst = readPlatformIndicators(root).fields.primaryPlatform === 'mobile';
108
+ const candidates = mobileFirst
109
+ ? [{ platform: 'mobile', label: 'verify screenshot (mobile)' }, { platform: 'desktop', label: 'verify screenshot' }]
110
+ : [{ platform: 'desktop', label: 'verify screenshot' }, { platform: 'mobile', label: 'verify screenshot (mobile)' }];
111
+ for (const candidate of candidates) {
112
+ try {
113
+ return {
114
+ bytes: readFile(verifyArtifactPaths(verifyArtifactDir(root), candidate.platform).screenshotPath),
115
+ filename: 'thumbnail.png',
116
+ contentType: 'image/png',
117
+ label: candidate.label,
118
+ generated: false,
119
+ };
120
+ }
121
+ catch {
122
+ // Not this one — try the other platform's frame before giving up.
123
+ }
112
124
  }
125
+ return null;
113
126
  }
114
127
  /**
115
128
  * Upload this publish's thumbnail and return its public URL, alongside which of the two images it
@@ -122,9 +135,10 @@ async function uploadThumbnail(context, environment, token, apiDeps, log) {
122
135
  // Exit 3, not 6: the record passed the verify gate above, but there is nothing to publish a
123
136
  // thumbnail FROM — the same remedy as every other exit-3 case ("run bitmagic verify"), not an
124
137
  // upload failure.
125
- throw new CliError(`No thumbnail to publish: neither ${coverImagePath(context.root)} nor ` +
126
- `${path.join(verifyArtifactDir(context.root), 'screenshot.png')} exists. ` +
127
- 'Run `bitmagic verify` before publishing (or `bitmagic cover` for generated artwork).', 3);
138
+ throw new CliError('No thumbnail to publish: none of ' +
139
+ [coverImagePath(context.root), ...allVerifyScreenshotPaths(verifyArtifactDir(context.root))].join(', ') +
140
+ ' exists. Run `bitmagic verify` before publishing, without `--fast` (or `bitmagic cover` ' +
141
+ 'for generated artwork).', 3);
128
142
  }
129
143
  log(`Thumbnail: ${source.label}.`);
130
144
  if (!source.generated) {
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ export declare const verifyCommand: import("citty").CommandDef<{
7
7
  readonly type: "string";
8
8
  readonly description: "Renderer to boot the game with: webgpu (default, what players run) or webgl.";
9
9
  };
10
+ readonly platform: {
11
+ readonly type: "string";
12
+ readonly description: string;
13
+ };
10
14
  readonly fast: {
11
15
  readonly type: "boolean";
12
16
  readonly description: string;