From 3abd7bfee88d5e5c09bda20fcec8a4762d6beb19 Mon Sep 17 00:00:00 2001 From: dev Date: Tue, 6 Oct 2026 22:52:27 +0200 Subject: [PATCH] Release 0.3.0 datekeys-ts 0.3.0 implements spec v0.14 (tag spec-v0.14 of datekeys-go): one drand scheme and the root of trust byte for byte, with the vectors of tlock_steps.json, besides everything 0.2.0 does. It is the version frozen for the external review. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 4 +++- README.md | 10 +++++----- package-lock.json | 4 ++-- package.json | 2 +- src/lib/dkc/version.ts | 6 +++--- 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1af6f6b..304cfab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,9 @@ Cambios notables de la librería TypeScript y de la página. El proyecto usa versionado semántico; mientras sea 0.x, no hay promesa de estabilidad. La sección «Versiones» del [README](README.md) explica qué cubre cada número. -## 0.3.0 — sin publicar +## 0.3.0 — 6 de octubre de 2026 + +La especificación 0.14, el tag `spec-v0.14` de `datekeys-go`: un solo scheme de drand y la raíz de confianza byte a byte, con `tlock_steps.json`. El autor la cerró el 6 de octubre de 2026, con el tag `v0.3.0`, para congelarla en el paquete de la revisión externa: la `0.2.0` tenía el `testdata` en `spec-v0.13`. ### La especificación 0.14, aprobada (06-10-2026) diff --git a/README.md b/README.md index e151b87..b93f090 100644 --- a/README.md +++ b/README.md @@ -26,16 +26,16 @@ Hay tres números de versión, cada uno con su significado, como en la referenci `version.test.ts` comprueba que `VERSION` coincide con `package.json` y con su lockfile, y que `SPEC_VERSION` es la versión que nombran los vectores y fixtures compartidos; `vectors.test.ts` exige esa versión a cada fichero. El pie de la página muestra las dos. -La versión en desarrollo es `0.3.0-dev`. La última publicada es `0.2.0`, del 6 de octubre de 2026, con el tag `v0.2.0`, que cubre: -- la especificación 0.13 (el tag `spec-v0.13` de `datekeys-go`): lee los formatos de cápsula 1 a 3 y escribe el 3, y el 2 solo como generador de vectores (§62.1, regla 1); +La versión actual es `0.3.0`, del 6 de octubre de 2026, con el tag `v0.3.0`. Cubre: +- la especificación 0.14 (el tag `spec-v0.14` de `datekeys-go`): lee los formatos de cápsula 1 a 3 y escribe el 3, y el 2 solo como generador de vectores (§62.1, regla 1); - la firma de autor de `alg` 1, con las claves `dkauthor1…`, y la de `alg` 2 con certificados, y el sello RFC 3161: las evalúa al abrir con los veredictos de Go y las escribe con los enganches del escritor; - la llave de palabras, la nota pública y el localizador de `datekeys.capsule`, con su sellado, su sobre y la comprobación de la IP a la que resuelve una dirección, NAT64 incluido; -- solo el scheme de Quicknet (`bls-unchained-g1-rfc9380`): un perfil de otro scheme se inspecciona, pero su release no se verifica (decisión 3 del plan de la fase 2); +- solo el scheme de Quicknet (`bls-unchained-g1-rfc9380`), el único que admite §12.1 desde la v0.14: un perfil de otro scheme da `ERR_UNKNOWN_PROFILE`; - la inspección de los pasos 1 a 8 y la apertura de los pasos 9 a 18, desde un `Uint8Array` o un `Blob` y hacia memoria o hacia un stream de salida, y las páginas `/inspect` y `/create`; -- todos los vectores y fixtures compartidos de `datekeys-go` en `913dd60` (`spec-v0.13`); +- todos los vectores y fixtures compartidos de `datekeys-go` en `39b2033` (`spec-v0.14`), `tlock_steps.json` incluido; - navegadores con Web Crypto y Node 20 o posterior. -La anterior es `0.1.0`, del 29 de septiembre de 2026, con el tag `v0.1.0`: la especificación 0.9, leer los formatos 1 y 2, y la página `/inspect`. +La `0.2.0`, del mismo día, con el tag `v0.2.0`, cubría lo mismo para la especificación 0.13. La anterior es `0.1.0`, del 29 de septiembre de 2026, con el tag `v0.1.0`: la especificación 0.9, leer los formatos 1 y 2, y la página `/inspect`. [CHANGELOG.md](CHANGELOG.md) recoge los cambios de cada versión. diff --git a/package-lock.json b/package-lock.json index b160afd..5eaebd2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "datekeys-ts", - "version": "0.3.0-dev", + "version": "0.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "datekeys-ts", - "version": "0.3.0-dev", + "version": "0.3.0", "license": "Apache-2.0", "dependencies": { "@noble/ciphers": "2.4.0", diff --git a/package.json b/package.json index 00f065a..068de66 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "datekeys-ts", - "version": "0.3.0-dev", + "version": "0.3.0", "private": true, "description": "DateKeys in TypeScript: canonical CBOR codec, DKC1/DKK1 parsers, capsule inspector library and its static inspector page; later, browser encryption and decryption.", "license": "Apache-2.0", diff --git a/src/lib/dkc/version.ts b/src/lib/dkc/version.ts index d73a4d9..bfc2acf 100644 --- a/src/lib/dkc/version.ts +++ b/src/lib/dkc/version.ts @@ -7,10 +7,10 @@ * The version of this library, as in package.json. 0.1.0 inspects and opens * the capsules of both formats of spec 0.9; 0.2.0 implements spec 0.13: it * reads formats 1 to 3 and writes format 3, signed and sealed, with the key - * of words, the public note and the locator of datekeys.capsule; 0.3.0-dev - * is what comes after it. + * of words, the public note and the locator of datekeys.capsule; 0.3.0 + * implements spec 0.14: one drand scheme and the root of trust byte for byte. */ -export const VERSION = '0.3.0-dev'; +export const VERSION = '0.3.0'; /** * The version of the DateKeys Protocol Specification that this library