Skip to content

Releases: Ox0400/dsh-vault

v0.9.0

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:49

dsh-vault v0.9.0 — Round 30 (finale)

✨ New features

  • vault_verify all: true — audit every active entry at once; returns audited / withIssues counts plus a per-entry issue list (no secrets).
  • vault_duplicates mode — explicit both (default) / title / content duplicate-group modes.
  • vault_report enrichment — per-entry lines now include rotation interval, TOTP and high-sensitivity markers, plus a stats footer (total, byKind, totp, privateKey, high, expired, rotationDue).
  • backupRetention configvault_backup and the UI backup button honor the configured retention (default 10).
  • UI: duplicate-groups badge — the health bar shows how many title+kind duplicate groups exist.

🧪 Quality

  • 165 tests passing (4 new: verify-all audit, duplicates modes, report stats footer, retention config default).

🎉 30-round milestone

This closes the 30-round build-out: every round shipped development → tests → typecheck → build → push, with releases on significant rounds. Latest version: 0.9.0.


dsh-vault v0.9.0 — 第 30 轮(收官)

✨ 新功能

  • vault_verify all: true —— 一次性审计全部条目;返回 audited/withIssues 计数与逐条问题列表(不含密钥)。
  • vault_duplicates mode —— 明确的 both(默认)/ title / content 重复分组模式。
  • vault_report 增强 —— 每行新增轮换周期、TOTP 与高敏标记,并附统计页脚(total、byKind、totp、privateKey、high、expired、rotationDue)。
  • backupRetention 配置 —— vault_backup 与 UI 备份按钮遵循配置的保留数量(默认 10)。
  • UI:重复分组徽章 —— 健康栏显示 title+kind 重复分组数量。

🧪 质量

  • 165 个测试全部通过(新增 4 个:verify-all 审计、duplicates 模式、report 统计页脚、保留配置默认值)。

🎉 30 轮里程碑

至此完成 30 轮迭代:每轮均完成开发 → 测试 → typecheck → build → push,重大功能轮次附带发布。当前版本:0.9.0

v0.8.9

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:45

dsh-vault v0.8.9 — Round 29

✨ New features

  • vault_rotation soonWindowDays: tune how many days ahead counts as "expiring soon" (1–90, default 7) — tool and gateway.
  • vault_merge keepSource: keep the source entry after merging (default deletes it, Bitwarden-style).
  • vault_quick_add tags/notes: fast capture now accepts searchable tags and free-form notes.
  • UI: "Backup now" button — one-click encrypted backup from Settings (uses the retention policy, refreshes the backup-age badge, reports kept/pruned).

🐛 Bug fixes

  • expiresAt: 0 now genuinely clears the expiry (consistent with rotationDays: 0): the store deletes the field instead of storing a zero that would report the entry as expired forever. vault_expiry now passes 0 directly instead of an internal empty-string hack.

🧪 Quality

  • 161 tests passing (4 new: expiry-clear + soon-window, merge keepSource, quick-add tags/notes, expiry-clear via tool).

dsh-vault v0.8.9 — 第 29 轮

✨ 新功能

  • vault_rotation soonWindowDays:调整“即将到期”的天数窗口(1–90,默认 7)——工具与 gateway 均支持。
  • vault_merge keepSource:合并后保留源条目(默认删除,Bitwarden 风格)。
  • vault_quick_add tags/notes:快速录入现支持可搜索的 tags 与自由 notes
  • UI:“立即备份”按钮 —— 设置页一键加密备份(遵循保留策略,刷新备份天数徽章,报告 kept/pruned)。

🐛 修复

  • expiresAt: 0 现在真正清除过期(与 rotationDays: 0 一致):store 删除该字段,而非存储 0 导致条目永远显示已过期。vault_expiry 直接传 0,移除了内部空字符串 hack。

🧪 质量

  • 161 个测试全部通过(新增 4 个:过期清除 + soon 窗口、merge keepSource、quick-add tags/notes、工具层过期清除)。

