diff --git a/CHANGELOG.md b/CHANGELOG.md index 2984aba..84f9ac1 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.4.0 — sin publicar +## 0.4.0 — 7 de octubre de 2026 + +La especificación 0.15, el tag `spec-v0.15` de `datekeys-go`: la recuperación a largo plazo, con el objeto release, los archivos de releases y el release en la mano. El autor la cerró el 7 de octubre de 2026, con el tag `v0.4.0`. La especificación 0.15, de la rama `v0.15` de `datekeys-go`: el objeto release, el release en la mano y el paso 9.c. diff --git a/README.md b/README.md index b64cfaa..f225fa5 100644 --- a/README.md +++ b/README.md @@ -26,18 +26,17 @@ 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. -En desarrollo está la `0.4.0` (`0.4.0-dev` en `package.json`): la especificación 0.15, el objeto release y el release en la mano (§47.1, §49, §50, §63 pasos 9.c y 10). Lee el objeto release y el JSON de drand con los textos de Go, busca la ronda en un archivo de releases local y abre con un release en la mano aunque el reloj vaya atrasado; `/inspect` acepta el release pegado o en un fichero. Lo que cambia está en el [CHANGELOG](CHANGELOG.md). - -La última versión cerrada es la `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 versión actual es la `0.4.0`, del 7 de octubre de 2026, con el tag `v0.4.0`. Cubre: +- la especificación 0.15 (el tag `spec-v0.15` 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); +- el objeto release y el release en la mano (§47.1, §49, §50, §63 pasos 9.c y 10): lee el objeto release y el JSON de drand con los textos de Go, busca la ronda en un archivo de releases local y abre con un release en la mano aunque el reloj vaya atrasado; `/inspect` acepta el release pegado o en un fichero; - 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`), el único que admite §12.1 desde la v0.14: un perfil de otro scheme da `ERR_UNKNOWN_PROFILE`; +- solo el scheme de Quicknet (`bls-unchained-g1-rfc9380`), el único que admite §12.1: 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 `39b2033` (`spec-v0.14`), `tlock_steps.json` incluido; +- todos los vectores y fixtures compartidos de `datekeys-go` en `fe50885` (`spec-v0.15`); - navegadores con Web Crypto y Node 20 o posterior. -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`. +La `0.3.0`, del 6 de octubre de 2026, con el tag `v0.3.0`, cubría la especificación 0.14 sin el objeto release. 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 e108b8a..738b075 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "datekeys-ts", - "version": "0.4.0-dev", + "version": "0.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "datekeys-ts", - "version": "0.4.0-dev", + "version": "0.4.0", "license": "Apache-2.0", "dependencies": { "@noble/ciphers": "2.4.0", diff --git a/package.json b/package.json index 228fa84..4ee1370 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "datekeys-ts", - "version": "0.4.0-dev", + "version": "0.4.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 fd0ede9..5889a48 100644 --- a/src/lib/dkc/version.ts +++ b/src/lib/dkc/version.ts @@ -11,7 +11,7 @@ * implements spec 0.14: one drand scheme and the root of trust byte for byte; * 0.4.0 implements spec 0.15: the release object and a release in hand. */ -export const VERSION = '0.4.0-dev'; +export const VERSION = '0.4.0'; /** * The version of the DateKeys Protocol Specification that this library