@dreamboard-games/cli 0.1.30-alpha.2 → 0.1.30-alpha.21

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 (136) hide show
  1. package/README.md +25 -107
  2. package/dist/agent-verifier/agent-workspace-verifier.mjs +1682 -0
  3. package/dist/agent-verifier/agent-workspace-verifier.mjs.map +1 -0
  4. package/dist/agent-verifier/chunk-22U6RMWO.mjs +722 -0
  5. package/dist/agent-verifier/chunk-22U6RMWO.mjs.map +1 -0
  6. package/dist/agent-verifier/chunk-4I2WWAPK.mjs +399 -0
  7. package/dist/agent-verifier/chunk-4I2WWAPK.mjs.map +1 -0
  8. package/dist/agent-verifier/chunk-BWBN2TDJ.mjs +2811 -0
  9. package/dist/agent-verifier/chunk-BWBN2TDJ.mjs.map +1 -0
  10. package/dist/agent-verifier/chunk-DQUYBIGQ.mjs +353 -0
  11. package/dist/agent-verifier/chunk-DQUYBIGQ.mjs.map +1 -0
  12. package/dist/agent-verifier/chunk-F2DIOJJZ.mjs +302 -0
  13. package/dist/agent-verifier/chunk-F2DIOJJZ.mjs.map +1 -0
  14. package/dist/agent-verifier/chunk-GWRZRWCF.mjs +107 -0
  15. package/dist/agent-verifier/chunk-GWRZRWCF.mjs.map +1 -0
  16. package/dist/agent-verifier/chunk-H6XDQJ3N.mjs +11 -0
  17. package/dist/agent-verifier/chunk-HUBV22JQ.mjs +89 -0
  18. package/dist/agent-verifier/chunk-HUBV22JQ.mjs.map +1 -0
  19. package/dist/agent-verifier/chunk-IWB4L2HV.mjs +273 -0
  20. package/dist/agent-verifier/chunk-IWB4L2HV.mjs.map +1 -0
  21. package/dist/agent-verifier/chunk-JZTH3EMV.mjs +14523 -0
  22. package/dist/agent-verifier/chunk-JZTH3EMV.mjs.map +1 -0
  23. package/dist/agent-verifier/chunk-KDAQ4CZY.mjs +192 -0
  24. package/dist/agent-verifier/chunk-KDAQ4CZY.mjs.map +1 -0
  25. package/dist/agent-verifier/chunk-M7UVBANQ.mjs +58 -0
  26. package/dist/agent-verifier/chunk-M7UVBANQ.mjs.map +1 -0
  27. package/dist/agent-verifier/chunk-MYMVXTZT.mjs +766 -0
  28. package/dist/agent-verifier/chunk-MYMVXTZT.mjs.map +1 -0
  29. package/dist/agent-verifier/chunk-OJFZVGEL.mjs +492 -0
  30. package/dist/agent-verifier/chunk-OJFZVGEL.mjs.map +1 -0
  31. package/dist/agent-verifier/chunk-QD4SQNUP.mjs +75 -0
  32. package/dist/agent-verifier/chunk-QD4SQNUP.mjs.map +1 -0
  33. package/dist/agent-verifier/chunk-RDYXWXXC.mjs +47 -0
  34. package/dist/agent-verifier/chunk-RDYXWXXC.mjs.map +1 -0
  35. package/dist/agent-verifier/chunk-TIDX3YLW.mjs +158 -0
  36. package/dist/agent-verifier/chunk-TIDX3YLW.mjs.map +1 -0
  37. package/dist/agent-verifier/chunk-TTB7AIHZ.mjs +214 -0
  38. package/dist/agent-verifier/chunk-TTB7AIHZ.mjs.map +1 -0
  39. package/dist/agent-verifier/chunk-UXGTT25Q.mjs +59 -0
  40. package/dist/agent-verifier/chunk-UXGTT25Q.mjs.map +1 -0
  41. package/dist/agent-verifier/chunk-YE7UAO3T.mjs +129 -0
  42. package/dist/agent-verifier/chunk-YE7UAO3T.mjs.map +1 -0
  43. package/dist/agent-verifier/chunk-ZEELHSY3.mjs +20 -0
  44. package/dist/agent-verifier/chunk-ZEELHSY3.mjs.map +1 -0
  45. package/dist/agent-verifier/global-config-IXZLY4BS.mjs +19 -0
  46. package/dist/agent-verifier/keychain-backend-UF3Z26JM.mjs +140 -0
  47. package/dist/agent-verifier/keychain-backend-UF3Z26JM.mjs.map +1 -0
  48. package/dist/agent-verifier/local-files-OF4QFISU.mjs +45 -0
  49. package/dist/agent-verifier/local-files-OF4QFISU.mjs.map +1 -0
  50. package/dist/agent-verifier/local-typecheck-DHVLM37Z.mjs +150 -0
  51. package/dist/agent-verifier/local-typecheck-DHVLM37Z.mjs.map +1 -0
  52. package/dist/agent-verifier/materialize-workspace-7DFE45ZH.mjs +90 -0
  53. package/dist/agent-verifier/materialize-workspace-7DFE45ZH.mjs.map +1 -0
  54. package/dist/agent-verifier/project-state-XKUSCFSV.mjs +33 -0
  55. package/dist/agent-verifier/project-state-XKUSCFSV.mjs.map +1 -0
  56. package/dist/agent-verifier/prompt-VKHMCQT6.mjs +756 -0
  57. package/dist/agent-verifier/prompt-VKHMCQT6.mjs.map +1 -0
  58. package/dist/agent-verifier/reducer-bundle-preflight-GLUJKTWU.mjs +312 -0
  59. package/dist/agent-verifier/reducer-bundle-preflight-GLUJKTWU.mjs.map +1 -0
  60. package/dist/agent-verifier/reducer-contract-preflight-WVQQPW5F.mjs +46 -0
  61. package/dist/agent-verifier/reducer-contract-preflight-WVQQPW5F.mjs.map +1 -0
  62. package/dist/agent-verifier/reducer-native-test-harness-H6G6RBRY.mjs +3436 -0
  63. package/dist/agent-verifier/reducer-native-test-harness-H6G6RBRY.mjs.map +1 -0
  64. package/dist/agent-verifier/static-scaffold-CC4KL6K7.mjs +24 -0
  65. package/dist/agent-verifier/static-scaffold-CC4KL6K7.mjs.map +1 -0
  66. package/dist/agent-verifier/workspace-codegen-SPPVHURX.mjs +10 -0
  67. package/dist/agent-verifier/workspace-codegen-SPPVHURX.mjs.map +1 -0
  68. package/dist/agent-verifier/workspace-dependencies-5HEEKZFP.mjs +17 -0
  69. package/dist/agent-verifier/workspace-dependencies-5HEEKZFP.mjs.map +1 -0
  70. package/dist/authoring-compatibility-internal.js +12 -0
  71. package/dist/authoring-compatibility-internal.js.map +1 -0
  72. package/dist/chunk-2H7UOFLK.js +11 -0
  73. package/dist/chunk-2H7UOFLK.js.map +1 -0
  74. package/dist/{chunk-TAQKH67O.js → chunk-2Z65YI7P.js} +2702 -7338
  75. package/dist/chunk-2Z65YI7P.js.map +1 -0
  76. package/dist/chunk-EQNBQVIW.js +204 -0
  77. package/dist/chunk-EQNBQVIW.js.map +1 -0
  78. package/dist/chunk-GQ3ZEAEG.js +4281 -0
  79. package/dist/chunk-GQ3ZEAEG.js.map +1 -0
  80. package/dist/chunk-UI7NWSYA.js +334 -0
  81. package/dist/chunk-UI7NWSYA.js.map +1 -0
  82. package/dist/{global-config-S4ZIPECE.js → global-config-GK2UC2X6.js} +4 -3
  83. package/dist/global-config-GK2UC2X6.js.map +1 -0
  84. package/dist/index.js +3421 -6435
  85. package/dist/index.js.map +1 -1
  86. package/dist/internal.js +15 -9
  87. package/dist/{keychain-backend-HDF4TZDL.js → keychain-backend-GO34KGTG.js} +12 -7
  88. package/dist/keychain-backend-GO34KGTG.js.map +1 -0
  89. package/dist/{prompt-NDV3AE5L.js → prompt-GMZABCJC.js} +2 -2
  90. package/package.json +11 -20
  91. package/release/authoring-release-set.json +38 -0
  92. package/skills/dreamboard/SKILL.md +30 -28
  93. package/skills/dreamboard/references/building-your-first-game.md +15 -15
  94. package/skills/dreamboard/references/cli.md +48 -47
  95. package/skills/dreamboard/references/manifest-authoring.md +11 -3
  96. package/skills/dreamboard/references/quickstart.md +16 -13
  97. package/skills/dreamboard/references/testing.md +10 -10
  98. package/dist/chunk-N7XPNNUI.js +0 -432
  99. package/dist/chunk-N7XPNNUI.js.map +0 -1
  100. package/dist/chunk-SEGVTWSK.js +0 -44
  101. package/dist/chunk-TAQKH67O.js.map +0 -1
  102. package/dist/dev-host/components/drawer.tsx +0 -132
  103. package/dist/dev-host/components/input.tsx +0 -21
  104. package/dist/dev-host/dev-api-proxy-plugin.ts +0 -328
  105. package/dist/dev-host/dev-author-dom-warnings.ts +0 -100
  106. package/dist/dev-host/dev-diagnostics.ts +0 -62
  107. package/dist/dev-host/dev-fallback-stylesheet.ts +0 -53
  108. package/dist/dev-host/dev-hmr-guard-plugin.ts +0 -47
  109. package/dist/dev-host/dev-host-controller.ts +0 -674
  110. package/dist/dev-host/dev-host-player-query.ts +0 -17
  111. package/dist/dev-host/dev-host-session-transport.ts +0 -52
  112. package/dist/dev-host/dev-host-storage.ts +0 -56
  113. package/dist/dev-host/dev-log-relay-plugin.ts +0 -510
  114. package/dist/dev-host/dev-runtime-config.ts +0 -14
  115. package/dist/dev-host/dev-runtime-platform.ts +0 -335
  116. package/dist/dev-host/dev-virtual-modules-plugin.ts +0 -64
  117. package/dist/dev-host/host-main.css +0 -224
  118. package/dist/dev-host/host-main.tsx +0 -948
  119. package/dist/dev-host/index.html +0 -56
  120. package/dist/dev-host/lib/utils.ts +0 -6
  121. package/dist/dev-host/plugin-main.ts +0 -61
  122. package/dist/dev-host/plugin.html +0 -24
  123. package/dist/dev-host/shared-styles.css +0 -144
  124. package/dist/dev-host/start-dev-server.ts +0 -140
  125. package/dist/dev-host/virtual-modules.d.ts +0 -27
  126. package/dist/keychain-backend-HDF4TZDL.js.map +0 -1
  127. package/skills/dreamboard/scripts/events-extract.mjs +0 -218
  128. /package/dist/{chunk-SEGVTWSK.js.map → agent-verifier/chunk-H6XDQJ3N.mjs.map} +0 -0
  129. /package/dist/{global-config-S4ZIPECE.js.map → agent-verifier/global-config-IXZLY4BS.mjs.map} +0 -0
  130. /package/dist/{prompt-NDV3AE5L.js.map → prompt-GMZABCJC.js.map} +0 -0
  131. /package/{dist/scaffold → scaffold}/assets/static/app/tsconfig.framework.json +0 -0
  132. /package/{dist/scaffold → scaffold}/assets/static/app/tsconfig.json +0 -0
  133. /package/{dist/scaffold → scaffold}/assets/static/ui/index.tsx +0 -0
  134. /package/{dist/scaffold → scaffold}/assets/static/ui/style.css +0 -0
  135. /package/{dist/scaffold → scaffold}/assets/static/ui/tsconfig.framework.json +0 -0
  136. /package/{dist/scaffold → scaffold}/assets/static/ui/tsconfig.json +0 -0