v0.8.8

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:41

dsh-vault v0.8.8 — Round 28

✨ New features

  • Passphrase generator (vault_generate_password passphrase: true): memorable "correct-horse-battery-staple" style phrases from a 128-word EFF-style list, with words (2–12), separator, and wordDigits options.
  • Backup retention (vault_backup): old backups beyond maxBackups (default 10) are pruned automatically — returns kept/pruned counts.
  • Editor: expiry & rotation fields — the Settings UI editor now supports expiresAt (datetime picker), rotationDays (0 clears rotation), sensitivity (normal/high), and a favorite/pin checkbox.
  • UI: rotation report lists titles — the health report now shows which entries are expired / due / expiring soon, with remaining days.
  • vault_stats trashCount — overview now reports how many entries sit in the trash.

🧪 Quality

  • 156 tests passing (3 new: backup retention pruning, stats trashCount, passphrase mode).

dsh-vault v0.8.8 — 第 28 轮

✨ 新功能

  • 口令短语生成vault_generate_password passphrase: true):基于 128 词 EFF 风格词表的易记口令(correct-horse-battery-staple 风格),支持 words(2–12)、separatorwordDigits
  • 备份保留策略vault_backup):超过 maxBackups(默认 10)的旧备份自动清理,返回 kept/pruned 计数。
  • 编辑器新增过期与轮换字段 —— 设置 UI 编辑器现支持 expiresAt(日期时间选择器)、rotationDays(0 清除轮换)、sensitivity(普通/高敏)与置顶复选框。
  • UI:轮换报告列出条目 —— 健康报告现在显示哪些条目已过期/待轮换/即将到期及剩余天数。
  • vault_stats trashCount —— 概览新增回收站条目计数。

🧪 质量

  • 156 个测试全部通过(新增 3 个:备份保留清理、stats trashCount、口令短语模式)。

v0.8.7

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:38

dsh-vault v0.8.7 — Round 27

✨ New features

  • vault_apply_tags: bulk add / remove / replace tags on every entry matching a search query (empty query = all active entries). Supports dryRun to preview changes without writing.
  • vault_count tag filter: count active entries by kind and/or tag.
  • UI: expiry / rotation row highlights — entries that are expired (red), rotation-due, or expiring soon (amber) are now highlighted in the list with a badge showing the remaining days.
  • UI: password strength distribution — the health bar now shows a live W/F/S (weak/fair/strong) breakdown from the vault health scan.

🐛 Bug fixes

  • vault_import_csv with overwrite: true previously inserted a duplicate entry instead of updating the existing one — it now merges the CSV fields into the matching entry (empty cells are ignored, so partial rows never blank a credential) and reports an updated count. Browser/wallet imports report updated: 0 consistently.

🧪 Quality

  • 153 tests passing (3 new: apply-tags bulk ops + dry-run, count filters, csv overwrite-update).

dsh-vault v0.8.7 — 第 27 轮

✨ 新功能

  • vault_apply_tags:按搜索查询对命中条目批量增/删/替换标签(空查询 = 全部条目),支持 dryRun 预览而不落盘。
  • vault_count 标签过滤:可按 kind 和/或 tag 统计条目数。
  • UI:到期/轮换行高亮 —— 已过期(红)、待轮换/即将到期(琥珀)的条目在列表中高亮并显示剩余天数徽章。
  • UI:密码强度分布 —— 健康栏实时显示 W/F/S(弱/中/强)分布。

🐛 修复

  • vault_import_csvoverwrite: true 此前会插入重复条目而非更新 —— 现已将 CSV 字段合并进匹配条目(空单元格被忽略,局部行不会清空凭据),并返回 updated 计数;浏览器/wallet 导入统一返回 updated: 0

🧪 质量

  • 153 个测试全部通过(新增 3 个:apply-tags 批量操作与 dry-run、count 过滤、csv overwrite 更新)。

