Skip to content

chore(core): 0.7.0 — a minor, because the exported types changed - #158

Merged
stormer78 merged 1 commit into
mainfrom
chore/core-0.7.0
Sep 3, 2026
Merged

chore(core): 0.7.0 — a minor, because the exported types changed#158
stormer78 merged 1 commit into
mainfrom
chore/core-0.7.0

Conversation

@stormer78

Copy link
Copy Markdown
Contributor

Version bump and changelog for @openvtc/pnm-core, ready to publish. npm still serves 0.6.0, which predates the console work now on main.

Why minor, not patch

Four exported types now come from @openvtc/trust-tasks instead of being declared locally, and three had drifted from the published schema.

AclSwapResult is the sharp one. swapAcl typed its reply as a flat ACL entry — did, role, allowedContexts, createdAt: number. The agent has responded { entry, previousSubject } since VTI #857, with subject not did and scopes not allowedContexts inside. Every field a caller read came back undefined.

Nothing in this repo calls swapAcl, so no code here breaks — but any consumer reading the old shape was already getting nothing, and the new shape is what the agent actually sends.

The rest:

type was is
ContextRecord.did / .description string | null optional — a conforming agent omits them, so === null never matched
WebvhDidRecord serverId/portable optional, seven members missing schema shape, mnemonic/scid/logEntryCount/createdAt/… available
PushRegistration inline webpush object the generated WebPush variant

The changelog also records the two deleted casing folds and the removal of the exported fold() helper, since that is a public symbol going away.

Verified as it would publish

Not just that it builds. files: ["dist"] means a stale or missing dist ships a broken package and nothing else in CI would catch it:

  • npm pack --dry-run resolves 0.7.0, 498 files, with the new vault/credentials and admin/backup modules present in the tarball
  • the built dist entry points import cleanly in plain Node — backupAbort, reloadServices, credVaultGet, isRunnableCredentialQuery all resolve

Dependents moved to ^0.7.0 (extension, pwa) with the lockfile. Cold npm run clean && npm run lint && npm run build && npm test — 736 tests green.

Publishing is manual and needs the OTP, so that stays with the maintainer.

Minor rather than patch, and the reason is in the Migration section: four
exported types now come from `@openvtc/trust-tasks` instead of being
declared here, and three of them had drifted from the schema.

`AclSwapResult` is the sharp one. `swapAcl` typed its reply as a flat ACL
entry; the agent has responded `{ entry, previousSubject }` since VTI #857,
with `subject` not `did` and `scopes` not `allowedContexts` inside. Every
field a caller read came back `undefined`. Nothing in this repo calls it,
so the change breaks no code here — but any consumer reading the old shape
was already getting nothing, and the new shape is what the agent sends.

`ContextRecord.did`/`.description` moved from `string | null` to optional,
which matters to anyone testing `=== null` — that test never matched a
conforming agent and never will. `WebvhDidRecord` gained seven members it
had been omitting. `PushRegistration` is the generated `WebPush` variant.

Also records the two deleted casing folds and the removal of the exported
`fold()` helper, since that is a public symbol going away.

Dependents moved to `^0.7.0` (extension, pwa) and the lockfile with them.

Verified as it would publish, not just as it builds: `npm pack --dry-run`
resolves 0.7.0 with the new `vault/credentials` and `admin/backup` modules
present, and the built `dist` entry points import cleanly in plain Node —
`files: ["dist"]` means a stale dist ships a broken package and nothing else
would have caught it.

Cold clean/lint/build/test green; 736 tests.

Signed-off-by: Glenn Gore <glenn.g@affinidi.com>
@stormer78
stormer78 merged commit 0f06f01 into main Sep 3, 2026
3 checks passed
@stormer78
stormer78 deleted the chore/core-0.7.0 branch September 3, 2026 09:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant