{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"huiliyi37-dsh-tianshu-tui","slug":"huiliyi37-dsh-tianshu-tui","rank":40,"url":"https://github.com/huiliyi37/dsh-tianshu-tui","name":"huiliyi37/dsh-tianshu-tui","category":"ui","description":{"zh":"DeepSeek Harness 的终端 UI（TUI）。","en":"A terminal UI (TUI) for DeepSeek Harness."},"stars":228,"starsCheckedAt":"2026-08-21","repository":{"owner":"huiliyi37","repo":"dsh-tianshu-tui","requestedRef":null,"subpath":""},"npm":"@huiliyi37/dsh-tianshu-tui","downloads":1999,"installMode":"npm","upstreamInstall":"dsh plugin --profile web add @huiliyi37/dsh-tianshu-tui","tarball":null,"added":"2026-08-13","page":"https://awesome-dsh-plugin.com/p/huiliyi37/dsh-tianshu-tui/","screenshots":[],"discovery":{"provider":"awesome-dsh-plugin","channel":"plugins.json","indexUrl":"https://github.com/awesome-dsh-plugin/awesome-dsh-plugin","selection":"all curated entries"}},"report":{"sourceId":"huiliyi37-dsh-tianshu-tui","slug":"huiliyi37-dsh-tianshu-tui","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:20:01.467Z","scanStatus":"static-complete","verdict":"pass","score":99,"commit":"1ff44e3dea8c677f48022c79887849df0248bccc","commitDate":"2026-08-20T18:49:25+08:00","artifactDigest":"sha256:f798ed1c3999d473b41e4df224087a11ca6345c0f6282d1483422b42dfe1613a","downloadUrl":"https://github.com/huiliyi37/dsh-tianshu-tui/archive/1ff44e3dea8c677f48022c79887849df0248bccc.tar.gz","installMode":"npm","installCommand":"dsh plugin --profile web add @huiliyi37/dsh-tianshu-tui","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"@huiliyi37/dsh-tianshu-tui","packageVersion":"0.1.2-rc.12","bundle":{"patch":"./cordis.patch.yml"},"client":null,"lifecycleScripts":{},"peerDependencies":["@deepseek-ai/cordis","@deepseek-ai/dsh-agent","@deepseek-ai/dsh-agent-default-model","@deepseek-ai/dsh-attachment","@deepseek-ai/dsh-invariants","@deepseek-ai/dsh-llm","@deepseek-ai/dsh-permission-presets","@deepseek-ai/dsh-session","@deepseek-ai/dsh-session-title","@deepseek-ai/dsh-skill","@deepseek-ai/dsh-subagent","@deepseek-ai/dsh-tools","@deepseek-ai/dsh-user-approval","@deepseek-ai/dsh-user-questions","@deepseek-ai/dsh-workflow"]},"identity":{"status":"found","installMode":"npm","upstreamNpm":"@huiliyi37/dsh-tianshu-tui","manifestName":"@huiliyi37/dsh-tianshu-tui","nameMatch":true,"npm":{"name":"@huiliyi37/dsh-tianshu-tui","latestVersion":"0.1.2-rc.12","publishedAt":"2026-08-20T00:36:00.097Z","createdAt":"2026-08-13T14:13:32.976Z","versionCount":9,"maintainers":1,"repository":"git+https://github.com/huiliyi37/dsh-tianshu-tui.git","hasInstallScripts":false,"deprecated":false},"repositoryMatch":"match","provenance":"none","tarballHost":null,"versionMatch":"match"},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"tui-runner","name":"@huiliyi37/dsh-tianshu-tui","path":"cordis.patch.yml","disabled":false},{"id":"lsp","name":"@deepseek-ai/dsh-lsp","path":"lsp/cordis.patch.yml","disabled":false}],"overrides":[],"jsExpressions":0,"clientPlatform":null,"parseErrors":[]},"capabilities":["agent-control","browser-ui","credentials","environment","filesystem","host-bundle","mcp","network","session","subprocess","telemetry"],"outboundHosts":[{"host":"registry.npmmirror.com","count":3},{"host":"api.deepseek.com","count":2}],"findings":[{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":2,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"ad87a0cff277aadc3d72c624"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":2,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"e702c60f29d582b2ad908346"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/git-status.d.ts","pathClass":"source","line":5,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"ef797b0b5dd0bece9f3a6b0a"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/git-status.d.ts","pathClass":"source","line":9,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"ef797b0b5dd0bece9f3a6b0a"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/lsp/manager.d.ts","pathClass":"source","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"8dcdc1c68778717eb5cc2737"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/lsp/multi-manager.d.ts","pathClass":"source","line":4,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"3950d49f28495d839fb6d2ec"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/lsp/multi-manager.d.ts","pathClass":"source","line":12,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"3950d49f28495d839fb6d2ec"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/types/ui/app.d.ts","pathClass":"source","line":630,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"62d91e929d25f4ddae416519"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"scripts/dev.mjs","pathClass":"source","line":13,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"475b352877cf9559de761153"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"scripts/dev.mjs","pathClass":"source","line":13,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"39fbfb24f87d50fd48a439b8"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/completion/file-completer.ts","pathClass":"source","line":1,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"ebbab012920e1bf37b80d670"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/completion/file-completer.ts","pathClass":"source","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"47169802fd3f782630b9ec3a"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/engine/clipboard-image.ts","pathClass":"source","line":12,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"72625514a3aa2e7d276343c9"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/engine/image-tool.ts","pathClass":"source","line":21,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"6965187762b976c4c76f5e13"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/external-editor.ts","pathClass":"source","line":18,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"de4a04d2764247920f3d8696"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/external-editor.ts","pathClass":"source","line":18,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"a80a27d00ada874223a34aaa"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/git-status.ts","pathClass":"source","line":5,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"737d16e2b0b570454e2696c7"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/git-status.ts","pathClass":"source","line":10,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"737d16e2b0b570454e2696c7"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/lsp/manager.ts","pathClass":"source","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"b170f0bab3e261bb67c9d2de"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/lsp/multi-manager.ts","pathClass":"source","line":4,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"3c1b71c3a641cda61f330fe6"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/lsp/multi-manager.ts","pathClass":"source","line":13,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"3c1b71c3a641cda61f330fe6"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/lsp/server-registry.ts","pathClass":"source","line":10,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"fdb60f8fa599f1c7a1da443b"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/lsp/server-registry.ts","pathClass":"source","line":10,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"583096a13f19066d8661b2c8"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/restart.ts","pathClass":"source","line":16,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"1ef327e3a97e753d03add69e"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/self-update.ts","pathClass":"source","line":8,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"529a3559a1ca5ae4fcffc8bb"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/statusline.ts","pathClass":"source","line":26,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"f33cf5cc860985e043e2c96f"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/ui/app.ts","pathClass":"source","line":2626,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"8b8fead65d116d938437d50f"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/app.spec.ts","pathClass":"test-example-docs","line":1,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"590b8518116937c46d29d111"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/app.spec.ts","pathClass":"test-example-docs","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"894d63debcd131d1ed250c40"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/architecture-guards.spec.ts","pathClass":"test-example-docs","line":13,"evidence":"child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"6ba7d41238a46b171be5f679"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/architecture-guards.spec.ts","pathClass":"test-example-docs","line":21,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"01b13ba98658a4dcba9ce719"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/bundle-contract.spec.ts","pathClass":"test-example-docs","line":6,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"86a451b98275d38771ac6af8"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/bundle-contract.spec.ts","pathClass":"test-example-docs","line":6,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"75d4a9193990be9936081a8a"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/completion.spec.ts","pathClass":"test-example-docs","line":13,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"3f1e6a7ff2bc5591c60c791f"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/completion.spec.ts","pathClass":"test-example-docs","line":13,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"cd159caf55d97582fe9d7044"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/external-editor.spec.ts","pathClass":"test-example-docs","line":5,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"ba883d7dc6ae5c911383b726"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/external-editor.spec.ts","pathClass":"test-example-docs","line":6,"evidence":"child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"d5be4f891b6c2c4d12cb42cf"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/input-controller.spec.ts","pathClass":"test-example-docs","line":15,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"adb5cf4cc8bf8e37c80b8934"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/input-controller.spec.ts","pathClass":"test-example-docs","line":15,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"93902e382e022432d307dd85"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/install-npm-version.spec.ts","pathClass":"test-example-docs","line":5,"evidence":"child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"27b084e1cd8222b85b0477f8"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/install-npm-version.spec.ts","pathClass":"test-example-docs","line":16,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"68344085b33dc5b287f1ef06"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/lsp-bridge.spec.ts","pathClass":"test-example-docs","line":8,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"0cb9e1ffee9da577bb7ee2d2"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/lsp-multi-manager.spec.ts","pathClass":"test-example-docs","line":16,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"1847fc883110784468b4b422"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/lsp-multi-manager.spec.ts","pathClass":"test-example-docs","line":20,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"1847fc883110784468b4b422"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/restart.spec.ts","pathClass":"test-example-docs","line":15,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"69d91a0ac5baa35cc1f8ba4f"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/restart.spec.ts","pathClass":"test-example-docs","line":19,"evidence":"child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"931b08751db6592203551cdd"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"tests/startup-memory.spec.ts","pathClass":"test-example-docs","line":14,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"d1559b51cae078973fc41ad4"}],"counts":{"critical":0,"high":0,"medium":0,"low":27},"rawCounts":{"critical":0,"high":0,"medium":0,"low":47},"vulnerabilities":[],"coverage":{"source":"complete","manifest":"complete","bundleConfig":"complete","dependencies":"lockfile-present","vulnerabilities":"complete","identity":"complete","artifact":"not-compared","llmReview":"not-needed","dynamicRuntime":"not-run","humanReview":"not-run"},"inventory":{"filesScanned":433,"bytesScanned":4073384,"truncated":false,"lockfiles":["package-lock.json"],"pathClasses":{"test-example-docs":121,"data":6,"markdown":32,"cordis":2,"source":269,"manifest":2,"script":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"]},"timeline":[{"scannedAt":"2026-08-22T08:20:01.467Z","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.2","verdict":"pass","status":"static-complete"},{"scannedAt":"2026-08-21T11:18:28.948Z","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.1","verdict":"pass","status":"static-complete"},{"scannedAt":"2026-08-21T10:46:15.186Z","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.0","verdict":"pass","status":"static-complete"}],"events":[{"kind":"policy-change","from":"HT-DSH-0.2.1","to":"HT-DSH-0.2.2","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:20:01.467Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:18:28.948Z"},{"kind":"first-scan","from":null,"to":"pass","commit":"1ff44e3dea8c677f48022c79887849df0248bccc","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T10:46:15.186Z"}]}