v0.8.6

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:34

dsh-vault v0.8.6 — Round 26

✨ New features

  • vault_compare: field-by-field diff of two entries (onlyA / onlyB / differ / equal) — field names only, never secret values.
  • vault_rename: rename an entry in one call (shortcut for vault_update).
  • vault_search time-range filters: optional createdAfter / createdBefore (epoch millis) to filter results.
  • UI: vault health bar — live badges for entry/TOTP/high-sensitivity counts, rotation due, weak passwords, reused credentials, and backup age (color-coded: ok / warn / danger). Health data now actually loads (previously the report box never populated).

🐛 Bug fixes

  • rotationDays: 0 now clears rotation ("never rotate") instead of keeping a zero interval that reported the entry as due forever (both on add and update).

🧪 Quality

  • 150 tests passing (4 new: compare, rename, time-range search, rotationDays-0 clearing).

dsh-vault v0.8.6 — 第 26 轮

✨ 新功能

  • vault_compare:逐字段比较两个条目(onlyA/onlyB/differ/equal)——只返回字段名,绝不返回密钥值。
  • vault_rename:一次调用重命名条目(vault_update 的快捷方式)。
  • vault_search 时间范围过滤:新增可选 createdAfter/createdBefore(毫秒时间戳)。
  • UI:保险库健康栏——条目数/TOTP/高敏计数、待轮换、弱密码、复用凭据、备份天数等彩色徽章(绿/黄/红)。健康数据此前从未真正加载,现已修复并实时展示。

🐛 修复

  • rotationDays: 0 现在表示清除轮换(永不轮换),而非保留 0 间隔导致条目永远显示“到期”(add 与 update 均生效)。

🧪 质量

  • 150 个测试全部通过(新增 4 个:compare、rename、时间范围搜索、rotationDays=0 清除)。

dsh-vault v0.8.5

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:29

v0.8.5 — pass import, export subsets, restore-all

  • vault_import_wallet: import pass .gpg files (login:/email:/url: metadata)
  • vault_export: ids subset param (encrypted export of selected entries)
  • vault_env: ids param
  • UI: Restore-all button in the trash view

75 tools, 146 tests.

dsh-vault v0.8.4

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:27

v0.8.4 — pass export, redacted reads, batch get, import merge

  • vault_export_wallet: pass-compatible .gpg files (standard Unix password manager)
  • vault_get: redact param masks secret fields
  • vault_get_many: batch read with a fields whitelist
  • Bug fix: vault_import merges into existing entries (fills gaps) instead of skipping
  • UI: recently-added list

73 tools, 143 tests.

dsh-vault v0.8.3

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:26

v0.8.3 — Trash search, bulk restore, stats

  • vault_search_history: search including deleted entries (deleted flag)
  • vault_undelete_all: restore every trashed entry
  • vault_stats: withPrivateKey count
  • UI: copy-TOTP-code button

71 tools, 140 tests.

dsh-vault v0.8.2

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:24

v0.8.2 — Autofill check, HOTP, explicit backup

  • vault_autofill_check: does a URL/host have credentials? (never returns the secret)
  • vault_totp: HOTP counter mode (RFC 4226)
  • vault_backup_now: explicit immediate-backup alias
  • Bug fix: vault_autofill_check empty-host false match; vault_import_csv numeric overflow guard
  • UI: icon/color fields in the entry form

69 tools, 137 tests.

dsh-vault v0.8.1

Choose a tag to compare

@Ox0400 Ox0400 released this 14 Aug 16:22

v0.8.1 — Browser import, CSV secrets toggle, content duplicates

  • vault_import_browser: import Chrome/Firefox/Edge CSV (name,url,username,password)
  • vault_export_csv: includeSecrets toggle (default secret-free) + path param
  • Bug fix: vault_search_advanced limit default via validateLimit
  • vault_duplicates: content-based grouping (same username+credential)
  • UI: footer shows days since last backup

67 tools, 134 tests.