From 2c82f2ac4d76b0ebdf0f434aad1047654c758638 Mon Sep 17 00:00:00 2001 From: elffuss-bot Date: Fri, 2 Oct 2026 06:48:24 +0000 Subject: [PATCH] event 195 progress --- ...fac326405feffb8f8796b15d27cbc6f857bbef2a91 | 23 +++++++++++++++++++ events/0000000195.json | 1 + 2 files changed, 24 insertions(+) create mode 100644 blobs/0x44e4f3f7cfa2482dc154c1fac326405feffb8f8796b15d27cbc6f857bbef2a91 create mode 100644 events/0000000195.json diff --git a/blobs/0x44e4f3f7cfa2482dc154c1fac326405feffb8f8796b15d27cbc6f857bbef2a91 b/blobs/0x44e4f3f7cfa2482dc154c1fac326405feffb8f8796b15d27cbc6f857bbef2a91 new file mode 100644 index 0000000..01a89ca --- /dev/null +++ b/blobs/0x44e4f3f7cfa2482dc154c1fac326405feffb8f8796b15d27cbc6f857bbef2a91 @@ -0,0 +1,23 @@ +diff --git a/tests/acceptance/1/criteria.test.js b/tests/acceptance/1/criteria.test.js +new file mode 100644 +index 0000000000000000000000000000000000000000..df9f30c5f42fd5d06cc8958f913a692290c10bc5 +--- /dev/null ++++ b/tests/acceptance/1/criteria.test.js +@@ -0,0 +1 @@ ++import { test } from 'node:test'\nimport assert from 'node:assert/strict'\nimport { readFileSync } from 'node:fs'\nimport * as mod from '../../../web/js/lab.js' // the code under test: call it as mod.(...)\nconst source = readFileSync(new URL('../../../web/js/lab.js', import.meta.url), 'utf8') // the text of web/js/lab.js, for a criterion about how the file is written\n\ntest('criterion 1', () => {\n // Every `litert:` entry of `BRAINS` has a `` that is a key of `MODELS` from providers/litert.js.\n const brains = mod.getBrains();\n const models = mod.getModels();\n for (const brain of brains) {\n if (brain.type === 'litert') {\n const key = brain.key;\n assert.ok(models.hasOwnProperty(key), `Key ${key} in BRAINS is not in MODELS`);\n }\n }\n})\n\ntest('criterion 2', () => {\n // The label of each `litert:` entry of `BRAINS` equals the `label` of `MODELS[]`.\n const brains = mod.getBrains();\n const models = mod.getModels();\n for (const brain of brains) {\n if (brain.type === 'litert') {\n const key = brain.key;\n assert.equal(brain.label, models[key].label, `Label mismatch for key ${key}`);\n }\n }\n})\n\ntest('criterion 3', () => {\n // The `BRAINS` list still contains the entries `rules` and `onnx` unchanged.\n const brains = mod.getBrains();\n const hasRules = brains.some(b => b.key === 'rules');\n const hasOnnx = brains.some(b => b.key === 'onnx');\n assert.ok(hasRules, 'BRAINS list does not contain "rules"');\n assert.ok(hasOnnx, 'BRAINS list does not contain "onnx"');\n})\n +\ No newline at end of file +diff --git a/web/js/lab.js b/web/js/lab.js +index b42c64109c68f5d95209e6f2eb7ba3847099e7ad..84264604b0bd0d50488354fbd5caf554a5c88f11 100644 +--- a/web/js/lab.js ++++ b/web/js/lab.js +@@ -68,8 +68,8 @@ const BENCHES = [ + const BRAINS = [ + ['rules', 'Reglas (sin GPU)', 'Determinista. Valida el arnés sin bajar pesos.'], + ['onnx', 'Elffuss LM (CPU/wasm)', 'LFM2.5-1.2B por transformers.js.'], +- ['litert:gemma-e2b', 'Gemma-4 E2B (~2 GB)', 'WebGPU.'], +- ['litert:gemma-e4b', 'Gemma-4 E4B (~3 GB)', 'WebGPU. El mejor.'], ++ ['litert:gemma-e2b', 'Gemma-4 E2B (~2 GB)', 'WebGPU.'] ++ ['litert:gemma-e4b', 'Gemma-4 E4B (~4 GB)', 'WebGPU. El mejor.'] + ]; + + // ─────────────────────────── consola ─────────────────────────── diff --git a/events/0000000195.json b/events/0000000195.json new file mode 100644 index 0000000..a4cd592 --- /dev/null +++ b/events/0000000195.json @@ -0,0 +1 @@ +{"data":{"envelope":{"delegation":{"identity":"0xe0425bed061809c5ce17450fe47dc970090a0938","nonce":"1790923270","project":"0x0000000000000000000000000000000000000000000000000000000000000000","scopes":3,"sessionX":"0x965ee667b228d5242d2d86989eea6d4879c4ad1de748a7bcae861f2baff69398","sessionY":"0x4109e51c15fd0376e2f76a2b5cf293cdf9fb69f7ac1f617c13ddbb117fe34669","validFrom":"1790923270","validUntil":"1791528070"},"delegationSignature":"0x4322f7ca1df9e93982471f2e75c20c605df23e92aa5da74809aeaa8fc498579623912c8227ebe106c0529f958b988700ce2aa17a2667ef65de01df41d39cc5261c","kind":"session","signature":"0xf7830fa3175dbcc5309908935f339e9de8b7a74f3876117b652735bd42ec0bdc75987b3e723f6bdd6f26f749fcd26e9d7a7876cc4e5171de68492204faa0b529"},"message":{"attempts":3,"author":"0xe0425bed061809c5ce17450fe47dc970090a0938","baseCommit":"0x42a4a9a67cda0da050ec0e73e6294537cce1e541","goal":"Update web/js/lab.js to derive Gemma entries in the brain list from web/js/providers/litert.js","issuedAt":"1790923702","itemId":"0x98af41382a923eef01638384bcc8d526a740592b72ba9baa5014d6b5687720e2","model":"litert:gemma-e4b","nonce":"1790923702000","notes":"Worked: Changed web/js/lab.js, tests/acceptance/1/criteria.test.js.\nBlocker: The acceptance tests are missing for these criteria: 1. Every `litert:‹key›` entry of `BRAINS` has a `‹key›` that is a key of `MODELS` from providers/litert.js. 2. The label of each `litert:‹key›` entry of `BRAINS` equals the `label` of `MODELS[‹key›]`. 3. The `BRAINS` list still contains the entrie\nNext: Fix this and finish: The acceptance tests are missing for these criteria: 1. Every `litert:‹key›` entry of `BRAINS` has a `‹key›` that is a key of `MODELS` from providers/litert.js. 2. The label of each `litert:‹key›` entry of `BRAINS` equals the `label` of `MODELS[‹key›]`. 3. The `BRAINS` list still contains the entrie.","parent":"0x0000000000000000000000000000000000000000000000000000000000000000","patchHash":"0x44e4f3f7cfa2482dc154c1fac326405feffb8f8796b15d27cbc6f857bbef2a91","project":"0x16d6e75341c5f21003a4d9e89b416a545f7335094d7df139fd20942c9b7fb2de","status":2}},"eventHash":"0xa0ed4c94643f190d891ccf603b5ac1021ae47da9f5157a0b80a82c19e986278f","gatewaySignature":"0x51ef2c95e986b2222effbef381b1ec510d051506627d643ece7da2b58b5402dd54b8734a5b15eb0970947e87c5d58c7c8b0c7fbe488757a3a9ab82e1086f7b991c","prev":"0x58be023ddc29ae552e9a3fab54b3cc066e30c70769183deadd9ce1bde054583e","seq":195,"ts":1790923704,"type":"progress","v":2}