@lqc123qwe/car-runtime 1.14.0 → 1.14.1

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/README.md CHANGED
@@ -286,7 +286,8 @@ node --experimental-transform-types --test test/*.spec.ts
286
286
 
287
287
  ## 状态
288
288
 
289
- - **版本主线**:S1-S4 48/48 | M2 89/89(v0.2.0)| M3 127/127(v0.3.0)| M4 139/139(**1.0.0-rc.1 已发布**)| M5 156/156(DEC-4 预埋项转正)| M6 179/179(2026-09-15 收口)| M7 全量 195(192 PASS + 3 能力门控 skip,2026-09-19 收口)| **M5-S28 装载签名门 全量 204(201 PASS + 3 skip,2026-09-26)** | **M8 运行时底座 全量 231(228 PASS + 3 skip,2026-09-26 收口,§3.2 八模块全部收口)** | **1.1 签名收尾最小集 全量 249(246 PASS + 3 skip,2026-09-27 收口,1.1.0 已发布,enforce 翻转准备就绪)** | **1.2 会话/遥测小项 全量 263(260 PASS + 3 skip,2026-09-27 收口,1.2.0 已发布)** | **1.3 发布资产自动化 全量 270(267 PASS + 3 skip,2026-09-27 收口,1.3.0 已发布,全链零人工拖拽兑现)** | **1.4 真实模型接入 全量 282(279 PASS + 3 skip,2026-09-27 收口,1.4.0 已发布)** | **1.5 provider 扩展+远程 MCP+配置完整形态 全量 300(297 PASS + 3 skip,2026-09-28 收口,1.5.0 已发布)** | **1.6 宿主工具面+投影收敛+jiti 载体 全量 318(315 PASS + 3 skip,2026-09-28 收口,1.6.0 已发布)** | **1.7 OTLP span 语义收口+metrics 时序修正+mcp-serve span 面 全量 328(325 PASS + 3 skip,2026-09-28 收口,1.7.0 已发布)** | **1.8 W3C traceparent 跨进程传播+LLM 出站通道修复 全量 335(332 PASS + 3 skip,2026-09-29 收口,1.8.0 已发布)** | **1.9 远程 MCP traceparent 传播(HTTP 头通道) 全量 339(336 PASS + 3 skip,2026-09-29 收口,1.9.0 已发布)** | **1.10 KernelSeam 公开导出面+库构建产物 全量 341(338 PASS + 3 skip,2026-09-29 收口,1.10.0 已发布)** | **1.11 seam authz 导出+usage 事件计量采集 全量 355(352 PASS + 3 skip,2026-10-07 收口,1.11.0 已发布)** | **1.12 seam MCP/PTC 真桥导出面+jiti epoch 面确认 全量 363(360 PASS + 3 skip,2026-10-07 收口,1.12.0 已发布)** | **1.13 桌面 S3 治理面(K-FS-1/2/3+K-SC-1 authorizeAll/decideByRule/fs-read·fs-delete 能力 + seam 出面 redact/loadSessionLog/exportForensicsBundle;恢复面 K-S3-2 零登记确认——fromEvents 自 M5 在产) 全量 374(371 PASS + 3 skip,2026-10-11 收口,1.13.0 已发布)**
289
+ - **版本主线**:S1-S4 48/48 | M2 89/89(v0.2.0)| M3 127/127(v0.3.0)| M4 139/139(**1.0.0-rc.1 已发布**)| M5 156/156(DEC-4 预埋项转正)| M6 179/179(2026-09-15 收口)| M7 全量 195(192 PASS + 3 能力门控 skip,2026-09-19 收口)| **M5-S28 装载签名门 全量 204(201 PASS + 3 skip,2026-09-26)** | **M8 运行时底座 全量 231(228 PASS + 3 skip,2026-09-26 收口,§3.2 八模块全部收口)** | **1.1 签名收尾最小集 全量 249(246 PASS + 3 skip,2026-09-27 收口,1.1.0 已发布,enforce 翻转准备就绪)** | **1.2 会话/遥测小项 全量 263(260 PASS + 3 skip,2026-09-27 收口,1.2.0 已发布)** | **1.3 发布资产自动化 全量 270(267 PASS + 3 skip,2026-09-27 收口,1.3.0 已发布,全链零人工拖拽兑现)** | **1.4 真实模型接入 全量 282(279 PASS + 3 skip,2026-09-27 收口,1.4.0 已发布)** | **1.5 provider 扩展+远程 MCP+配置完整形态 全量 300(297 PASS + 3 skip,2026-09-28 收口,1.5.0 已发布)** | **1.6 宿主工具面+投影收敛+jiti 载体 全量 318(315 PASS + 3 skip,2026-09-28 收口,1.6.0 已发布)** | **1.7 OTLP span 语义收口+metrics 时序修正+mcp-serve span 面 全量 328(325 PASS + 3 skip,2026-09-28 收口,1.7.0 已发布)** | **1.8 W3C traceparent 跨进程传播+LLM 出站通道修复 全量 335(332 PASS + 3 skip,2026-09-29 收口,1.8.0 已发布)** | **1.9 远程 MCP traceparent 传播(HTTP 头通道) 全量 339(336 PASS + 3 skip,2026-09-29 收口,1.9.0 已发布)** | **1.10 KernelSeam 公开导出面+库构建产物 全量 341(338 PASS + 3 skip,2026-09-29 收口,1.10.0 已发布)** | **1.11 seam authz 导出+usage 事件计量采集 全量 355(352 PASS + 3 skip,2026-10-07 收口,1.11.0 已发布)** | **1.12 seam MCP/PTC 真桥导出面+jiti epoch 面确认 全量 363(360 PASS + 3 skip,2026-10-07 收口,1.12.0 已发布)** | **1.13 桌面 S3 治理面(K-FS-1/2/3+K-SC-1 authorizeAll/decideByRule/fs-read·fs-delete 能力 + seam 出面 redact/loadSessionLog/exportForensicsBundle;恢复面 K-S3-2 零登记确认——fromEvents 自 M5 在产) 全量 374(371 PASS + 3 skip,2026-10-11 收口,1.13.0 已发布)** | **1.14 模型参数/压缩/分段/模型池/PluginManager 五候选(K-MP-1 reasoning 透传 + K-MP-2 压缩面 append-only context/compact + K-MP-2b 分段计量 + K-POOL-1 模型池 routing/decide 落链 + K-S4-1 seam 出面装载报告面;D-43 裁决登记 strict 期限不引入 sigstore——engines 硬不兼容见评估报告) 全量 419(416 PASS + 3 skip,2026-10-18 收口,1.14.0 已发布)**
290
+ - **1.14.0 正式发布(2026-10-18,桌面 v0.2-B1 批)**:npm `@lqc123qwe/car-runtime@1.14.0` 在架——**dist-tags latest → 1.14.0 + SLSA provenance 在案**(npm transparency log 3308759260)。Release `1.14.0`(id 416323415,target_commitish=完整 SHA `92a35904c5179a99cdb69d82542953f82fb920ba`;main 推送**首次直连通道**——90c653c→92a3590 共 13 commits,WorkBuddy 沙箱代理 502 根因落档后直连常态化,Git Data API 复刻通道退役为应急预案)→ **j16 run 全 13 步 success**(cosign keyless OIDC+Rekor:tgz bundle logIndex 3308757191)→ **post-publish REMOTE_CHECK 13 PASS / 0 DRY-RUN / 0 FAIL**(G-09 npm 在架 latest + SLSA provenance ✓ / G-10 Release 五件套齐备 / G-04 audit 0);外部等价检查:Release 实下载件 SHA256 MATCH(cb43ec0b9b1f7ad4…)+ cosign verify-blob **Verified OK**(Fulcio + Rekor tlog)+ registry tarball ↔ tag 树 src 面逐字节一致(51 文件)+ dist 面语义等价(去引号逐字节一致——CI `npx -y -p typescript` 未钉版引号发射差异,登记非偏差)+ dist/seam.js 35 符号在库 ✓。seam 32→35 运行时符号(+8 类型)。
290
291
  - **1.13.0 正式发布(2026-10-11,桌面 S3-S1)**:npm `@lqc123qwe/car-runtime@1.13.0` 在架——**dist-tags latest → 1.13.0 + provenance 在案**。Release `1.13.0`(id 409512865,target_commitish=完整 SHA;main 推送经 Git Data API 逐字节复刻——blob 9/9 + tree `eea7249` + commit `ab59468` 全 SHA 对拍零分叉;**发布工程事件两项**:①GitHub commit API 保留 author/committer 时区偏移(+08:00 原样入对象)但**消息不自动补尾 `\n`**——payload 须带原文尾换行,否则 SHA 分叉(39477b4 教训,本地 `$()` 吞尾换行加剧排查成本);②registry 元数据 CDN 滞后使本地 `npm install` notarget——cache-buster 复查口径 + `--prefer-online` 安装)→ **run 38122530955 全步 success** → registry tarball dist/seam.js 32 符号文本核验 ✓ + **桌面侧消费验证:car-desktop 装 1.13.0 后 29/29 测试全绿 + SMOKE PASS(seamVersion 1.13.0 · symbolCount 32)**。
291
292
  - **1.0.0 正式发布(2026-09-26,S29/S30)**:npm `@lqc123qwe/car-runtime@1.0.0` 在架——**dist-tag latest → 1.0.0,rc 保留指向 1.0.0-rc.1**(§1.1 口径);SLSA provenance(Actions OIDC,透明日志在案);GitHub Release v1.0.0 六资产(tgz/bundle/SHA256SUMS/SBOM/审计/公钥);**post-publish 全链 13 PASS / 0 DRY-RUN / 0 FAIL** + 外部验证者等价检查(Release 实下载件 SHA256 MATCH + cosign Verified OK)。**宽限期时钟:2026-09-26 起算,2026-12-25 到期 verifier 默认值 warn→enforce 翻转(计划内变更)**。终验报告:`car-docs/10-内核v1/M5-S30-1.0收口终验报告.md`。发布工程事件:j16 首跑 E403(npm 2FA 策略 vs granular token 无 bypass——清单预设回退路径兑现)→ bypass token re-run 绿;G-09 期望 tag 动态化(`4c84b17`)在真实发布兑现价值。
292
293
  - **1.0.0-rc.1 已发布(2026-09-09)**:npm `@lqc123qwe/car-runtime@1.0.0-rc.1`(rc + latest 双 tag,SLSA provenance 在案)+ GitHub Release 6 制品;发布预演 **13 PASS / 0 DRY-RUN / 0 FAIL**(c762b72)。S22 GO 清单已全绿收口。
package/dist/SHA256SUMS CHANGED
@@ -1 +1 @@
1
- cb43ec0b9b1f7ad4365dc1a30dbdc6b41ec65a5b23326c97f42b2d486b20167d car-runtime-1.14.0.tgz
1
+ 88b55ba110b87ca79e9ea635b0b58d875d7d5c0018493f6154e210e1e1613aed car-runtime-1.14.1.tgz
Binary file
@@ -0,0 +1 @@
1
+ {"base64Signature":"MEUCIQCeQPsB3dF6Tub4Qo6Mqf4VZ5ta6a6fcbqmyWTj0RwxnQIgVg6fzoUapTqJP96O3u4ASB14LRQ0ymajLf4FTv74F6g=","cert":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc2RENDQm0yZ0F3SUJBZ0lVY0oxTGZxUkxOU29hYVAxQ1BmU3ZEUzh5RTZNd0NnWUlLb1pJemowRUF3TXcKTnpFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUjR3SEFZRFZRUURFeFZ6YVdkemRHOXlaUzFwYm5SbApjbTFsWkdsaGRHVXdIaGNOTWpZeE1ERTRNRGcwTnpBMVdoY05Nall4TURFNE1EZzFOekExV2pBQU1Ga3dFd1lICktvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFbUtXS214VDVnaldEOGxET0VyR3d2MEJwRjRLSWdKYVhzOEQKd09NWnB1Q3lKQ2RMMWxJL3pDTmhyelp1d0UrdW9jR0dNS3greCtwMHpEQXVCU0RZVGFPQ0JZd3dnZ1dJTUE0RwpBMVVkRHdFQi93UUVBd0lIZ0RBVEJnTlZIU1VFRERBS0JnZ3JCZ0VGQlFjREF6QWZCZ05WSFNNRUdEQVdnQlRmCjArblBWaVFSbHZtbzJPa29WYUxHTGhoa1B6QmlCZ05WSFJFQkFmOEVXREJXaGxSb2RIUndjem92TDJkcGRHaDEKWWk1amIyMHZiSEZqTmpJMEwyTmhjaTF5ZFc1MGFXMWxMeTVuYVhSb2RXSXZkMjl5YTJac2IzZHpMM0psYkdWaApjMlV1ZVcxc1FISmxabk12ZEdGbmN5OHhMakUwTGpFd09RWUtLd1lCQkFHRHZ6QUJBUVFyYUhSMGNITTZMeTkwCmIydGxiaTVoWTNScGIyNXpMbWRwZEdoMVluVnpaWEpqYjI1MFpXNTBMbU52YlRBVkJnb3JCZ0VFQVlPL01BRUMKQkFkeVpXeGxZWE5sTURZR0Npc0dBUVFCZzc4d0FRTUVLR05rWWpJNFpEQmxPVGRsWW1VNE4yVTBaR1l4TkdWagpNRGt5WTJZME1HSTNaVEJrWW1ZM1pUUXdGUVlLS3dZQkJBR0R2ekFCQkFRSGNtVnNaV0Z6WlRBZ0Jnb3JCZ0VFCkFZTy9NQUVGQkJKc2NXTTJNalF2WTJGeUxYSjFiblJwYldVd0hnWUtLd1lCQkFHRHZ6QUJCZ1FRY21WbWN5OTAKWVdkekx6RXVNVFF1TVRBN0Jnb3JCZ0VFQVlPL01BRUlCQzBNSzJoMGRIQnpPaTh2ZEc5clpXNHVZV04wYVc5dQpjeTVuYVhSb2RXSjFjMlZ5WTI5dWRHVnVkQzVqYjIwd1pBWUtLd1lCQkFHRHZ6QUJDUVJXREZSb2RIUndjem92CkwyZHBkR2gxWWk1amIyMHZiSEZqTmpJMEwyTmhjaTF5ZFc1MGFXMWxMeTVuYVhSb2RXSXZkMjl5YTJac2IzZHoKTDNKbGJHVmhjMlV1ZVcxc1FISmxabk12ZEdGbmN5OHhMakUwTGpFd09BWUtLd1lCQkFHRHZ6QUJDZ1FxRENoagpaR0l5T0dRd1pUazNaV0psT0RkbE5HUm1NVFJsWXpBNU1tTm1OREJpTjJVd1pHSm1OMlUwTUIwR0Npc0dBUVFCCmc3OHdBUXNFRHd3TloybDBhSFZpTFdodmMzUmxaREExQmdvckJnRUVBWU8vTUFFTUJDY01KV2gwZEhCek9pOHYKWjJsMGFIVmlMbU52YlM5c2NXTTJNalF2WTJGeUxYSjFiblJwYldVd09BWUtLd1lCQkFHRHZ6QUJEUVFxRENoagpaR0l5T0dRd1pUazNaV0psT0RkbE5HUm1NVFJsWXpBNU1tTm1OREJpTjJVd1pHSm1OMlUwTUNBR0Npc0dBUVFCCmc3OHdBUTRFRWd3UWNtVm1jeTkwWVdkekx6RXVNVFF1TVRBYUJnb3JCZ0VFQVlPL01BRVBCQXdNQ2pFek5qRXgKT1RJM01UUXdLUVlLS3dZQkJBR0R2ekFCRUFRYkRCbG9kSFJ3Y3pvdkwyZHBkR2gxWWk1amIyMHZiSEZqTmpJMApNQmdHQ2lzR0FRUUJnNzh3QVJFRUNnd0lOamt5TXpRMU5qUXdaQVlLS3dZQkJBR0R2ekFCRWdSV0RGUm9kSFJ3CmN6b3ZMMmRwZEdoMVlpNWpiMjB2YkhGak5qSTBMMk5oY2kxeWRXNTBhVzFsTHk1bmFYUm9kV0l2ZDI5eWEyWnMKYjNkekwzSmxiR1ZoYzJVdWVXMXNRSEpsWm5NdmRHRm5jeTh4TGpFMExqRXdPQVlLS3dZQkJBR0R2ekFCRXdRcQpEQ2hqWkdJeU9HUXdaVGszWldKbE9EZGxOR1JtTVRSbFl6QTVNbU5tTkRCaU4yVXdaR0ptTjJVME1CY0dDaXNHCkFRUUJnNzh3QVJRRUNRd0hjbVZzWldGelpUQlpCZ29yQmdFRUFZTy9NQUVWQkVzTVNXaDBkSEJ6T2k4dloybDAKYUhWaUxtTnZiUzlzY1dNMk1qUXZZMkZ5TFhKMWJuUnBiV1V2WVdOMGFXOXVjeTl5ZFc1ekx6TTVNVEV5TnpjMQpNelE0TDJGMGRHVnRjSFJ6THpFd0ZnWUtLd1lCQkFHRHZ6QUJGZ1FJREFad2RXSnNhV013VUFZS0t3WUJCQUdECnZ6QUJHQVJDREVCeVpYQnZPbXh4WXpZeU5FQTJPVEl6TkRVMk5DOWpZWEl0Y25WdWRHbHRaVUF4TXpZeE1Ua3kKTnpFME9uSmxaanB5WldaekwzUmhaM012TVM0eE5DNHhNSUdLQmdvckJnRUVBZFo1QWdRQ0JId0VlZ0I0QUhZQQozVDB3YXNiSEVUSmpHUjRjbVdjM0FxSktYcmplUEszL2g0cHlnQzhwN280QUFBR2hUakZ3aUFBQUJBTUFSekJGCkFpQlB4cVArajVMZE1xbUszVkdOa0xIYVoxU2JLcUJVUUpmSFNwR2Z4RHNVTmdJaEFKTFAxdHFNYXg1azhKR0oKSzNQL2RWRWU0SWhqQ2JXbCtpS1dwSzdodU1Pek1Bb0dDQ3FHU000OUJBTURBMmtBTUdZQ01RQ0FwQ3Q2SUljYwpWbWVYV1FZYjIwQjIwMWxXRm9uUXp1eDkySHhpdUh2TENEQVc2ZXB3Rzc0djkrcVRwbE45c01nQ01RREFIUTFaCmJWLzE0RE9OOWhKV0p2ejJFSFZNZkdiMlM2ZkUxSmNGRUYwd0p2Yi9xV0cxdUhnNFRpTkxQd2poVmFBPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==","rekorBundle":{"SignedEntryTimestamp":"MEYCIQCbfVSQkROmhTkyvFIj6FyMI5xXRjurnlLNOj5QDWAwzgIhAMNwDhkyNhYNFVsf/fOBb96NuhIg+eHH7Ol34a8VO533","Payload":{"body":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI4OGI1NWJhMTEwYjg3Y2E3OWU5ZWE2MzViMGI1OGQ4NzVkN2Q1YzAwMTg0OTNmNjE1NGUyMTBlMWUxNjEzYWVkIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUNlUVBzQjNkRjZUdWI0UW82TXFmNFZaNXRhNmE2ZmNicW15V1RqMFJ3eG5RSWdWZzZmem9VYXBUcUpQOTZPM3U0QVNCMTRMUlEweW1hakxmNEZUdjc0RjZnPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVYzJSRU5EUW0weVowRjNTVUpCWjBsVlkwb3hUR1p4VWt4T1UyOWhZVkF4UTFCbVUzWkVVemg1UlRaTmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRSTlJHY3dUbnBCTVZkb1kwNU5hbGw0VFVSRk5FMUVaekZPZWtFeFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZGYlV0WFMyMTRWRFZuYWxkRU9HeEVUMFZ5UjNkMk1FSndSalJMU1dkS1lWaHpPRVFLZDA5TlduQjFRM2xLUTJSTU1XeEpMM3BEVG1oeWVscDFkMFVyZFc5alIwZE5TM2dyZUN0d01IcEVRWFZDVTBSWlZHRlBRMEpaZDNkbloxZEpUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFtbENaMDVXU0ZKRlFrRm1PRVZYUkVKWGFHeFNiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmlTRVpxVG1wSk1Fd3lUbWhqYVRGNVpGYzFNR0ZYTVd4TWVUVnVZVmhTYjJSWFNYWmtNamw1WVRKYWMySXpaSHBNTTBwc1lrZFdhQXBqTWxWMVpWY3hjMUZJU214YWJrMTJaRWRHYm1ONU9IaE1ha1V3VEdwRmQwOVJXVXRMZDFsQ1FrRkhSSFo2UVVKQlVWRnlZVWhTTUdOSVRUWk1lVGt3Q21JeWRHeGlhVFZvV1ROU2NHSXlOWHBNYldSd1pFZG9NVmx1Vm5wYVdFcHFZakkxTUZwWE5UQk1iVTUyWWxSQlZrSm5iM0pDWjBWRlFWbFBMMDFCUlVNS1FrRmtlVnBYZUd4WldFNXNUVVJaUjBOcGMwZEJVVkZDWnpjNGQwRlJUVVZMUjA1cldXcEpORnBFUW14UFZHUnNXVzFWTkU0eVZUQmFSMWw0VGtkV2FncE5SR3Q1V1RKWk1FMUhTVE5hVkVKcldXMVpNMXBVVVhkR1VWbExTM2RaUWtKQlIwUjJla0ZDUWtGUlNHTnRWbk5hVjBaNldsUkJaMEpuYjNKQ1owVkZDa0ZaVHk5TlFVVkdRa0pLYzJOWFRUSk5hbEYyV1RKR2VVeFlTakZpYmxKd1lsZFZkMGhuV1V0TGQxbENRa0ZIUkhaNlFVSkNaMUZSWTIxV2JXTjVPVEFLV1Zka2VreDZSWFZOVkZGMVRWUkJOMEpuYjNKQ1owVkZRVmxQTDAxQlJVbENRekJOU3pKb01HUklRbnBQYVRoMlpFYzVjbHBYTkhWWlYwNHdZVmM1ZFFwamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcVlqSXdkMXBCV1V0TGQxbENRa0ZIUkhaNlFVSkRVVkpYUkVaU2IyUklVbmRqZW05MkNrd3laSEJrUjJneFdXazFhbUl5TUhaaVNFWnFUbXBKTUV3eVRtaGphVEY1WkZjMU1HRlhNV3hNZVRWdVlWaFNiMlJYU1haa01qbDVZVEphYzJJelpIb0tURE5LYkdKSFZtaGpNbFYxWlZjeGMxRklTbXhhYmsxMlpFZEdibU41T0hoTWFrVXdUR3BGZDA5QldVdExkMWxDUWtGSFJIWjZRVUpEWjFGeFJFTm9hZ3BhUjBsNVQwZFJkMXBVYXpOYVYwcHNUMFJrYkU1SFVtMU5WRkpzV1hwQk5VMXRUbTFPUkVKcFRqSlZkMXBIU20xT01sVXdUVUl3UjBOcGMwZEJVVkZDQ21jM09IZEJVWE5GUkhkM1Rsb3liREJoU0ZacFRGZG9kbU16VW14YVJFRXhRbWR2Y2tKblJVVkJXVTh2VFVGRlRVSkRZMDFLVjJnd1pFaENlazlwT0hZS1dqSnNNR0ZJVm1sTWJVNTJZbE01YzJOWFRUSk5hbEYyV1RKR2VVeFlTakZpYmxKd1lsZFZkMDlCV1V0TGQxbENRa0ZIUkhaNlFVSkVVVkZ4UkVOb2FncGFSMGw1VDBkUmQxcFVhek5hVjBwc1QwUmtiRTVIVW0xTlZGSnNXWHBCTlUxdFRtMU9SRUpwVGpKVmQxcEhTbTFPTWxVd1RVTkJSME5wYzBkQlVWRkNDbWMzT0hkQlVUUkZSV2QzVVdOdFZtMWplVGt3V1Zka2VreDZSWFZOVkZGMVRWUkJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQkNRWGROUTJwRmVrNXFSWGdLVDFSSk0wMVVVWGRMVVZsTFMzZFpRa0pCUjBSMmVrRkNSVUZSWWtSQ2JHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaVNFWnFUbXBKTUFwTlFtZEhRMmx6UjBGUlVVSm5OemgzUVZKRlJVTm5kMGxPYW10NVRYcFJNVTVxVVhkYVFWbExTM2RaUWtKQlIwUjJla0ZDUldkU1YwUkdVbTlrU0ZKM0NtTjZiM1pNTW1Sd1pFZG9NVmxwTldwaU1qQjJZa2hHYWs1cVNUQk1NazVvWTJreGVXUlhOVEJoVnpGc1RIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTUtZak5rZWt3elNteGlSMVpvWXpKVmRXVlhNWE5SU0Vwc1dtNU5kbVJIUm01amVUaDRUR3BGTUV4cVJYZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JYZFJjUXBFUTJocVdrZEplVTlIVVhkYVZHc3pXbGRLYkU5RVpHeE9SMUp0VFZSU2JGbDZRVFZOYlU1dFRrUkNhVTR5VlhkYVIwcHRUakpWTUUxQ1kwZERhWE5IQ2tGUlVVSm5OemgzUVZKUlJVTlJkMGhqYlZaeldsZEdlbHBVUWxwQ1oyOXlRbWRGUlVGWlR5OU5RVVZXUWtWelRWTlhhREJrU0VKNlQyazRkbG95YkRBS1lVaFdhVXh0VG5aaVV6bHpZMWROTWsxcVVYWlpNa1o1VEZoS01XSnVVbkJpVjFWMldWZE9NR0ZYT1hWamVUbDVaRmMxZWt4NlRUVk5WRVY1VG5wak1RcE5lbEUwVERKR01HUkhWblJqU0ZKNlRIcEZkMFpuV1V0TGQxbENRa0ZIUkhaNlFVSkdaMUZKUkVGYWQyUlhTbk5oVjAxM1ZVRlpTMHQzV1VKQ1FVZEVDblo2UVVKSFFWSkRSRVZDZVZwWVFuWlBiWGg0V1hwWmVVNUZRVEpQVkVsNlRrUlZNazVET1dwWldFbDBZMjVXZFdSSGJIUmFWVUY0VFhwWmVFMVVhM2tLVG5wRk1FOXVTbXhhYW5CNVdsZGFla3d6VW1oYU0wMTJUVk0wZUU1RE5IaE5TVWRMUW1kdmNrSm5SVVZCWkZvMVFXZFJRMEpJZDBWbFowSTBRVWhaUVFvelZEQjNZWE5pU0VWVVNtcEhValJqYlZkak0wRnhTa3RZY21wbFVFc3pMMmcwY0hsblF6aHdOMjgwUVVGQlIyaFVha1ozYVVGQlFVSkJUVUZTZWtKR0NrRnBRbEI0Y1ZBcmFqVk1aRTF4YlVzelZrZE9hMHhJWVZveFUySkxjVUpWVVVwbVNGTndSMlo0UkhOVlRtZEphRUZLVEZBeGRIRk5ZWGcxYXpoS1Iwb0tTek5RTDJSV1JXVTBTV2hxUTJKWGJDdHBTMWR3U3pkb2RVMVBlazFCYjBkRFEzRkhVMDAwT1VKQlRVUkJNbXRCVFVkWlEwMVJRMEZ3UTNRMlNVbGpZd3BXYldWWVYxRlpZakl3UWpJd01XeFhSbTl1VVhwMWVEa3lTSGhwZFVoMlRFTkVRVmMyWlhCM1J6YzBkamtyY1ZSd2JFNDVjMDFuUTAxUlJFRklVVEZhQ21KV0x6RTBSRTlPT1doS1YwcDJlakpGU0ZaTlprZGlNbE0yWmtVeFNtTkdSVVl3ZDBwMllpOXhWMGN4ZFVobk5GUnBUa3hRZDJwb1ZtRkJQUW90TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0=","integratedTime":1792313225,"logIndex":3309074369,"logID":"c0d23d6ad406973f9559f3ba2d1ca01f84147d8ffc5b8445c224f98b9591801d"}}}
@@ -1,4 +1,4 @@
1
- {"stage":"archive","detail":"git archive HEAD → car-runtime-1.14.0.tgz(370995 bytes,树哈希锚定)","ts":1792311580188}
2
- {"stage":"sha256sums","detail":"SHA256SUMS cb43ec0b9b1f7ad4…(裸字节复核通过)","ts":1792311580189}
3
- {"stage":"sbom","detail":"53 个组件(运行时依赖 0 项)","ts":1792311580197}
4
- {"stage":"cosign-keyless","detail":"signed car-runtime-1.14.0.tgz (keyless OIDC + Rekor)","ts":1792311585400}
1
+ {"stage":"archive","detail":"git archive HEAD → car-runtime-1.14.1.tgz(373973 bytes,树哈希锚定)","ts":1792313224480}
2
+ {"stage":"sha256sums","detail":"SHA256SUMS 88b55ba110b87ca7…(裸字节复核通过)","ts":1792313224481}
3
+ {"stage":"sbom","detail":"53 个组件(运行时依赖 0 项)","ts":1792313224489}
4
+ {"stage":"cosign-keyless","detail":"signed car-runtime-1.14.1.tgz (keyless OIDC + Rekor)","ts":1792313226954}
@@ -35,6 +35,14 @@ export interface ChatStepOptions {
35
35
  signal?: {
36
36
  aborted: boolean;
37
37
  };
38
+ /**
39
+ * 1.14.1(K-MP-1 消费面 / D-39):思考参数透传——chatStep 是宿主 model 回调的唯一路径,
40
+ * 本形参补齐后 reasoning 才经 chatStep 可达(off / 缺席 = 不下发该字段,字节面零痕迹);
41
+ * 模型元数据思考档位判断在宿主侧(models:meta),内核防线 = 未知档位 fail-visible。
42
+ */
43
+ reasoning?: {
44
+ effort: 'off' | 'low' | 'medium' | 'high';
45
+ };
38
46
  }
