@ai-matrx/vault 0.1.52 → 0.1.54
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/CHANGELOG.md +14 -1
- package/dist/index.cjs +6 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.1.
|
|
3
|
+
## 0.1.54
|
|
4
4
|
|
|
5
5
|
UNVERIFIED: this release has no Unreleased entry and the package-input comparison could not be made (the caller supplied no source comparison). Whether package inputs changed is unknown; consumer action is unknown.
|
|
6
6
|
Check the package's gitHead on npm against this version's gitHead: `git diff <previous gitHead> <this gitHead> -- apps/shared/vault`.
|
|
7
7
|
|
|
8
|
+
## 0.1.53
|
|
9
|
+
|
|
10
|
+
- Added the shared Password health view, durable scan recovery, explicit unchecked breach lookup, current-result accounting and existing editor remediation. Consumer action: adopt the compatible generated API with health stream types and runtime follower before this Vault package, and verify server support. Breach checks require explicit selection; unknown coverage remains visible. Installed and native acceptance remain separate.
|
|
11
|
+
- Web workspace lifecycle now retires account/context caches and pending findings while same-user token refresh preserves in-place confirmation. Durable runtime notes restore progress counts. Consumer action: retire the complete host workspace on actor/context changes without keying it to ordinary bearer refresh.
|
|
12
|
+
|
|
13
|
+
## 0.1.52
|
|
14
|
+
|
|
15
|
+
- Added Password health with confirmed scans, address-backed recovery, count-only progress, current-result validation and links into the existing item editor. Breach lookup starts unchecked and requires explicit selection. The optional `VaultPort.health` supplies scan, resume, read, identify and follow operations; older custom ports show the view as unavailable.
|
|
16
|
+
|
|
17
|
+
Consumer action: upgrade `@ai-matrx/api` to the current latest before adopting this package, including the account health endpoints, health stream types and runtime-operation follower, and verify that the server supports them. API-backed hosts receive the health port automatically. Custom hosts enabling it must supply the optional port and preserve `healthRequestId` and `healthExecutionId` through their location round trip. Keep the existing confirmation flow and explicit breach selection.
|
|
18
|
+
|
|
8
19
|
## 0.1.51
|
|
9
20
|
|
|
10
21
|
- Recorded two-factor methods now show Not recorded for unsupported or duplicate metadata, in both draft and saved-item views. Existing `sms` and `push_or_other` values keep their meaning. Consumer action: none; no new stored value or choice is introduced.
|
|
@@ -348,6 +359,8 @@ Changed shipped source files (8):
|
|
|
348
359
|
## 0.1.7
|
|
349
360
|
### Unreleased
|
|
350
361
|
|
|
362
|
+
- Saved health recovery shows Checking status while its read is pending. A missing execution or failed initial recovery read settles as Unavailable and keeps Retry available. Consumer action: none; the existing request/execution handle round trip is unchanged.
|
|
363
|
+
|
|
351
364
|
- Host-held lock: `host.lock` (`VaultLock`: `locked`, `subscribe`, `unlock`, optional `lock` and
|
|
352
365
|
`unlockLabel`). While locked the vault shows only "Vault locked" with Unlock, and every port call
|
|
353
366
|
(areas included) is refused at call time (`guardPort`, `VaultLockedError`). "Lock" joins the
|
package/dist/index.cjs
CHANGED
|
@@ -682,7 +682,7 @@ function PasswordHealthView(props) {
|
|
|
682
682
|
const latest = (0, import_react4.useRef)(props);
|
|
683
683
|
latest.current = props;
|
|
684
684
|
const [result, setResult] = (0, import_react4.useState)(null);
|
|
685
|
-
const [status, setStatus] = (0, import_react4.useState)("No report");
|
|
685
|
+
const [status, setStatus] = (0, import_react4.useState)(requestId || executionId ? "Checking status" : "No report");
|
|
686
686
|
const [error, setError] = (0, import_react4.useState)(null);
|
|
687
687
|
const [progress, setProgress] = (0, import_react4.useState)(null);
|
|
688
688
|
const [busy, setBusy] = (0, import_react4.useState)(false);
|
|
@@ -734,6 +734,7 @@ function PasswordHealthView(props) {
|
|
|
734
734
|
if (!owns(controller)) return;
|
|
735
735
|
id = known.operations[0]?.execution_id;
|
|
736
736
|
if (!id) {
|
|
737
|
+
setStatus("Unavailable");
|
|
737
738
|
setError("Status unavailable");
|
|
738
739
|
return;
|
|
739
740
|
}
|
|
@@ -770,10 +771,12 @@ function PasswordHealthView(props) {
|
|
|
770
771
|
const own = ownedAddress.current;
|
|
771
772
|
if (own && own.request === requestId && own.execution === executionId && own.items === items && own.retry === retry && active.current && !active.current.signal.aborted) return;
|
|
772
773
|
const controller = fresh();
|
|
774
|
+
setStatus(requestId || executionId ? "Checking status" : "No report");
|
|
773
775
|
void recover(requestId, executionId, controller).catch((e) => {
|
|
774
776
|
if (owns(controller)) {
|
|
775
777
|
setResult(null);
|
|
776
778
|
setError(problem(e));
|
|
779
|
+
setStatus((value) => value === "Checking status" ? "Unavailable" : value);
|
|
777
780
|
}
|
|
778
781
|
}).finally(() => {
|
|
779
782
|
if (owns(controller)) setBusy(false);
|
|
@@ -861,6 +864,7 @@ function PasswordHealthView(props) {
|
|
|
861
864
|
}
|
|
862
865
|
setResult(null);
|
|
863
866
|
setError(problem(e));
|
|
867
|
+
setStatus((value) => value === "Checking status" ? "Unavailable" : value);
|
|
864
868
|
} finally {
|
|
865
869
|
starting.current = false;
|
|
866
870
|
if (owns(controller)) {
|
|
@@ -9683,7 +9687,7 @@ var import_account = require("@ai-matrx/api/account");
|
|
|
9683
9687
|
var import_architecture = require("@ai-matrx/api/architecture");
|
|
9684
9688
|
function createHealthPort(api) {
|
|
9685
9689
|
return {
|
|
9686
|
-
start: (requestId, signal,
|
|
9690
|
+
start: (requestId, signal, options) => (0, import_account.startPasswordHealthScan)(api, { body: options.check_breaches ? { check_breaches: true } : {} }, { requestId, signal, totalTimeoutMs: null }),
|
|
9687
9691
|
resume: (executionId, requestId, signal) => (0, import_account.resumePasswordHealthScan)(api, { path: { execution_id: executionId } }, { requestId, signal, totalTimeoutMs: null }),
|
|
9688
9692
|
read: (executionId, signal) => (0, import_account.getPasswordHealthScan)(api, { path: { execution_id: executionId } }, { signal }),
|
|
9689
9693
|
identify: (requestId, signal) => (0, import_architecture.operationStatus)(api, { path: { request_id: requestId } }, { signal }),
|