@ai-ecoverse/slicc-bios 1.17.6 → 1.17.7

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 CHANGED
@@ -521,7 +521,7 @@ npm run lint
521
521
 
522
522
  `npm test` runs the integration tests with `node --test` against Chromium (fetched by `playwright-core`), driven directly over the DevTools protocol by the [harness from slicc-shared-web](https://github.com/ai-ecoverse/slicc-shared-web#integration-test-harness); `test/integration/chrome.mjs` only says what to serve and which CDN requests to intercept. It sets `SLICC_CDP_PORTS=9300-9309` unless it's already set, for every test run (`npm test`, `test:cert`, the canary's shards), and CI, the canary and the cert review set it for the whole job, so nothing in a test run attaches to a developer's own Chrome on 127.0.0.1:9222–9229 (slicc-cdp 1.27 and later look there by default). Every run leaves behind:
523
523
 
524
- - `coverage/` – V8 coverage of the page, the shared worker, and the service worker as `lcov.info` plus an HTML report.
524
+ - `coverage/` (with `SLICC_COVERAGE=1` only) – V8 coverage of the page, the shared worker, and the service worker as `lcov.info` plus an HTML report. Without it the harness attaches no coverage recorder, and CI doesn't turn it on: nothing reads integration coverage, and without the recorder CI runs pages and workers as production does.
525
525
  - `artifacts/<suite>/<test>/` – a screenshot of each tab at the end of the test, a `console.log` of every page and worker, and the minidump of any renderer or browser crash.
526
526
  - `artifacts/hotspots.md` – added to the CI job summary. It says that profiling is off unless you turned it on.
527
527
 
@@ -554,4 +554,4 @@ The Biome, lefthook, Renovate and CI configuration comes from [slicc-shared-web]
554
554
  - **No comments.** `slicc-lint-comments` runs the [slicc no-comment checker](https://github.com/ai-ecoverse/slicc/tree/main/packages/dev-tools/no-comment) over the tree.
555
555
  - **Unit tests stay out of git.** Write them in `test/unit/`, which is gitignored, and run them with `npm run test:unit`. `slicc-no-unit-tests` fails if a unit test gets committed anyway.
556
556
  - **Changed code must be covered.** When a commit touches JavaScript in `src/`, lefthook runs the local unit tests with coverage and [`diff-cover`](https://github.com/Bachmann1234/diff_cover) requires every staged line to be executed. Files that no unit test loads count as 0%. This needs [uv](https://docs.astral.sh/uv/) for `uvx`.
557
- - **Integration tests run in CI.** `test/integration/` is committed and runs on every push and pull request; run it locally with `npm test`. Their coverage report, screenshots and crash dumps are uploaded as CI artifacts for inspection, not used as a gate.
557
+ - **Integration tests run in CI.** `test/integration/` is committed and runs on every push and pull request; run it locally with `npm test`. Their screenshots and crash dumps are uploaded as CI artifacts for inspection. CI records no integration coverage; `SLICC_COVERAGE=1 npm test` does, locally, for inspection, never as a gate.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-ecoverse/slicc-bios",
3
- "version": "1.17.6",
3
+ "version": "1.17.7",
4
4
  "description": "Slim loader that boots SLICC into OPFS and serves the UI from there",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -35,14 +35,14 @@
35
35
  "scripts": {
36
36
  "start": "node test/integration/chrome.mjs",
37
37
  "pretest": "playwright-core install --no-shell chromium",
38
- "test": "node --test --test-concurrency=1 --test-timeout=900000 --test-global-setup=node_modules/@ai-ecoverse/slicc-shared-web/harness/global.mjs ${SLICC_TESTS:-test/integration/*.test.mjs}",
38
+ "test": "node --test --test-concurrency=1 --test-timeout=900000 --test-global-setup=test/integration/global.mjs ${SLICC_TESTS:-test/integration/*.test.mjs}",
39
39
  "test:cert": "node --test --test-concurrency=1 --test-timeout=${CERT_BUDGET:-8400000} --test-global-setup=node_modules/@ai-ecoverse/slicc-shared-web/harness/global.mjs test/integration/cert.test.mjs",
40
40
  "test:unit": "mcr -c node_modules/@ai-ecoverse/slicc-shared-web/mcr.config.mjs node --test 'test/unit/**/*.test.mjs'",
41
41
  "lint": "slicc-lint",
42
42
  "format": "biome check --write ."
43
43
  },
44
44
  "devDependencies": {
45
- "@ai-ecoverse/slicc": "1.44.5",
45
+ "@ai-ecoverse/slicc": "1.44.6",
46
46
  "@ai-ecoverse/slicc-browsers": "1.8.4",
47
47
  "@ai-ecoverse/slicc-node": "2.5.1",
48
48
  "@ai-ecoverse/slicc-shared-web": "1.24.1",
@@ -99,6 +99,10 @@
99
99
  "integrity": "sha512-DxDk2UjUhhsXWCn0NNdw4CZpl6OtaTiVwkrLvdJl3UAC7m1aEn9OZevDkmDYcGd7bGwuw2yj20jMqPjpcoKqWA==",
100
100
  "sha256": "2a210d015b974e9889cfd2e2b0388db37f4dc178fcc541414ec47c4e13add13e"
101
101
  },
102
+ "@ai-ecoverse/slicc-cdp@1.30.0": {
103
+ "integrity": "sha512-KSfYuLOA+W1Om/2Du4lZrM8PKVnPnRoxZUlGxjnzTZMC2fmG1D79+OokFp3bZ+dpbPqpHQ9u8W1sJa4fGcDptA==",
104
+ "sha256": "85ac9ea30ccf0ef62bd453ec1498bdd7b22f240e8b23640c743f1dcb198110a0"
105
+ },
102
106
  "@ai-ecoverse/slicc-clipboard@1.0.2": {
103
107
  "integrity": "sha512-p7b1h85qkiU0LKjNLCLiU7GVXjGigkyR2+VUCInM1cZo2yjLFxr7tGAOO09e6OG9nB7XKiQn3W88wb3s0gxy+g==",
104
108
  "sha256": "1bd73c6ae4c5c0dc149ba6a301e7615a78bf4b97ff88c5b0f6eb7d8e270588aa"
@@ -7,7 +7,7 @@
7
7
  "name": "slicc-bios-packages",
8
8
  "dependencies": {
9
9
  "@ai-ecoverse/slicc-browsers": "1.8.4",
10
- "@ai-ecoverse/slicc-cdp": "1.29.2",
10
+ "@ai-ecoverse/slicc-cdp": "1.30.0",
11
11
  "@ai-ecoverse/slicc-clipboard": "1.0.2",
12
12
  "@ai-ecoverse/slicc-kernel": "1.124.2",
13
13
  "@ai-ecoverse/slicc-spectrum": "1.86.4",
@@ -46,9 +46,9 @@
46
46
  }
47
47
  },
48
48
  "node_modules/@ai-ecoverse/slicc-cdp": {
49
- "version": "1.29.2",
50
- "resolved": "https://registry.npmjs.org/@ai-ecoverse/slicc-cdp/-/slicc-cdp-1.29.2.tgz",
51
- "integrity": "sha512-DxDk2UjUhhsXWCn0NNdw4CZpl6OtaTiVwkrLvdJl3UAC7m1aEn9OZevDkmDYcGd7bGwuw2yj20jMqPjpcoKqWA==",
49
+ "version": "1.30.0",
50
+ "resolved": "https://registry.npmjs.org/@ai-ecoverse/slicc-cdp/-/slicc-cdp-1.30.0.tgz",
51
+ "integrity": "sha512-KSfYuLOA+W1Om/2Du4lZrM8PKVnPnRoxZUlGxjnzTZMC2fmG1D79+OokFp3bZ+dpbPqpHQ9u8W1sJa4fGcDptA==",
52
52
  "license": "Apache-2.0",
53
53
  "workspaces": [
54
54
  "packages/sliccy-browser"
@@ -4,7 +4,7 @@
4
4
  "description": "Packages the BIOS installs from npm into OPFS, pinned by package-lock.json and pnpm-lock.yaml",
5
5
  "dependencies": {
6
6
  "@ai-ecoverse/slicc-browsers": "1.8.4",
7
- "@ai-ecoverse/slicc-cdp": "1.29.2",
7
+ "@ai-ecoverse/slicc-cdp": "1.30.0",
8
8
  "@ai-ecoverse/slicc-clipboard": "1.0.2",
9
9
  "@ai-ecoverse/slicc-kernel": "1.124.2",
10
10
  "@ai-ecoverse/slicc-spectrum": "1.86.4",
@@ -12,8 +12,8 @@ importers:
12
12
  specifier: 1.8.4
13
13
  version: 1.8.4
14
14
  '@ai-ecoverse/slicc-cdp':
15
- specifier: 1.29.2
16
- version: 1.29.2
15
+ specifier: 1.30.0
16
+ version: 1.30.0
17
17
  '@ai-ecoverse/slicc-clipboard':
18
18
  specifier: 1.0.2
19
19
  version: 1.0.2
@@ -99,8 +99,8 @@ packages:
99
99
  resolution: {integrity: sha512-SQGv6pPAsMvnhNI2L7ShDukO2hD61ZZotsTq0PmBVyoglwThB3loSFdUtjUqGI3z6Ds83nZ6UBOSoJVPmqF4Uw==}
100
100
  engines: {node: '>=24'}
101
101
 
102
- '@ai-ecoverse/slicc-cdp@1.29.2':
103
- resolution: {integrity: sha512-DxDk2UjUhhsXWCn0NNdw4CZpl6OtaTiVwkrLvdJl3UAC7m1aEn9OZevDkmDYcGd7bGwuw2yj20jMqPjpcoKqWA==}
102
+ '@ai-ecoverse/slicc-cdp@1.30.0':
103
+ resolution: {integrity: sha512-KSfYuLOA+W1Om/2Du4lZrM8PKVnPnRoxZUlGxjnzTZMC2fmG1D79+OokFp3bZ+dpbPqpHQ9u8W1sJa4fGcDptA==}
104
104
  engines: {node: '>=24'}
105
105
  hasBin: true
106
106
 
@@ -202,7 +202,7 @@ snapshots:
202
202
 
203
203
  '@ai-ecoverse/slicc-browsers@1.8.4': {}
204
204
 
205
- '@ai-ecoverse/slicc-cdp@1.29.2': {}
205
+ '@ai-ecoverse/slicc-cdp@1.30.0': {}
206
206
 
207
207
  '@ai-ecoverse/slicc-clipboard@1.0.2': {}
208
208