39
47
  /** ModelStep 加法扩展:脱敏计数留痕(S15 secretsRedacted 同名口径) */
40
48
  export type ChatStepResult = ModelStep & {
@@ -34,6 +34,8 @@ export async function chatStep(opts) {
34
34
  tools,
35
35
  ...(maxTokens != null ? { maxTokens } : {}),
36
36
  ...(adapterId ? { adapterId } : {}),
37
+ // 1.14.1(K-MP-1 消费面):reasoning 透传(off/缺席 = 不下发)
38
+ ...(opts.reasoning ? { reasoning: opts.reasoning } : {}),
37
39
  ...(opts.signal ? { signal: opts.signal } : {}),
38
40
  ...(opts.log.sessionId ? { metadata: { sessionId: opts.log.sessionId, turnId, traceId: `${opts.log.sessionId}:${turnId}` } } : {}),
39
41
  });
package/dist/sbom.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "bomFormat": "CAR-SBOM",
3
3
  "specVersion": "0.1",
4
- "version": "1.14.0",
4
+ "version": "1.14.1",
5
5
  "components": [
6
6
  {
7
7
  "type": "file",
@@ -156,7 +156,7 @@
156
156
  {
157
157
  "type": "file",
158
158
  "path": "src/runtime-core/chatStep.ts",
159
- "sha256": "682f1764e1bae1e20c02bd3746b80dcd8515f11afe4c9029cf31b42990bcd43d"
159
+ "sha256": "b4a4715b957a43513e7e645b8e64b1d1d2e99b52f64c619e9bc45f91364531d3"
160
160
  },
161
161
  {
162
162
  "type": "file",
@@ -206,7 +206,7 @@
206
206
  {
207
207
  "type": "file",
208
208
  "path": "src/seam.ts",
209
- "sha256": "e3f92c53a038959a6021861f12d1ca2ef467b13d8dc50ce25855e9a3cd76eb9a"
209
+ "sha256": "0a4a231c9ab3ad5898a9a22fd9e53e17a8261d3d4057940b7d2148325573006c"
210
210
  },
211
211
  {
212
212
  "type": "file",
@@ -261,12 +261,12 @@
261
261
  {
262
262
  "type": "file",
263
263
  "path": "package.json",
264
- "sha256": "f7361f87574fe06b6e2055f0b2c1f2daca2b90f52388279e928a44d33dfe7d07"
264
+ "sha256": "b637e74c6e9d878a3b53ba2481a15b1c3f735bf9341e9e29724c53708b35a6f1"
265
265
  },
266
266
  {
267
267
  "type": "file",
268
268
  "path": "README.md",
269
- "sha256": "9c2fa755fb60f8c4304d8b382c992f8ee513ea691d209541ad9b8346d5d154d9"
269
+ "sha256": "d2e3490a5a0ef970884c038e4a385853fa8b293b85d7a65c1da5ef8edaa2a631"
270
270
  }
271
271
  ],
272
272
  "runtimeDependencies": []
package/dist/seam.d.ts CHANGED
@@ -22,6 +22,10 @@
22
22
  * mountPlugin 组合呈现的 SKIPPED 标注)+ ReloadManager 出面(热重载 epoch 击穿 + invalidate 语义随本面)+
23
23
  * verifyPluginFile 出面(签名校验挂载点——宿主自有装载路径可复用同一签名门;minisign 轨唯一实装,sigstore
24
24
  * 主轨维持 verifier 骨架期预留——D-43 裁决:登记 strict 期限不引入 sigstore 依赖,engines 硬不兼容见评估报告)。
25
+ * 加法登记:1.14.1 —— B2 前置补出面(1.14 消费面完成):K-MP-2 压缩行为 API(shouldCompact/applyCompaction
26
+ * + CompactionConfig——自动挂载点在宿主装配层〔runTurn 之间〕,立即压缩 API 独立可用,append-only 红线随本面)
27
+ * + K-POOL-1 池装配行为 API(assembleModelPool/probePoolMember + PoolMember/RoutingDecision 类型——
28
+ * 桌面模型池设置 UI 与 doctor 池健康行消费面;routing/decide 落链由宿主接线 onDecide)。
25
29
  */
26
30
  export { SessionLog, loadSessionLog, deriveSessionId, type SessionEvent, type EventKind, type Actor } from './session/log.ts';
27
31
  export { SessionFileStore } from './session/store.ts';
@@ -47,3 +51,5 @@ export { redact, type RedactionResult } from './runtime-core/redaction.ts';
47
51
  export { exportForensicsBundle, verifyBundle, type ForensicsBundle, type ExportMeta } from './session/export.ts';
48
52
  export { loadPlugins, ReloadManager, type LoadReportVO, type LoadPluginsResult, type LoadPluginsOptions, type LoadStage, type StageStatus, type PeerConflictChain } from './load/report.ts';
49
53
  export { verifyPluginFile, type SignatureGateOptions, type SigGateResult } from './load/sigGate.ts';
54
+ export { shouldCompact, applyCompaction, type CompactionConfig } from './session/compact.ts';
55
+ export { assembleModelPool, probePoolMember, type PoolMember, type PoolMemberHealth, type RoutingDecision, type RoutingAttempt } from './load/pool.ts';
package/dist/seam.js CHANGED
@@ -22,6 +22,10 @@
22
22
  * mountPlugin 组合呈现的 SKIPPED 标注)+ ReloadManager 出面(热重载 epoch 击穿 + invalidate 语义随本面)+
23
23
  * verifyPluginFile 出面(签名校验挂载点——宿主自有装载路径可复用同一签名门;minisign 轨唯一实装,sigstore
24
24
  * 主轨维持 verifier 骨架期预留——D-43 裁决:登记 strict 期限不引入 sigstore 依赖,engines 硬不兼容见评估报告)。
25
+ * 加法登记:1.14.1 —— B2 前置补出面(1.14 消费面完成):K-MP-2 压缩行为 API(shouldCompact/applyCompaction
26
+ * + CompactionConfig——自动挂载点在宿主装配层〔runTurn 之间〕,立即压缩 API 独立可用,append-only 红线随本面)
27
+ * + K-POOL-1 池装配行为 API(assembleModelPool/probePoolMember + PoolMember/RoutingDecision 类型——
28
+ * 桌面模型池设置 UI 与 doctor 池健康行消费面;routing/decide 落链由宿主接线 onDecide)。
25
29
  */
26
30
  export { SessionLog, loadSessionLog, deriveSessionId } from './session/log.js';
27
31
  export { SessionFileStore } from './session/store.js';
@@ -48,3 +52,6 @@ export { exportForensicsBundle, verifyBundle } from './session/export.js';
48
52
  // —— 1.14.0(K-S4-1 / D-43):PluginManager 装载报告面 + 签名校验挂载点 ——
49
53
  export { loadPlugins, ReloadManager } from './load/report.js';
50
54
  export { verifyPluginFile } from './load/sigGate.js';
55
+ // —— 1.14.1(B2 前置补出面):K-MP-2 压缩行为 API + K-POOL-1 池装配行为 API(1.14 消费面完成)——
56
+ export { shouldCompact, applyCompaction } from './session/compact.js';
57
+ export { assembleModelPool, probePoolMember } from './load/pool.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lqc123qwe/car-runtime",
3
- "version": "1.14.0",
3
+ "version": "1.14.1",
4
4
  "description": "Composable Agent Runtime (CAR) - microkernel plugin system with sandboxed PTC, append-only hashed session log, and MCP host bridge",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -37,6 +37,12 @@ export interface ChatStepOptions {
37
37
  adapterId?: string
38
38
  /** 1.4-S4(D-19):turn 取消信号——chunk 间隙与流结束后(finish 检查前)检查,命中抛 TurnAborted */
39
39
  signal?: { aborted: boolean }
40
+ /**
41
+ * 1.14.1(K-MP-1 消费面 / D-39):思考参数透传——chatStep 是宿主 model 回调的唯一路径,
42
+ * 本形参补齐后 reasoning 才经 chatStep 可达(off / 缺席 = 不下发该字段,字节面零痕迹);
43
+ * 模型元数据思考档位判断在宿主侧(models:meta),内核防线 = 未知档位 fail-visible。
44
+ */
45
+ reasoning?: { effort: 'off' | 'low' | 'medium' | 'high' }
40
46
  }
41
47
 
42
48
  /** ModelStep 加法扩展:脱敏计数留痕(S15 secretsRedacted 同名口径) */
@@ -78,6 +84,8 @@ export async function chatStep(opts: ChatStepOptions): Promise<ChatStepResult> {
78
84
  tools,
79
85
  ...(maxTokens != null ? { maxTokens } : {}),
80
86
  ...(adapterId ? { adapterId } : {}),
87
+ // 1.14.1(K-MP-1 消费面):reasoning 透传(off/缺席 = 不下发)
88
+ ...(opts.reasoning ? { reasoning: opts.reasoning } : {}),
81
89
  ...(opts.signal ? { signal: opts.signal } : {}),
82
90
  ...(opts.log.sessionId ? { metadata: { sessionId: opts.log.sessionId, turnId, traceId: `${opts.log.sessionId}:${turnId}` } } : {}),
83
91
  })