@@ -1,218 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import { access, readFile } from "node:fs/promises";
4
-
5
- const DEFAULT_EVENTS_PATH = ".dreamboard/run/events.ndjson";
6
-
7
- function printHelp() {
8
- console.log(`Extract fields from dreamboard run artifacts.
9
-
10
- Usage:
11
- node .agents/skills/dreamboard/scripts/events-extract.mjs [options]
12
-
13
- Options:
14
- --file, -f <path> NDJSON file path (default: ${DEFAULT_EVENTS_PATH})
15
- --type <eventType> Filter by event type (repeatable)
16
- --field <path> Dot path to extract (e.g. message.reason)
17
- --player <playerId> Filter by player ID across common message fields
18
- --limit <number> Limit output records
19
- --no-index Omit line index in output
20
- --help, -h Show this help
21
-
22
- Examples:
23
- node .agents/skills/dreamboard/scripts/events-extract.mjs --type YOUR_TURN
24
- node .agents/skills/dreamboard/scripts/events-extract.mjs --type ACTION_REJECTED --field message.reason
25
- node .agents/skills/dreamboard/scripts/events-extract.mjs --player player-2 --field message.availableActions
26
- `);
27
- }
28
-
29
- function parseCliArgs(argv) {
30
- const options = {
31
- filePath: DEFAULT_EVENTS_PATH,
32
- types: new Set(),
33
- includeIndex: true,
34
- };
35
-
36
- for (let index = 0; index < argv.length; index += 1) {
37
- const token = argv[index];
38
- const nextToken = argv[index + 1];
39
-
40
- if (token === "--help" || token === "-h") {
41
- printHelp();
42
- process.exit(0);
43
- }
44
- if (token === "--no-index") {
45
- options.includeIndex = false;
46
- continue;
47
- }
48
- if (token === "--file" || token === "-f") {
49
- if (!nextToken) {
50
- throw new Error("--file requires a value");
51
- }
52
- options.filePath = nextToken;
53
- index += 1;
54
- continue;
55
- }
56
- if (token === "--type") {
57
- if (!nextToken) {
58
- throw new Error("--type requires a value");
59
- }
60
- options.types.add(nextToken);
61
- index += 1;
62
- continue;
63
- }
64
- if (token === "--field") {
65
- if (!nextToken) {
66
- throw new Error("--field requires a value");
67
- }
68
- options.fieldPath = nextToken;
69
- index += 1;
70
- continue;
71
- }
72
- if (token === "--player") {
73
- if (!nextToken) {
74
- throw new Error("--player requires a value");
75
- }
76
- options.playerId = nextToken;
77
- index += 1;
78
- continue;
79
- }
80
- if (token === "--limit") {
81
- if (!nextToken) {
82
- throw new Error("--limit requires a value");
83
- }
84
- const parsed = Number.parseInt(nextToken, 10);
85
- if (!Number.isFinite(parsed) || parsed <= 0) {
86
- throw new Error("--limit must be a positive integer");
87
- }
88
- options.limit = parsed;
89
- index += 1;
90
- continue;
91
- }
92
-
93
- throw new Error(`Unknown argument: ${token}`);
94
- }
95
-
96
- return options;
97
- }
98
-
99
- function getByPath(value, path) {
100
- const segments = path.split(".").filter(Boolean);
101
- let current = value;
102
-
103
- for (const segment of segments) {
104
- if (current === null || current === undefined) {
105
- return undefined;
106
- }
107
- if (typeof current !== "object") {
108
- return undefined;
109
- }
110
- current = current[segment];
111
- }
112
-
113
- return current;
114
- }
115
-
116
- function extractPlayerCandidates(record) {
117
- const message = record.message ?? {};
118
- const players = new Set();
119
-
120
- const singleCandidates = [
121
- message.playerId,
122
- message.targetPlayer,
123
- message.toUser,
124
- ];
125
- for (const candidate of singleCandidates) {
126
- if (typeof candidate === "string") {
127
- players.add(candidate);
128
- }
129
- }
130
-
131
- const listCandidates = [
132
- message.activePlayers,
133
- message.previousPlayers,
134
- message.currentPlayers,
135
- message.controllablePlayerIds,
136
- message.eligiblePlayerIds,
137
- ];
138
- for (const candidate of listCandidates) {
139
- if (!Array.isArray(candidate)) {
140
- continue;
141
- }
142
- for (const item of candidate) {
143
- if (typeof item === "string") {
144
- players.add(item);
145
- }
146
- }
147
- }
148
-
149
- return [...players];
150
- }
151
-
152
- function toOutputRecord(record, lineIndex, options) {
153
- const output = {};
154
-
155
- if (options.includeIndex) {
156
- output.index = lineIndex;
157
- }
158
- output.observedAt = record.observedAt ?? null;
159
- output.sessionId = record.sessionId ?? null;
160
- output.eventId = record.eventId ?? null;
161
- output.type = record.type ?? null;
162
-
163
- if (options.fieldPath) {
164
- output.field = options.fieldPath;
165
- output.value = getByPath(record, options.fieldPath);
166
- } else {
167
- output.message = record.message ?? null;
168
- }
169
-
170
- return output;
171
- }
172
-
173
- async function main() {
174
- const options = parseCliArgs(process.argv.slice(2));
175
- await access(options.filePath);
176
-
177
- const text = await readFile(options.filePath, "utf8");
178
- const lines = text
179
- .split(/\r?\n/u)
180
- .map((line) => line.trim())
181
- .filter((line) => line.length > 0);
182
-
183
- let emitted = 0;
184
- for (let lineIndex = 0; lineIndex < lines.length; lineIndex += 1) {
185
- const line = lines[lineIndex];
186
- let record;
187
- try {
188
- record = JSON.parse(line);
189
- } catch {
190
- continue;
191
- }
192
-
193
- if (options.types.size > 0 && !options.types.has(record.type ?? "")) {
194
- continue;
195
- }
196
-
197
- if (options.playerId) {
198
- const players = extractPlayerCandidates(record);
199
- if (!players.includes(options.playerId)) {
200
- continue;
201
- }
202
- }
203
-
204
- const output = toOutputRecord(record, lineIndex + 1, options);
205
- console.log(JSON.stringify(output));
206
- emitted += 1;
207
-
208
- if (options.limit !== undefined && emitted >= options.limit) {
209
- break;
210
- }
211
- }
212
- }
213
-
214
- main().catch((error) => {
215
- const message = error instanceof Error ? error.message : String(error);
216
- console.error(`events-extract failed: ${message}`);
217
- process.exit(1);
218
- });