datagrok-tools 6.2.4 → 6.2.5
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/CHANGELOG.md +9 -0
- package/bin/commands/help.js +1 -1
- package/bin/commands/report.js +16 -5
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Datagrok-tools changelog
|
|
2
2
|
|
|
3
|
+
## 6.2.5 (2026-05-21)
|
|
4
|
+
|
|
5
|
+
* `grok report read` — renamed `--extract-actions` to `--extract-client-log`; sidecar is now `<stem>_client_log.json`. The old flag is no longer accepted.
|
|
6
|
+
* `grok report read` — legacy `actions` field in pre-consolidation report zips is folded into `clientLog` at read time (stderr warning emitted), so downstream consumers see one canonical field. Companion to the platform-side merge that drops `reports_data.actions` in favor of `client_log`.
|
|
7
|
+
|
|
8
|
+
## 6.2.4 (2026-05-13)
|
|
9
|
+
|
|
10
|
+
* GROK-20097: package template — replaced deprecated `"moduleResolution": "node"` in `tsconfig.json` with `"bundler"`, suppressing the TypeScript warning for new packages.
|
|
11
|
+
|
|
3
12
|
## 6.2.3 (2026-05-06)
|
|
4
13
|
|
|
5
14
|
* `grok test` — added `--skip-puppeteer` flag (symmetric counterpart of `--skip-playwright`). Bypasses `loadPackages()` and the Puppeteer/`DG.Test` runner so Playwright-only test directories (e.g. `public/playwright-public`) can run end-to-end via `grok test --skip-puppeteer` without tripping the Dart/JS package loader.
|
package/bin/commands/help.js
CHANGED
|
@@ -359,7 +359,7 @@ Subcommands:
|
|
|
359
359
|
Read flags:
|
|
360
360
|
--extract-screenshot <path> Write the screenshot binary to <path>
|
|
361
361
|
--extract-d42 <dir> Unpack .d42 sidecar tables into <dir>
|
|
362
|
-
--extract-
|
|
362
|
+
--extract-client-log Write a sibling <stem>_client_log.json
|
|
363
363
|
|
|
364
364
|
Examples:
|
|
365
365
|
grok report fetch dev 1528 Download report #1528 from the 'dev' instance
|
package/bin/commands/report.js
CHANGED
|
@@ -239,7 +239,7 @@ async function handleRead(args) {
|
|
|
239
239
|
}
|
|
240
240
|
const screenshotOut = args['extract-screenshot'];
|
|
241
241
|
const d42Dir = args['extract-d42'];
|
|
242
|
-
const
|
|
242
|
+
const extractClientLog = args['extract-client-log'] === true;
|
|
243
243
|
try {
|
|
244
244
|
let loaded;
|
|
245
245
|
let sidecarMeta = null;
|
|
@@ -265,6 +265,17 @@ async function handleRead(args) {
|
|
|
265
265
|
body
|
|
266
266
|
} = unwrapEnvelope(loaded.data);
|
|
267
267
|
const meta = Object.assign({}, envelopeMeta, sidecarMeta || {});
|
|
268
|
+
|
|
269
|
+
// Legacy-archive fallback: pre-consolidation report zips carry `actions`
|
|
270
|
+
// but no `clientLog`. Fold here so downstream consumers see one canonical
|
|
271
|
+
// field.
|
|
272
|
+
const hasClientLog = Array.isArray(body && body.clientLog) && body.clientLog.length > 0;
|
|
273
|
+
const hasLegacyActions = Array.isArray(body && body.actions) && body.actions.length > 0;
|
|
274
|
+
if (!hasClientLog && hasLegacyActions) {
|
|
275
|
+
body.clientLog = body.actions;
|
|
276
|
+
process.stderr.write('warning: report uses legacy `actions` field; treating as client log.\n');
|
|
277
|
+
}
|
|
278
|
+
if (body && 'actions' in body) delete body.actions;
|
|
268
279
|
const output = {
|
|
269
280
|
meta,
|
|
270
281
|
...body
|
|
@@ -280,12 +291,12 @@ async function handleRead(args) {
|
|
|
280
291
|
const written = extractD42(loaded.zip, loaded.d42Names, d42Dir);
|
|
281
292
|
if (written.length > 0) files.d42 = written;
|
|
282
293
|
}
|
|
283
|
-
if (
|
|
294
|
+
if (extractClientLog && Array.isArray(body && body.clientLog)) {
|
|
284
295
|
const stem = inputPath != null ? inputPath.replace(/\.[^./\\]+$/, '') : networkBase;
|
|
285
296
|
if (stem != null) {
|
|
286
|
-
const
|
|
287
|
-
_fs.default.writeFileSync(
|
|
288
|
-
files.
|
|
297
|
+
const clientLogPath = `${stem}_client_log.json`;
|
|
298
|
+
_fs.default.writeFileSync(clientLogPath, JSON.stringify(body.clientLog, null, 2));
|
|
299
|
+
files.clientLog = clientLogPath;
|
|
289
300
|
}
|
|
290
301
|
}
|
|
291
302
|
if (Object.keys(files).length > 0) output.files = files;
|
package/package.json
CHANGED