package/src/seam.ts CHANGED
@@ -22,6 +22,10 @@
22
22
  * mountPlugin 组合呈现的 SKIPPED 标注)+ ReloadManager 出面(热重载 epoch 击穿 + invalidate 语义随本面)+
23
23
  * verifyPluginFile 出面(签名校验挂载点——宿主自有装载路径可复用同一签名门;minisign 轨唯一实装,sigstore
24
24
  * 主轨维持 verifier 骨架期预留——D-43 裁决:登记 strict 期限不引入 sigstore 依赖,engines 硬不兼容见评估报告)。
25
+ * 加法登记:1.14.1 —— B2 前置补出面(1.14 消费面完成):K-MP-2 压缩行为 API(shouldCompact/applyCompaction
26
+ * + CompactionConfig——自动挂载点在宿主装配层〔runTurn 之间〕,立即压缩 API 独立可用,append-only 红线随本面)
27
+ * + K-POOL-1 池装配行为 API(assembleModelPool/probePoolMember + PoolMember/RoutingDecision 类型——
28
+ * 桌面模型池设置 UI 与 doctor 池健康行消费面;routing/decide 落链由宿主接线 onDecide)。
25
29
  */
26
30
  export { SessionLog, loadSessionLog, deriveSessionId, type SessionEvent, type EventKind, type Actor } from './session/log.ts'
