@dreamboard-games/cli 0.1.30-alpha.19 → 0.1.30-alpha.20
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.
- package/README.md +22 -102
- package/dist/agent-verifier/agent-workspace-verifier.mjs +1508 -55
- package/dist/agent-verifier/agent-workspace-verifier.mjs.map +1 -1
- package/dist/agent-verifier/{chunk-V7ABTZXW.mjs → chunk-4I2WWAPK.mjs} +26 -7
- package/dist/agent-verifier/chunk-4I2WWAPK.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-7LFDFXLS.mjs → chunk-BWBN2TDJ.mjs} +338 -133
- package/dist/agent-verifier/chunk-BWBN2TDJ.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-AWZ4M4NS.mjs → chunk-DQUYBIGQ.mjs} +5 -6
- package/dist/agent-verifier/chunk-DQUYBIGQ.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-H5L4KK4Y.mjs → chunk-GCFGAFYC.mjs} +7 -7
- package/dist/agent-verifier/chunk-GCFGAFYC.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-TAEQKBJB.mjs → chunk-GWRZRWCF.mjs} +1 -1
- package/dist/agent-verifier/chunk-GWRZRWCF.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-6AKXIY37.mjs → chunk-IWB4L2HV.mjs} +3 -3
- package/dist/agent-verifier/chunk-IWB4L2HV.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-334H4LE4.mjs → chunk-KDAQ4CZY.mjs} +3 -3
- package/dist/agent-verifier/{chunk-WSIYUUSD.mjs → chunk-TIDX3YLW.mjs} +2 -2
- package/dist/agent-verifier/{chunk-WSIYUUSD.mjs.map → chunk-TIDX3YLW.mjs.map} +1 -1
- package/dist/agent-verifier/{chunk-UMW24KZI.mjs → chunk-UXGTT25Q.mjs} +3 -3
- package/dist/agent-verifier/{global-config-SXR6X3OZ.mjs → global-config-IXZLY4BS.mjs} +4 -4
- package/dist/agent-verifier/{local-files-DAFIR7SN.mjs → local-files-OF4QFISU.mjs} +4 -4
- package/dist/agent-verifier/{chunk-POBFNXD4.mjs → local-typecheck-DHVLM37Z.mjs} +3 -3
- package/dist/agent-verifier/local-typecheck-DHVLM37Z.mjs.map +1 -0
- package/dist/agent-verifier/{materialize-workspace-PWNT6HQK.mjs → materialize-workspace-VS5RHSBO.mjs} +7 -7
- package/dist/agent-verifier/{chunk-HLHT57AW.mjs → reducer-bundle-preflight-GLUJKTWU.mjs} +13 -10
- package/dist/agent-verifier/reducer-bundle-preflight-GLUJKTWU.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-INIK6LHK.mjs → reducer-contract-preflight-WVQQPW5F.mjs} +6 -5
- package/dist/agent-verifier/reducer-contract-preflight-WVQQPW5F.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-3Y4FRMTK.mjs → reducer-native-test-harness-H6G6RBRY.mjs} +150 -34
- package/dist/agent-verifier/reducer-native-test-harness-H6G6RBRY.mjs.map +1 -0
- package/dist/agent-verifier/{static-scaffold-HXUQLJVN.mjs → static-scaffold-C36KROJA.mjs} +3 -3
- package/dist/agent-verifier/{workspace-dependencies-ZMHPHVQV.mjs → workspace-dependencies-5HEEKZFP.mjs} +4 -2
- package/dist/authoring-compatibility-internal.js +2 -2
- package/dist/{chunk-R6RB4EKH.js → chunk-5PJWUB6W.js} +179 -210
- package/dist/chunk-5PJWUB6W.js.map +1 -0
- package/dist/{chunk-YRSE5DLH.js → chunk-EJGB3IR7.js} +422 -264
- package/dist/chunk-EJGB3IR7.js.map +1 -0
- package/dist/{chunk-FFO2IJL3.js → chunk-EQNBQVIW.js} +1 -1
- package/dist/chunk-EQNBQVIW.js.map +1 -0
- package/dist/{chunk-VWMKJL4A.js → chunk-UI7NWSYA.js} +3 -3
- package/dist/chunk-UI7NWSYA.js.map +1 -0
- package/dist/{global-config-UHGWFJIK.js → global-config-GK2UC2X6.js} +3 -3
- package/dist/index.js +2691 -3953
- package/dist/index.js.map +1 -1
- package/dist/internal.js +4 -4
- package/package.json +1 -1
- package/release/authoring-release-set.json +2 -2
- package/skills/dreamboard/SKILL.md +30 -28
- package/skills/dreamboard/references/building-your-first-game.md +15 -15
- package/skills/dreamboard/references/cli.md +48 -47
- package/skills/dreamboard/references/quickstart.md +16 -13
- package/skills/dreamboard/references/testing.md +10 -10
- package/dist/agent-verifier/chunk-3Y4FRMTK.mjs.map +0 -1
- package/dist/agent-verifier/chunk-5D3OJBDT.mjs +0 -1547
- package/dist/agent-verifier/chunk-5D3OJBDT.mjs.map +0 -1
- package/dist/agent-verifier/chunk-6AKXIY37.mjs.map +0 -1
- package/dist/agent-verifier/chunk-7LFDFXLS.mjs.map +0 -1
- package/dist/agent-verifier/chunk-AWZ4M4NS.mjs.map +0 -1
- package/dist/agent-verifier/chunk-H5L4KK4Y.mjs.map +0 -1
- package/dist/agent-verifier/chunk-HLHT57AW.mjs.map +0 -1
- package/dist/agent-verifier/chunk-INIK6LHK.mjs.map +0 -1
- package/dist/agent-verifier/chunk-LEWM26XR.mjs +0 -618
- package/dist/agent-verifier/chunk-LEWM26XR.mjs.map +0 -1
- package/dist/agent-verifier/chunk-PLXXH5LY.mjs +0 -222
- package/dist/agent-verifier/chunk-PLXXH5LY.mjs.map +0 -1
- package/dist/agent-verifier/chunk-POBFNXD4.mjs.map +0 -1
- package/dist/agent-verifier/chunk-TAEQKBJB.mjs.map +0 -1
- package/dist/agent-verifier/chunk-V7ABTZXW.mjs.map +0 -1
- package/dist/agent-verifier/chunk-ZOR5FTIG.mjs +0 -39
- package/dist/agent-verifier/chunk-ZOR5FTIG.mjs.map +0 -1
- package/dist/agent-verifier/compile-MO2URO5Z.mjs +0 -317
- package/dist/agent-verifier/compile-MO2URO5Z.mjs.map +0 -1
- package/dist/agent-verifier/local-typecheck-3JXL2NMG.mjs +0 -10
- package/dist/agent-verifier/reducer-bundle-preflight-3DSXIELT.mjs +0 -20
- package/dist/agent-verifier/reducer-contract-preflight-FQB7M4PU.mjs +0 -11
- package/dist/agent-verifier/reducer-native-test-harness-X2KQYSCD.mjs +0 -53
- package/dist/agent-verifier/reducer-native-test-harness-X2KQYSCD.mjs.map +0 -1
- package/dist/agent-verifier/static-scaffold-HXUQLJVN.mjs.map +0 -1
- package/dist/agent-verifier/sync-5YM4CSXL.mjs +0 -598
- package/dist/agent-verifier/sync-5YM4CSXL.mjs.map +0 -1
- package/dist/agent-verifier/test-CNNVTFIG.mjs +0 -356
- package/dist/agent-verifier/test-CNNVTFIG.mjs.map +0 -1
- package/dist/agent-verifier/workspace-dependencies-ZMHPHVQV.mjs.map +0 -1
- package/dist/chunk-FFO2IJL3.js.map +0 -1
- package/dist/chunk-R6RB4EKH.js.map +0 -1
- package/dist/chunk-VWMKJL4A.js.map +0 -1
- package/dist/chunk-YRSE5DLH.js.map +0 -1
- package/dist/global-config-UHGWFJIK.js.map +0 -1
- package/skills/dreamboard/scripts/events-extract.mjs +0 -218
- /package/dist/agent-verifier/{chunk-334H4LE4.mjs.map → chunk-KDAQ4CZY.mjs.map} +0 -0
- /package/dist/agent-verifier/{chunk-UMW24KZI.mjs.map → chunk-UXGTT25Q.mjs.map} +0 -0
- /package/dist/agent-verifier/{global-config-SXR6X3OZ.mjs.map → global-config-IXZLY4BS.mjs.map} +0 -0
- /package/dist/agent-verifier/{local-files-DAFIR7SN.mjs.map → local-files-OF4QFISU.mjs.map} +0 -0
- /package/dist/agent-verifier/{materialize-workspace-PWNT6HQK.mjs.map → materialize-workspace-VS5RHSBO.mjs.map} +0 -0
- /package/dist/agent-verifier/{local-typecheck-3JXL2NMG.mjs.map → static-scaffold-C36KROJA.mjs.map} +0 -0
- /package/dist/agent-verifier/{reducer-bundle-preflight-3DSXIELT.mjs.map → workspace-dependencies-5HEEKZFP.mjs.map} +0 -0
- /package/dist/{agent-verifier/reducer-contract-preflight-FQB7M4PU.mjs.map → global-config-GK2UC2X6.js.map} +0 -0
|
@@ -1,317 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
resolveRemoteProject
|
|
4
|
-
} from "./chunk-ZOR5FTIG.mjs";
|
|
5
|
-
import {
|
|
6
|
-
CONFIG_FLAG_ARGS,
|
|
7
|
-
defineCommand,
|
|
8
|
-
findProjectCompiledResultsForRevision,
|
|
9
|
-
parseCompileCommandArgs,
|
|
10
|
-
queueProjectRevisionCompileSdk,
|
|
11
|
-
waitForCompiledResultJobSdk
|
|
12
|
-
} from "./chunk-LEWM26XR.mjs";
|
|
13
|
-
import {
|
|
14
|
-
getProjectAuthoringState,
|
|
15
|
-
getProjectPendingAuthoringSync,
|
|
16
|
-
setLatestCompileAttempt
|
|
17
|
-
} from "./chunk-YE7UAO3T.mjs";
|
|
18
|
-
import {
|
|
19
|
-
runLocalTypecheck
|
|
20
|
-
} from "./chunk-POBFNXD4.mjs";
|
|
21
|
-
import {
|
|
22
|
-
formatCliError
|
|
23
|
-
} from "./chunk-PLXXH5LY.mjs";
|
|
24
|
-
import {
|
|
25
|
-
assertCompilerPortableDependencies,
|
|
26
|
-
assertReleaseEnvironmentPortableDependencies,
|
|
27
|
-
consola,
|
|
28
|
-
resolveProjectContext
|
|
29
|
-
} from "./chunk-5D3OJBDT.mjs";
|
|
30
|
-
import {
|
|
31
|
-
updateProjectState
|
|
32
|
-
} from "./chunk-WSIYUUSD.mjs";
|
|
33
|
-
import "./chunk-AWZ4M4NS.mjs";
|
|
34
|
-
import "./chunk-UMW24KZI.mjs";
|
|
35
|
-
import "./chunk-6AKXIY37.mjs";
|
|
36
|
-
import {
|
|
37
|
-
getLocalDiff
|
|
38
|
-
} from "./chunk-334H4LE4.mjs";
|
|
39
|
-
import "./chunk-TAEQKBJB.mjs";
|
|
40
|
-
import {
|
|
41
|
-
assertCliStaticScaffoldComplete
|
|
42
|
-
} from "./chunk-H5L4KK4Y.mjs";
|
|
43
|
-
import "./chunk-F2DIOJJZ.mjs";
|
|
44
|
-
import "./chunk-RDYXWXXC.mjs";
|
|
45
|
-
import "./chunk-7LFDFXLS.mjs";
|
|
46
|
-
import "./chunk-JZTH3EMV.mjs";
|
|
47
|
-
import "./chunk-TTB7AIHZ.mjs";
|
|
48
|
-
import "./chunk-MYMVXTZT.mjs";
|
|
49
|
-
import "./chunk-OJFZVGEL.mjs";
|
|
50
|
-
import "./chunk-ZEELHSY3.mjs";
|
|
51
|
-
import "./chunk-M7UVBANQ.mjs";
|
|
52
|
-
import "./chunk-H6XDQJ3N.mjs";
|
|
53
|
-
|
|
54
|
-
// src/commands/compile.ts
|
|
55
|
-
function formatDiagnosticsSummary(diagnostics) {
|
|
56
|
-
const firstMessage = diagnostics?.find(
|
|
57
|
-
(diagnostic) => diagnostic.message
|
|
58
|
-
)?.message;
|
|
59
|
-
return firstMessage?.trim() || void 0;
|
|
60
|
-
}
|
|
61
|
-
function formatCompileJobProgressMessage(job) {
|
|
62
|
-
const phase = job.phase ? ` [${job.phase}]` : "";
|
|
63
|
-
const detail = job.message ? ` ${job.message}` : "";
|
|
64
|
-
if (job.status === "PENDING") {
|
|
65
|
-
const queue = typeof job.queuePosition === "number" ? ` (queue ${job.queuePosition + 1})` : "";
|
|
66
|
-
return `Compile queued${queue}${phase}${detail}`.trim();
|
|
67
|
-
}
|
|
68
|
-
if (job.status === "RUNNING") {
|
|
69
|
-
return `Compile running${phase}${detail}`.trim();
|
|
70
|
-
}
|
|
71
|
-
if (job.status === "FAILED") {
|
|
72
|
-
return `Compile failed${phase}${detail}`.trim();
|
|
73
|
-
}
|
|
74
|
-
return `Compile ${job.status.toLowerCase()}${phase}${detail}`.trim();
|
|
75
|
-
}
|
|
76
|
-
function formatFailedCompileJobSummary(job) {
|
|
77
|
-
return formatCompileJobProgressMessage({
|
|
78
|
-
status: "FAILED",
|
|
79
|
-
phase: job.phase,
|
|
80
|
-
message: job.errorMessage ?? job.message ?? void 0
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
function formatFailedCompileJobWithCompiledResultMessage(options) {
|
|
84
|
-
return `${formatFailedCompileJobSummary(options.job)}. The backend created compiled result ${options.compiledResultId}, but the compile job did not complete cleanly. Run 'dreamboard compile' again after fixing the backend/compiler issue.`;
|
|
85
|
-
}
|
|
86
|
-
function formatRemoteCompileCommandError(options) {
|
|
87
|
-
const detail = options.message.trim();
|
|
88
|
-
const hasActionableTerminalContext = /^Compile\s+(failed|completed|cancelled|interrupted)\b/i.test(detail);
|
|
89
|
-
if (options.jobId) {
|
|
90
|
-
if (hasActionableTerminalContext) {
|
|
91
|
-
return `Remote compile job ${options.jobId} could not be completed. ${detail}`;
|
|
92
|
-
}
|
|
93
|
-
return `Remote compile job ${options.jobId} could not be completed. ${detail} Check backend health and try 'dreamboard compile' again.`;
|
|
94
|
-
}
|
|
95
|
-
return `Remote compile could not be started. ${detail} Check backend health and try 'dreamboard compile' again.`;
|
|
96
|
-
}
|
|
97
|
-
async function persistFailedCompileAttempt(options) {
|
|
98
|
-
const nextProjectConfig = setLatestCompileAttempt(options.projectConfig, {
|
|
99
|
-
resultId: void 0,
|
|
100
|
-
jobId: options.jobId,
|
|
101
|
-
revisionDigest: options.revisionDigest,
|
|
102
|
-
authoringStateId: options.authoringStateId ?? options.revisionDigest,
|
|
103
|
-
status: "failed",
|
|
104
|
-
diagnosticsSummary: options.diagnosticsSummary
|
|
105
|
-
});
|
|
106
|
-
await updateProjectState(options.projectRoot, nextProjectConfig);
|
|
107
|
-
}
|
|
108
|
-
var compile_default = defineCommand({
|
|
109
|
-
meta: {
|
|
110
|
-
name: "compile",
|
|
111
|
-
description: "Compile the current remote authoring head"
|
|
112
|
-
},
|
|
113
|
-
args: {
|
|
114
|
-
debug: {
|
|
115
|
-
type: "boolean",
|
|
116
|
-
description: "Print additional compile progress context",
|
|
117
|
-
default: false
|
|
118
|
-
},
|
|
119
|
-
"skip-local-check": {
|
|
120
|
-
type: "boolean",
|
|
121
|
-
description: "Skip the best-effort local typecheck before compiling",
|
|
122
|
-
default: false
|
|
123
|
-
},
|
|
124
|
-
...CONFIG_FLAG_ARGS
|
|
125
|
-
},
|
|
126
|
-
async run({ args }) {
|
|
127
|
-
const parsedArgs = parseCompileCommandArgs(args);
|
|
128
|
-
const { projectRoot, projectConfig, config } = await resolveProjectContext(parsedArgs);
|
|
129
|
-
let nextProjectConfig = projectConfig;
|
|
130
|
-
await assertReleaseEnvironmentPortableDependencies({
|
|
131
|
-
projectRoot,
|
|
132
|
-
projectConfig: nextProjectConfig,
|
|
133
|
-
environment: config.environment
|
|
134
|
-
});
|
|
135
|
-
await assertCompilerPortableDependencies({
|
|
136
|
-
projectRoot,
|
|
137
|
-
projectConfig: nextProjectConfig
|
|
138
|
-
});
|
|
139
|
-
const diff = await getLocalDiff(projectRoot);
|
|
140
|
-
await assertCliStaticScaffoldComplete(projectRoot, diff.deleted);
|
|
141
|
-
if (diff.modified.length > 0 || diff.added.length > 0 || diff.deleted.length > 0) {
|
|
142
|
-
throw new Error(
|
|
143
|
-
"Local authored changes are not synced yet. Run 'dreamboard sync' before compiling."
|
|
144
|
-
);
|
|
145
|
-
}
|
|
146
|
-
const remoteProject = await resolveRemoteProject({
|
|
147
|
-
projectRoot,
|
|
148
|
-
projectConfig: nextProjectConfig,
|
|
149
|
-
config
|
|
150
|
-
});
|
|
151
|
-
nextProjectConfig = remoteProject.projectConfig;
|
|
152
|
-
const localAuthoring = getProjectAuthoringState(nextProjectConfig);
|
|
153
|
-
const pendingSync = getProjectPendingAuthoringSync(nextProjectConfig);
|
|
154
|
-
if (pendingSync) {
|
|
155
|
-
if (pendingSync.phase === "authoring_state_created") {
|
|
156
|
-
throw new Error(
|
|
157
|
-
"Previous sync reached the remote authored head, but local scaffold finalization did not complete. Run 'dreamboard sync' again before compiling."
|
|
158
|
-
);
|
|
159
|
-
}
|
|
160
|
-
throw new Error(
|
|
161
|
-
"Previous sync uploaded source changes but did not finish creating the authored head. Run 'dreamboard sync' again before compiling."
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
const localRevisionDigest = localAuthoring.revisionDigest ?? nextProjectConfig.remoteHeadDigest;
|
|
165
|
-
if (!localRevisionDigest) {
|
|
166
|
-
throw new Error(
|
|
167
|
-
"This workspace does not know its authored revision yet. Run 'dreamboard sync' first."
|
|
168
|
-
);
|
|
169
|
-
}
|
|
170
|
-
const remoteRevisionDigest = remoteProject.project.head?.revisionDigest;
|
|
171
|
-
if (!remoteRevisionDigest) {
|
|
172
|
-
throw new Error(
|
|
173
|
-
"Remote has no authored project revision to compile yet."
|
|
174
|
-
);
|
|
175
|
-
}
|
|
176
|
-
if (remoteRevisionDigest !== localRevisionDigest) {
|
|
177
|
-
throw new Error(
|
|
178
|
-
`Remote project head is ${remoteRevisionDigest} but this workspace is based on ${localRevisionDigest}. Run 'dreamboard pull' before compiling.`
|
|
179
|
-
);
|
|
180
|
-
}
|
|
181
|
-
if (!parsedArgs["skip-local-check"]) {
|
|
182
|
-
consola.start("Running local typecheck...");
|
|
183
|
-
const typecheckResult = await runLocalTypecheck(projectRoot);
|
|
184
|
-
if (typecheckResult.skipped) {
|
|
185
|
-
if (typecheckResult.output) {
|
|
186
|
-
consola.warn(typecheckResult.output);
|
|
187
|
-
}
|
|
188
|
-
} else if (!typecheckResult.success) {
|
|
189
|
-
if (typecheckResult.output) {
|
|
190
|
-
consola.error(typecheckResult.output);
|
|
191
|
-
}
|
|
192
|
-
throw new Error(
|
|
193
|
-
"Local typecheck failed. Fix the diagnostics or re-run with --skip-local-check."
|
|
194
|
-
);
|
|
195
|
-
} else {
|
|
196
|
-
consola.success("Local typecheck passed.");
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
const existingCompiledResult = (await findProjectCompiledResultsForRevision({
|
|
200
|
-
projectId: nextProjectConfig.projectId,
|
|
201
|
-
revisionDigest: localRevisionDigest
|
|
202
|
-
})).find((result) => result.success);
|
|
203
|
-
if (existingCompiledResult) {
|
|
204
|
-
nextProjectConfig = setLatestCompileAttempt(nextProjectConfig, {
|
|
205
|
-
resultId: existingCompiledResult.id,
|
|
206
|
-
jobId: void 0,
|
|
207
|
-
revisionDigest: localRevisionDigest,
|
|
208
|
-
authoringStateId: localAuthoring.authoringStateId ?? localRevisionDigest,
|
|
209
|
-
status: "successful",
|
|
210
|
-
diagnosticsSummary: void 0
|
|
211
|
-
});
|
|
212
|
-
await updateProjectState(projectRoot, nextProjectConfig);
|
|
213
|
-
consola.success(
|
|
214
|
-
`Reusing compiled ${existingCompiledResult.id} for revision ${localRevisionDigest}.`
|
|
215
|
-
);
|
|
216
|
-
return;
|
|
217
|
-
}
|
|
218
|
-
let compileJobId;
|
|
219
|
-
let compileJobStatus;
|
|
220
|
-
let compileJobPhase;
|
|
221
|
-
let compileJobMessage;
|
|
222
|
-
let compileJobErrorMessage;
|
|
223
|
-
let compiledResult;
|
|
224
|
-
try {
|
|
225
|
-
const compileJob = await queueProjectRevisionCompileSdk({
|
|
226
|
-
projectId: nextProjectConfig.projectId,
|
|
227
|
-
revisionDigest: localRevisionDigest
|
|
228
|
-
});
|
|
229
|
-
compileJobId = compileJob.jobId;
|
|
230
|
-
if (!compileJobId) {
|
|
231
|
-
throw new Error("Failed to create compile job: missing jobId.");
|
|
232
|
-
}
|
|
233
|
-
({
|
|
234
|
-
job: {
|
|
235
|
-
status: compileJobStatus,
|
|
236
|
-
phase: compileJobPhase,
|
|
237
|
-
message: compileJobMessage,
|
|
238
|
-
errorMessage: compileJobErrorMessage
|
|
239
|
-
},
|
|
240
|
-
compiledResult
|
|
241
|
-
} = await waitForCompiledResultJobSdk({
|
|
242
|
-
projectId: nextProjectConfig.projectId,
|
|
243
|
-
jobId: compileJobId,
|
|
244
|
-
onProgress: (job) => {
|
|
245
|
-
const message = formatCompileJobProgressMessage(job);
|
|
246
|
-
if (parsedArgs.debug) {
|
|
247
|
-
consola.info(message);
|
|
248
|
-
} else {
|
|
249
|
-
consola.start(message);
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
}));
|
|
253
|
-
} catch (error) {
|
|
254
|
-
const message = formatCliError(error);
|
|
255
|
-
if (compileJobId) {
|
|
256
|
-
await persistFailedCompileAttempt({
|
|
257
|
-
projectRoot,
|
|
258
|
-
projectConfig: nextProjectConfig,
|
|
259
|
-
revisionDigest: localRevisionDigest,
|
|
260
|
-
authoringStateId: localAuthoring.authoringStateId,
|
|
261
|
-
diagnosticsSummary: message,
|
|
262
|
-
jobId: compileJobId
|
|
263
|
-
});
|
|
264
|
-
}
|
|
265
|
-
throw new Error(
|
|
266
|
-
formatRemoteCompileCommandError({
|
|
267
|
-
message,
|
|
268
|
-
jobId: compileJobId
|
|
269
|
-
})
|
|
270
|
-
);
|
|
271
|
-
}
|
|
272
|
-
const failedJobProducedCompiledResult = compileJobStatus === "FAILED" && compiledResult.success;
|
|
273
|
-
const failedJobWithCompiledResultSummary = failedJobProducedCompiledResult ? formatFailedCompileJobSummary({
|
|
274
|
-
phase: compileJobPhase,
|
|
275
|
-
message: compileJobMessage,
|
|
276
|
-
errorMessage: compileJobErrorMessage
|
|
277
|
-
}) : void 0;
|
|
278
|
-
nextProjectConfig = setLatestCompileAttempt(nextProjectConfig, {
|
|
279
|
-
resultId: compiledResult.id,
|
|
280
|
-
jobId: compileJobId,
|
|
281
|
-
revisionDigest: localRevisionDigest,
|
|
282
|
-
authoringStateId: localAuthoring.authoringStateId ?? localRevisionDigest,
|
|
283
|
-
status: compiledResult.success && !failedJobProducedCompiledResult ? "successful" : "failed",
|
|
284
|
-
diagnosticsSummary: failedJobWithCompiledResultSummary ?? formatDiagnosticsSummary(compiledResult.diagnostics)
|
|
285
|
-
});
|
|
286
|
-
await updateProjectState(projectRoot, nextProjectConfig);
|
|
287
|
-
if (failedJobProducedCompiledResult) {
|
|
288
|
-
throw new Error(
|
|
289
|
-
formatFailedCompileJobWithCompiledResultMessage({
|
|
290
|
-
compiledResultId: compiledResult.id,
|
|
291
|
-
job: {
|
|
292
|
-
phase: compileJobPhase,
|
|
293
|
-
message: compileJobMessage,
|
|
294
|
-
errorMessage: compileJobErrorMessage
|
|
295
|
-
}
|
|
296
|
-
})
|
|
297
|
-
);
|
|
298
|
-
}
|
|
299
|
-
if (!compiledResult.success) {
|
|
300
|
-
for (const diagnostic of compiledResult.diagnostics ?? []) {
|
|
301
|
-
if (diagnostic.message) {
|
|
302
|
-
consola.error(diagnostic.message);
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
throw new Error(
|
|
306
|
-
"Remote compile failed, but your authored state is synced. Fix the diagnostics and run 'dreamboard compile' again."
|
|
307
|
-
);
|
|
308
|
-
}
|
|
309
|
-
consola.success(
|
|
310
|
-
`Compiled ${compiledResult.id} for revision ${localRevisionDigest}.`
|
|
311
|
-
);
|
|
312
|
-
}
|
|
313
|
-
});
|
|
314
|
-
export {
|
|
315
|
-
compile_default as default
|
|
316
|
-
};
|
|
317
|
-
//# sourceMappingURL=compile-MO2URO5Z.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/commands/compile.ts"],"sourcesContent":["import type { CompiledResult } from \"@dreamboard-games/api-client\";\nimport type { ProjectConfig } from \"../types.js\";\nimport { defineCommand } from \"citty\";\nimport consola from \"consola\";\nimport { CONFIG_FLAG_ARGS } from \"../command-args.js\";\nimport { resolveProjectContext } from \"../config/resolve.js\";\nimport { updateProjectState } from \"../config/project-config.js\";\nimport { parseCompileCommandArgs } from \"../flags.js\";\nimport { getLocalDiff } from \"../services/project/local-files.js\";\nimport { assertCliStaticScaffoldComplete } from \"../services/project/static-scaffold.js\";\nimport {\n assertCompilerPortableDependencies,\n assertReleaseEnvironmentPortableDependencies,\n} from \"../services/project/dependency-portability.js\";\nimport { runLocalTypecheck } from \"../services/project/local-typecheck.js\";\nimport {\n findProjectCompiledResultsForRevision,\n queueProjectRevisionCompileSdk,\n waitForCompiledResultJobSdk,\n} from \"../services/api/index.js\";\nimport {\n getProjectAuthoringState,\n getProjectPendingAuthoringSync,\n setLatestCompileAttempt,\n} from \"../services/project/project-state.js\";\nimport { formatCliError } from \"../utils/errors.js\";\nimport { resolveRemoteProject } from \"../services/project/remote-project.js\";\n\nfunction formatDiagnosticsSummary(\n diagnostics: Array<{ message?: string }> | null | undefined,\n): string | undefined {\n const firstMessage = diagnostics?.find(\n (diagnostic) => diagnostic.message,\n )?.message;\n return firstMessage?.trim() || undefined;\n}\n\nfunction formatCompileJobProgressMessage(job: {\n status: string;\n phase?: string;\n queuePosition?: number;\n message?: string;\n}): string {\n const phase = job.phase ? ` [${job.phase}]` : \"\";\n const detail = job.message ? ` ${job.message}` : \"\";\n if (job.status === \"PENDING\") {\n const queue =\n typeof job.queuePosition === \"number\"\n ? ` (queue ${job.queuePosition + 1})`\n : \"\";\n return `Compile queued${queue}${phase}${detail}`.trim();\n }\n if (job.status === \"RUNNING\") {\n return `Compile running${phase}${detail}`.trim();\n }\n if (job.status === \"FAILED\") {\n return `Compile failed${phase}${detail}`.trim();\n }\n return `Compile ${job.status.toLowerCase()}${phase}${detail}`.trim();\n}\n\nfunction formatFailedCompileJobSummary(job: {\n phase?: string;\n message?: string | null;\n errorMessage?: string | null;\n}): string {\n return formatCompileJobProgressMessage({\n status: \"FAILED\",\n phase: job.phase,\n message: job.errorMessage ?? job.message ?? undefined,\n });\n}\n\nfunction formatFailedCompileJobWithCompiledResultMessage(options: {\n compiledResultId: string;\n job: {\n phase?: string;\n message?: string | null;\n errorMessage?: string | null;\n };\n}): string {\n return `${formatFailedCompileJobSummary(options.job)}. The backend created compiled result ${options.compiledResultId}, but the compile job did not complete cleanly. Run 'dreamboard compile' again after fixing the backend/compiler issue.`;\n}\n\nfunction formatRemoteCompileCommandError(options: {\n message: string;\n jobId?: string;\n}): string {\n const detail = options.message.trim();\n const hasActionableTerminalContext =\n /^Compile\\s+(failed|completed|cancelled|interrupted)\\b/i.test(detail);\n if (options.jobId) {\n if (hasActionableTerminalContext) {\n return `Remote compile job ${options.jobId} could not be completed. ${detail}`;\n }\n return `Remote compile job ${options.jobId} could not be completed. ${detail} Check backend health and try 'dreamboard compile' again.`;\n }\n return `Remote compile could not be started. ${detail} Check backend health and try 'dreamboard compile' again.`;\n}\n\nasync function persistFailedCompileAttempt(options: {\n projectRoot: string;\n projectConfig: ProjectConfig;\n revisionDigest: string;\n authoringStateId?: string;\n diagnosticsSummary: string;\n jobId?: string;\n}): Promise<void> {\n const nextProjectConfig = setLatestCompileAttempt(options.projectConfig, {\n resultId: undefined,\n jobId: options.jobId,\n revisionDigest: options.revisionDigest,\n authoringStateId: options.authoringStateId ?? options.revisionDigest,\n status: \"failed\",\n diagnosticsSummary: options.diagnosticsSummary,\n });\n await updateProjectState(options.projectRoot, nextProjectConfig);\n}\n\nexport default defineCommand({\n meta: {\n name: \"compile\",\n description: \"Compile the current remote authoring head\",\n },\n args: {\n debug: {\n type: \"boolean\",\n description: \"Print additional compile progress context\",\n default: false,\n },\n \"skip-local-check\": {\n type: \"boolean\",\n description: \"Skip the best-effort local typecheck before compiling\",\n default: false,\n },\n ...CONFIG_FLAG_ARGS,\n },\n async run({ args }) {\n const parsedArgs = parseCompileCommandArgs(args);\n const { projectRoot, projectConfig, config } =\n await resolveProjectContext(parsedArgs);\n let nextProjectConfig = projectConfig;\n await assertReleaseEnvironmentPortableDependencies({\n projectRoot,\n projectConfig: nextProjectConfig,\n environment: config.environment,\n });\n await assertCompilerPortableDependencies({\n projectRoot,\n projectConfig: nextProjectConfig,\n });\n\n const diff = await getLocalDiff(projectRoot);\n await assertCliStaticScaffoldComplete(projectRoot, diff.deleted);\n if (\n diff.modified.length > 0 ||\n diff.added.length > 0 ||\n diff.deleted.length > 0\n ) {\n throw new Error(\n \"Local authored changes are not synced yet. Run 'dreamboard sync' before compiling.\",\n );\n }\n\n const remoteProject = await resolveRemoteProject({\n projectRoot,\n projectConfig: nextProjectConfig,\n config,\n });\n nextProjectConfig = remoteProject.projectConfig;\n\n const localAuthoring = getProjectAuthoringState(nextProjectConfig);\n const pendingSync = getProjectPendingAuthoringSync(nextProjectConfig);\n if (pendingSync) {\n if (pendingSync.phase === \"authoring_state_created\") {\n throw new Error(\n \"Previous sync reached the remote authored head, but local scaffold finalization did not complete. Run 'dreamboard sync' again before compiling.\",\n );\n }\n throw new Error(\n \"Previous sync uploaded source changes but did not finish creating the authored head. Run 'dreamboard sync' again before compiling.\",\n );\n }\n const localRevisionDigest =\n localAuthoring.revisionDigest ?? nextProjectConfig.remoteHeadDigest;\n if (!localRevisionDigest) {\n throw new Error(\n \"This workspace does not know its authored revision yet. Run 'dreamboard sync' first.\",\n );\n }\n\n const remoteRevisionDigest = remoteProject.project.head?.revisionDigest;\n if (!remoteRevisionDigest) {\n throw new Error(\n \"Remote has no authored project revision to compile yet.\",\n );\n }\n if (remoteRevisionDigest !== localRevisionDigest) {\n throw new Error(\n `Remote project head is ${remoteRevisionDigest} but this workspace is based on ${localRevisionDigest}. Run 'dreamboard pull' before compiling.`,\n );\n }\n\n if (!parsedArgs[\"skip-local-check\"]) {\n consola.start(\"Running local typecheck...\");\n const typecheckResult = await runLocalTypecheck(projectRoot);\n if (typecheckResult.skipped) {\n if (typecheckResult.output) {\n consola.warn(typecheckResult.output);\n }\n } else if (!typecheckResult.success) {\n if (typecheckResult.output) {\n consola.error(typecheckResult.output);\n }\n throw new Error(\n \"Local typecheck failed. Fix the diagnostics or re-run with --skip-local-check.\",\n );\n } else {\n consola.success(\"Local typecheck passed.\");\n }\n }\n\n const existingCompiledResult = (\n await findProjectCompiledResultsForRevision({\n projectId: nextProjectConfig.projectId,\n revisionDigest: localRevisionDigest,\n })\n ).find((result) => result.success);\n if (existingCompiledResult) {\n nextProjectConfig = setLatestCompileAttempt(nextProjectConfig, {\n resultId: existingCompiledResult.id,\n jobId: undefined,\n revisionDigest: localRevisionDigest,\n authoringStateId:\n localAuthoring.authoringStateId ?? localRevisionDigest,\n status: \"successful\",\n diagnosticsSummary: undefined,\n });\n await updateProjectState(projectRoot, nextProjectConfig);\n consola.success(\n `Reusing compiled ${existingCompiledResult.id} for revision ${localRevisionDigest}.`,\n );\n return;\n }\n\n let compileJobId: string | undefined;\n let compileJobStatus: string | undefined;\n let compileJobPhase: string | undefined;\n let compileJobMessage: string | null | undefined;\n let compileJobErrorMessage: string | null | undefined;\n let compiledResult: CompiledResult;\n try {\n const compileJob = await queueProjectRevisionCompileSdk({\n projectId: nextProjectConfig.projectId,\n revisionDigest: localRevisionDigest,\n });\n compileJobId = compileJob.jobId;\n if (!compileJobId) {\n throw new Error(\"Failed to create compile job: missing jobId.\");\n }\n\n ({\n job: {\n status: compileJobStatus,\n phase: compileJobPhase,\n message: compileJobMessage,\n errorMessage: compileJobErrorMessage,\n },\n compiledResult,\n } = await waitForCompiledResultJobSdk({\n projectId: nextProjectConfig.projectId,\n jobId: compileJobId,\n onProgress: (job) => {\n const message = formatCompileJobProgressMessage(job);\n if (parsedArgs.debug) {\n consola.info(message);\n } else {\n consola.start(message);\n }\n },\n }));\n } catch (error) {\n const message = formatCliError(error);\n if (compileJobId) {\n await persistFailedCompileAttempt({\n projectRoot,\n projectConfig: nextProjectConfig,\n revisionDigest: localRevisionDigest,\n authoringStateId: localAuthoring.authoringStateId,\n diagnosticsSummary: message,\n jobId: compileJobId,\n });\n }\n throw new Error(\n formatRemoteCompileCommandError({\n message,\n jobId: compileJobId,\n }),\n );\n }\n\n const failedJobProducedCompiledResult =\n compileJobStatus === \"FAILED\" && compiledResult.success;\n const failedJobWithCompiledResultSummary = failedJobProducedCompiledResult\n ? formatFailedCompileJobSummary({\n phase: compileJobPhase,\n message: compileJobMessage,\n errorMessage: compileJobErrorMessage,\n })\n : undefined;\n\n nextProjectConfig = setLatestCompileAttempt(nextProjectConfig, {\n resultId: compiledResult.id,\n jobId: compileJobId,\n revisionDigest: localRevisionDigest,\n authoringStateId: localAuthoring.authoringStateId ?? localRevisionDigest,\n status:\n compiledResult.success && !failedJobProducedCompiledResult\n ? \"successful\"\n : \"failed\",\n diagnosticsSummary:\n failedJobWithCompiledResultSummary ??\n formatDiagnosticsSummary(compiledResult.diagnostics),\n });\n await updateProjectState(projectRoot, nextProjectConfig);\n\n if (failedJobProducedCompiledResult) {\n throw new Error(\n formatFailedCompileJobWithCompiledResultMessage({\n compiledResultId: compiledResult.id,\n job: {\n phase: compileJobPhase,\n message: compileJobMessage,\n errorMessage: compileJobErrorMessage,\n },\n }),\n );\n }\n\n if (!compiledResult.success) {\n for (const diagnostic of compiledResult.diagnostics ?? []) {\n if (diagnostic.message) {\n consola.error(diagnostic.message);\n }\n }\n throw new Error(\n \"Remote compile failed, but your authored state is synced. Fix the diagnostics and run 'dreamboard compile' again.\",\n );\n }\n\n consola.success(\n `Compiled ${compiledResult.id} for revision ${localRevisionDigest}.`,\n );\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
assertReducerBundleSmoke,
|
|
4
|
-
assertViewPerPlayerSeatsValid,
|
|
5
|
-
buildScenarios,
|
|
6
|
-
driveReducerBundleThroughScenarios,
|
|
7
|
-
runReducerBundleSmoke
|
|
8
|
-
} from "./chunk-HLHT57AW.mjs";
|
|
9
|
-
import "./chunk-QD4SQNUP.mjs";
|
|
10
|
-
import "./chunk-JZTH3EMV.mjs";
|
|
11
|
-
import "./chunk-TTB7AIHZ.mjs";
|
|
12
|
-
import "./chunk-H6XDQJ3N.mjs";
|
|
13
|
-
export {
|
|
14
|
-
assertReducerBundleSmoke,
|
|
15
|
-
assertViewPerPlayerSeatsValid,
|
|
16
|
-
buildScenarios,
|
|
17
|
-
driveReducerBundleThroughScenarios,
|
|
18
|
-
runReducerBundleSmoke
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=reducer-bundle-preflight-3DSXIELT.mjs.map
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
assertReducerContractPreflight
|
|
4
|
-
} from "./chunk-INIK6LHK.mjs";
|
|
5
|
-
import "./chunk-QD4SQNUP.mjs";
|
|
6
|
-
import "./chunk-TTB7AIHZ.mjs";
|
|
7
|
-
import "./chunk-H6XDQJ3N.mjs";
|
|
8
|
-
export {
|
|
9
|
-
assertReducerContractPreflight
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=reducer-contract-preflight-FQB7M4PU.mjs.map
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
assertDispatchResultWireContract,
|
|
4
|
-
createActionPlanReplaySession,
|
|
5
|
-
createScenarioActionPlan,
|
|
6
|
-
createSessionFromScenario,
|
|
7
|
-
ensureReducerNativeTestingFiles,
|
|
8
|
-
formatScenarioErrorForDisplay,
|
|
9
|
-
generateReducerNativeArtifacts,
|
|
10
|
-
isReducerNativeTestingWorkspace,
|
|
11
|
-
loadTypedBases,
|
|
12
|
-
loadTypedScenarios,
|
|
13
|
-
materializeScenarioReducerState,
|
|
14
|
-
replayActionPlanInSession,
|
|
15
|
-
replayActionPlanThroughBackend,
|
|
16
|
-
replayScenarioThroughBackend,
|
|
17
|
-
runReducerNativeScenarios,
|
|
18
|
-
writeReducerNativeGeneratedFiles
|
|
19
|
-
} from "./chunk-3Y4FRMTK.mjs";
|
|
20
|
-
import "./chunk-QD4SQNUP.mjs";
|
|
21
|
-
import "./chunk-PLXXH5LY.mjs";
|
|
22
|
-
import "./chunk-AWZ4M4NS.mjs";
|
|
23
|
-
import "./chunk-6AKXIY37.mjs";
|
|
24
|
-
import "./chunk-334H4LE4.mjs";
|
|
25
|
-
import "./chunk-TAEQKBJB.mjs";
|
|
26
|
-
import "./chunk-F2DIOJJZ.mjs";
|
|
27
|
-
import "./chunk-RDYXWXXC.mjs";
|
|
28
|
-
import "./chunk-7LFDFXLS.mjs";
|
|
29
|
-
import "./chunk-JZTH3EMV.mjs";
|
|
30
|
-
import "./chunk-TTB7AIHZ.mjs";
|
|
31
|
-
import "./chunk-MYMVXTZT.mjs";
|
|
32
|
-
import "./chunk-OJFZVGEL.mjs";
|
|
33
|
-
import "./chunk-M7UVBANQ.mjs";
|
|
34
|
-
import "./chunk-H6XDQJ3N.mjs";
|
|
35
|
-
export {
|
|
36
|
-
assertDispatchResultWireContract,
|
|
37
|
-
createActionPlanReplaySession,
|
|
38
|
-
createScenarioActionPlan,
|
|
39
|
-
createSessionFromScenario,
|
|
40
|
-
ensureReducerNativeTestingFiles,
|
|
41
|
-
formatScenarioErrorForDisplay,
|
|
42
|
-
generateReducerNativeArtifacts,
|
|
43
|
-
isReducerNativeTestingWorkspace,
|
|
44
|
-
loadTypedBases,
|
|
45
|
-
loadTypedScenarios,
|
|
46
|
-
materializeScenarioReducerState,
|
|
47
|
-
replayActionPlanInSession,
|
|
48
|
-
replayActionPlanThroughBackend,
|
|
49
|
-
replayScenarioThroughBackend,
|
|
50
|
-
runReducerNativeScenarios,
|
|
51
|
-
writeReducerNativeGeneratedFiles
|
|
52
|
-
};
|
|
53
|
-
//# sourceMappingURL=reducer-native-test-harness-X2KQYSCD.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|