27
31
  export { SessionFileStore } from './session/store.ts'
@@ -50,3 +54,6 @@ export { exportForensicsBundle, verifyBundle, type ForensicsBundle, type ExportM
50
54
  // —— 1.14.0(K-S4-1 / D-43):PluginManager 装载报告面 + 签名校验挂载点 ——
51
55
  export { loadPlugins, ReloadManager, type LoadReportVO, type LoadPluginsResult, type LoadPluginsOptions, type LoadStage, type StageStatus, type PeerConflictChain } from './load/report.ts'
52
56
  export { verifyPluginFile, type SignatureGateOptions, type SigGateResult } from './load/sigGate.ts'
57
+ // —— 1.14.1(B2 前置补出面):K-MP-2 压缩行为 API + K-POOL-1 池装配行为 API(1.14 消费面完成)——
58
+ export { shouldCompact, applyCompaction, type CompactionConfig } from './session/compact.ts'
59
+ export { assembleModelPool, probePoolMember, type PoolMember, type PoolMemberHealth, type RoutingDecision, type RoutingAttempt } from './load/pool.ts'
Binary file
@@ -1 +0,0 @@
1
- {"base64Signature":"MEQCIG6L65Cw/EJuDjO6HFYCTaYCu8OOGPkVkVDoPVft3cWUAiAXMhPi5i0bbyhPkqysB2s1G4D1ElUz1xWDe4doxmWOkg==","cert":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc2RENDQm02Z0F3SUJBZ0lVSGEya1N2UWhCTHFtcGNrcWg3K0lSYUhnRHJBd0NnWUlLb1pJemowRUF3TXcKTnpFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUjR3SEFZRFZRUURFeFZ6YVdkemRHOXlaUzFwYm5SbApjbTFsWkdsaGRHVXdIaGNOTWpZeE1ERTRNRGd4T1RReFdoY05Nall4TURFNE1EZ3lPVFF4V2pBQU1Ga3dFd1lICktvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVsa29IQkJmWGsyWXFOdEwzQkN4ZlZRaVkweFcxMWh6aGlwTFAKaXY3UWliKzFpTjBnWkR3amJVZFVBNC90Tm1jSXpya1JIQmRiaE9DL2VFR0pJMXlCcWFPQ0JZMHdnZ1dKTUE0RwpBMVVkRHdFQi93UUVBd0lIZ0RBVEJnTlZIU1VFRERBS0JnZ3JCZ0VGQlFjREF6QWZCZ05WSFNNRUdEQVdnQlRmCjArblBWaVFSbHZtbzJPa29WYUxHTGhoa1B6QmlCZ05WSFJFQkFmOEVXREJXaGxSb2RIUndjem92TDJkcGRHaDEKWWk1amIyMHZiSEZqTmpJMEwyTmhjaTF5ZFc1MGFXMWxMeTVuYVhSb2RXSXZkMjl5YTJac2IzZHpMM0psYkdWaApjMlV1ZVcxc1FISmxabk12ZEdGbmN5OHhMakUwTGpBd09RWUtLd1lCQkFHRHZ6QUJBUVFyYUhSMGNITTZMeTkwCmIydGxiaTVoWTNScGIyNXpMbWRwZEdoMVluVnpaWEpqYjI1MFpXNTBMbU52YlRBVkJnb3JCZ0VFQVlPL01BRUMKQkFkeVpXeGxZWE5sTURZR0Npc0dBUVFCZzc4d0FRTUVLRGt5WVRNMU9UQTBZelV4TnpsaE9UbGpaR0kyT1dRNApNalUwTWprMU0yWTRNbVppT1RJd1ltRXdGUVlLS3dZQkJBR0R2ekFCQkFRSGNtVnNaV0Z6WlRBZ0Jnb3JCZ0VFCkFZTy9NQUVGQkJKc2NXTTJNalF2WTJGeUxYSjFiblJwYldVd0hnWUtLd1lCQkFHRHZ6QUJCZ1FRY21WbWN5OTAKWVdkekx6RXVNVFF1TURBN0Jnb3JCZ0VFQVlPL01BRUlCQzBNSzJoMGRIQnpPaTh2ZEc5clpXNHVZV04wYVc5dQpjeTVuYVhSb2RXSjFjMlZ5WTI5dWRHVnVkQzVqYjIwd1pBWUtLd1lCQkFHRHZ6QUJDUVJXREZSb2RIUndjem92CkwyZHBkR2gxWWk1amIyMHZiSEZqTmpJMEwyTmhjaTF5ZFc1MGFXMWxMeTVuYVhSb2RXSXZkMjl5YTJac2IzZHoKTDNKbGJHVmhjMlV1ZVcxc1FISmxabk12ZEdGbmN5OHhMakUwTGpBd09BWUtLd1lCQkFHRHZ6QUJDZ1FxRENnNQpNbUV6TlRrd05HTTFNVGM1WVRrNVkyUmlOamxrT0RJMU5ESTVOVE5tT0RKbVlqa3lNR0poTUIwR0Npc0dBUVFCCmc3OHdBUXNFRHd3TloybDBhSFZpTFdodmMzUmxaREExQmdvckJnRUVBWU8vTUFFTUJDY01KV2gwZEhCek9pOHYKWjJsMGFIVmlMbU52YlM5c2NXTTJNalF2WTJGeUxYSjFiblJwYldVd09BWUtLd1lCQkFHRHZ6QUJEUVFxRENnNQpNbUV6TlRrd05HTTFNVGM1WVRrNVkyUmlOamxrT0RJMU5ESTVOVE5tT0RKbVlqa3lNR0poTUNBR0Npc0dBUVFCCmc3OHdBUTRFRWd3UWNtVm1jeTkwWVdkekx6RXVNVFF1TURBYUJnb3JCZ0VFQVlPL01BRVBCQXdNQ2pFek5qRXgKT1RJM01UUXdLUVlLS3dZQkJBR0R2ekFCRUFRYkRCbG9kSFJ3Y3pvdkwyZHBkR2gxWWk1amIyMHZiSEZqTmpJMApNQmdHQ2lzR0FRUUJnNzh3QVJFRUNnd0lOamt5TXpRMU5qUXdaQVlLS3dZQkJBR0R2ekFCRWdSV0RGUm9kSFJ3CmN6b3ZMMmRwZEdoMVlpNWpiMjB2YkhGak5qSTBMMk5oY2kxeWRXNTBhVzFsTHk1bmFYUm9kV0l2ZDI5eWEyWnMKYjNkekwzSmxiR1ZoYzJVdWVXMXNRSEpsWm5NdmRHRm5jeTh4TGpFMExqQXdPQVlLS3dZQkJBR0R2ekFCRXdRcQpEQ2c1TW1Fek5Ua3dOR00xTVRjNVlUazVZMlJpTmpsa09ESTFOREk1TlRObU9ESm1Zamt5TUdKaE1CY0dDaXNHCkFRUUJnNzh3QVJRRUNRd0hjbVZzWldGelpUQlpCZ29yQmdFRUFZTy9NQUVWQkVzTVNXaDBkSEJ6T2k4dloybDAKYUhWaUxtTnZiUzlzY1dNMk1qUXZZMkZ5TFhKMWJuUnBiV1V2WVdOMGFXOXVjeTl5ZFc1ekx6TTVNVEV4TURBeApOemN6TDJGMGRHVnRjSFJ6THpFd0ZnWUtLd1lCQkFHRHZ6QUJGZ1FJREFad2RXSnNhV013VUFZS0t3WUJCQUdECnZ6QUJHQVJDREVCeVpYQnZPbXh4WXpZeU5FQTJPVEl6TkRVMk5DOWpZWEl0Y25WdWRHbHRaVUF4TXpZeE1Ua3kKTnpFME9uSmxaanB5WldaekwzUmhaM012TVM0eE5DNHdNSUdMQmdvckJnRUVBZFo1QWdRQ0JIMEVld0I1QUhjQQozVDB3YXNiSEVUSmpHUjRjbVdjM0FxSktYcmplUEszL2g0cHlnQzhwN280QUFBR2hUaGhaYmdBQUJBTUFTREJHCkFpRUFxZkN4Nnh6R3V0T1NveVRLSDdsVFN4dFRMMHBmNGtQR1REMlliWEtISmxJQ0lRQ01CZ1ZaR0dZR3pPa0IKSk1VL2JENWxMMXA4S3lWYkR0ZlNBRWl0NDN0cFpqQUtCZ2dxaGtqT1BRUURBd05vQURCbEFqQkx5a0dvTHp3dwpVZXF5SmZad1IrOTR6bWsxRzZRR0swVWtpSUtsUEM0eWxtNUlueXhBT1pwaWpIZ25aUHl2VTZNQ01RRHI4Mm10CmpKemEwRXd2NDFubkxpUDBEVy9qYW1MOXF3aC93ak54VmxrclVGakQzcGcyNk5ybThCVVhQZzZqTE1JPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==","rekorBundle":{"SignedEntryTimestamp":"MEUCIG4EQ9bsQTzIrNCFQRZJmPPk2dKTOUsPeM6kNbcaPbYCAiEApBqdeQqsIRei7A1LULq4t5e1lBrMT5oBf+nC0GoPyzM=","Payload":{"body":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJjYjQzZWMwYjliMWY3YWQ0MzY1ZGMxYTMwZGJkYzZiNDFlYzY1YTViMjMzMjZjOTdmNDJiMmQ0ODZiMjAxNjdkIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJRzZMNjVDdy9FSnVEak82SEZZQ1RhWUN1OE9PR1BrVmtWRG9QVmZ0M2NXVUFpQVhNaFBpNWkwYmJ5aFBrcXlzQjJzMUc0RDFFbFV6MXhXRGU0ZG94bVdPa2c9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVYzJSRU5EUW0wMlowRjNTVUpCWjBsVlNHRXlhMU4yVVdoQ1RIRnRjR05yY1dnM0swbFNZVWhuUkhKQmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRSTlJHZDRUMVJSZUZkb1kwNU5hbGw0VFVSRk5FMUVaM2xQVkZGNFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZzYTI5SVFrSm1XR3N5V1hGT2RFd3pRa040WmxaUmFWa3dlRmN4TVdoNmFHbHdURkFLYVhZM1VXbGlLekZwVGpCbldrUjNhbUpWWkZWQk5DOTBUbTFqU1hweWExSklRbVJpYUU5REwyVkZSMHBKTVhsQ2NXRlBRMEpaTUhkbloxZEtUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFtbENaMDVXU0ZKRlFrRm1PRVZYUkVKWGFHeFNiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmlTRVpxVG1wSk1Fd3lUbWhqYVRGNVpGYzFNR0ZYTVd4TWVUVnVZVmhTYjJSWFNYWmtNamw1WVRKYWMySXpaSHBNTTBwc1lrZFdhQXBqTWxWMVpWY3hjMUZJU214YWJrMTJaRWRHYm1ONU9IaE1ha1V3VEdwQmQwOVJXVXRMZDFsQ1FrRkhSSFo2UVVKQlVWRnlZVWhTTUdOSVRUWk1lVGt3Q21JeWRHeGlhVFZvV1ROU2NHSXlOWHBNYldSd1pFZG9NVmx1Vm5wYVdFcHFZakkxTUZwWE5UQk1iVTUyWWxSQlZrSm5iM0pDWjBWRlFWbFBMMDFCUlVNS1FrRmtlVnBYZUd4WldFNXNUVVJaUjBOcGMwZEJVVkZDWnpjNGQwRlJUVVZMUkd0NVdWUk5NVTlVUVRCWmVsVjRUbnBzYUU5VWJHcGFSMGt5VDFkUk5BcE5hbFV3VFdwck1VMHlXVFJOYlZwcFQxUkpkMWx0UlhkR1VWbExTM2RaUWtKQlIwUjJla0ZDUWtGUlNHTnRWbk5hVjBaNldsUkJaMEpuYjNKQ1owVkZDa0ZaVHk5TlFVVkdRa0pLYzJOWFRUSk5hbEYyV1RKR2VVeFlTakZpYmxKd1lsZFZkMGhuV1V0TGQxbENRa0ZIUkhaNlFVSkNaMUZSWTIxV2JXTjVPVEFLV1Zka2VreDZSWFZOVkZGMVRVUkJOMEpuYjNKQ1owVkZRVmxQTDAxQlJVbENRekJOU3pKb01HUklRbnBQYVRoMlpFYzVjbHBYTkhWWlYwNHdZVmM1ZFFwamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcVlqSXdkMXBCV1V0TGQxbENRa0ZIUkhaNlFVSkRVVkpYUkVaU2IyUklVbmRqZW05MkNrd3laSEJrUjJneFdXazFhbUl5TUhaaVNFWnFUbXBKTUV3eVRtaGphVEY1WkZjMU1HRlhNV3hNZVRWdVlWaFNiMlJYU1haa01qbDVZVEphYzJJelpIb0tURE5LYkdKSFZtaGpNbFYxWlZjeGMxRklTbXhhYmsxMlpFZEdibU41T0hoTWFrVXdUR3BCZDA5QldVdExkMWxDUWtGSFJIWjZRVUpEWjFGeFJFTm5OUXBOYlVWNlRsUnJkMDVIVFRGTlZHTTFXVlJyTlZreVVtbE9hbXhyVDBSSk1VNUVTVFZPVkU1dFQwUktiVmxxYTNsTlIwcG9UVUl3UjBOcGMwZEJVVkZDQ21jM09IZEJVWE5GUkhkM1Rsb3liREJoU0ZacFRGZG9kbU16VW14YVJFRXhRbWR2Y2tKblJVVkJXVTh2VFVGRlRVSkRZMDFLVjJnd1pFaENlazlwT0hZS1dqSnNNR0ZJVm1sTWJVNTJZbE01YzJOWFRUSk5hbEYyV1RKR2VVeFlTakZpYmxKd1lsZFZkMDlCV1V0TGQxbENRa0ZIUkhaNlFVSkVVVkZ4UkVObk5RcE5iVVY2VGxScmQwNUhUVEZOVkdNMVdWUnJOVmt5VW1sT2FteHJUMFJKTVU1RVNUVk9WRTV0VDBSS2JWbHFhM2xOUjBwb1RVTkJSME5wYzBkQlVWRkNDbWMzT0hkQlVUUkZSV2QzVVdOdFZtMWplVGt3V1Zka2VreDZSWFZOVkZGMVRVUkJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQkNRWGROUTJwRmVrNXFSWGdLVDFSSk0wMVVVWGRMVVZsTFMzZFpRa0pCUjBSMmVrRkNSVUZSWWtSQ2JHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaVNFWnFUbXBKTUFwTlFtZEhRMmx6UjBGUlVVSm5OemgzUVZKRlJVTm5kMGxPYW10NVRYcFJNVTVxVVhkYVFWbExTM2RaUWtKQlIwUjJla0ZDUldkU1YwUkdVbTlrU0ZKM0NtTjZiM1pNTW1Sd1pFZG9NVmxwTldwaU1qQjJZa2hHYWs1cVNUQk1NazVvWTJreGVXUlhOVEJoVnpGc1RIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTUtZak5rZWt3elNteGlSMVpvWXpKVmRXVlhNWE5SU0Vwc1dtNU5kbVJIUm01amVUaDRUR3BGTUV4cVFYZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JYZFJjUXBFUTJjMVRXMUZlazVVYTNkT1IwMHhUVlJqTlZsVWF6VlpNbEpwVG1wc2EwOUVTVEZPUkVrMVRsUk9iVTlFU20xWmFtdDVUVWRLYUUxQ1kwZERhWE5IQ2tGUlVVSm5OemgzUVZKUlJVTlJkMGhqYlZaeldsZEdlbHBVUWxwQ1oyOXlRbWRGUlVGWlR5OU5RVVZXUWtWelRWTlhhREJrU0VKNlQyazRkbG95YkRBS1lVaFdhVXh0VG5aaVV6bHpZMWROTWsxcVVYWlpNa1o1VEZoS01XSnVVbkJpVjFWMldWZE9NR0ZYT1hWamVUbDVaRmMxZWt4NlRUVk5WRVY0VFVSQmVBcE9lbU42VERKR01HUkhWblJqU0ZKNlRIcEZkMFpuV1V0TGQxbENRa0ZIUkhaNlFVSkdaMUZKUkVGYWQyUlhTbk5oVjAxM1ZVRlpTMHQzV1VKQ1FVZEVDblo2UVVKSFFWSkRSRVZDZVZwWVFuWlBiWGg0V1hwWmVVNUZRVEpQVkVsNlRrUlZNazVET1dwWldFbDBZMjVXZFdSSGJIUmFWVUY0VFhwWmVFMVVhM2tLVG5wRk1FOXVTbXhhYW5CNVdsZGFla3d6VW1oYU0wMTJUVk0wZUU1RE5IZE5TVWRNUW1kdmNrSm5SVVZCWkZvMVFXZFJRMEpJTUVWbGQwSTFRVWhqUVFvelZEQjNZWE5pU0VWVVNtcEhValJqYlZkak0wRnhTa3RZY21wbFVFc3pMMmcwY0hsblF6aHdOMjgwUVVGQlIyaFVhR2hhWW1kQlFVSkJUVUZUUkVKSENrRnBSVUZ4WmtONE5uaDZSM1YwVDFOdmVWUkxTRGRzVkZONGRGUk1NSEJtTkd0UVIxUkVNbGxpV0V0SVNteEpRMGxSUTAxQ1oxWmFSMGRaUjNwUGEwSUtTazFWTDJKRU5XeE1NWEE0UzNsV1lrUjBabE5CUldsME5ETjBjRnBxUVV0Q1oyZHhhR3RxVDFCUlVVUkJkMDV2UVVSQ2JFRnFRa3g1YTBkdlRIcDNkd3BWWlhGNVNtWmFkMUlyT1RSNmJXc3hSelpSUjBzd1ZXdHBTVXRzVUVNMGVXeHROVWx1ZVhoQlQxcHdhV3BJWjI1YVVIbDJWVFpOUTAxUlJISTRNbTEwQ21wS2VtRXdSWGQyTkRGdWJreHBVREJFVnk5cVlXMU1PWEYzYUM5M2FrNTRWbXhyY2xWR2FrUXpjR2N5Tms1eWJUaENWVmhRWnpacVRFMUpQUW90TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0=","integratedTime":1792311581,"logIndex":3308757191,"logID":"c0d23d6ad406973f9559f3ba2d1ca01f84147d8ffc5b8445c224f98b9591801d"}}}