{"_id":"@buddhilive/dsh-session-log-deepseek","name":"@buddhilive/dsh-session-log-deepseek","dist-tags":{"alpha":"0.1.2-alpha.3","latest":"0.1.2-alpha.3"},"versions":{"0.1.2-alpha.3":{"name":"@buddhilive/dsh-session-log-deepseek","description":"Incremental lossless session-log request extension for the official DeepSeek LLM API","version":"0.1.2-alpha.3","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/Buddhilive/buddhi-ai-harness.git","directory":"packages/session/session-log-deepseek"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","dependencies":{"@buddhilive/dsh-brand":"^0.1.2-alpha.3","@deepseek-ai/schemastery":"^3.18.2"},"peerDependencies":{"@buddhilive/dsh-deepseek-llm-api-extensions":"^0.1.2-alpha.3","@deepseek-ai/cordis":"^4.0.2","@buddhilive/dsh-invariants":"^0.1.2-alpha.3","@buddhilive/dsh-session":"^0.1.2-alpha.3"},"devDependencies":{"@buddhilive/dsh-deepseek-llm-api-extensions":"^0.1.2-alpha.3","@deepseek-ai/cordis":"^4.0.2","@buddhilive/dsh-invariants":"^0.1.2-alpha.3","@buddhilive/dsh-session":"^0.1.2-alpha.3"},"_id":"@buddhilive/dsh-session-log-deepseek@0.1.2-alpha.3","bugs":{"url":"https://github.com/Buddhilive/buddhi-ai-harness/issues"},"homepage":"https://github.com/Buddhilive/buddhi-ai-harness#readme","_integrity":"sha512-ejoN55rrNOsrfEVIKYpreW0E4GvJ8k134d7cF9AyY4nXONwPrTCyHuWOOcx1+1tlLo3VhcQoIFXbZWYppAP3vA==","_resolved":"C:\\DevDojo\\Buddhi\\buddhi-ai-harness\\dist\\npm\\buddhilive-dsh-session-log-deepseek-0.1.2-alpha.3.tgz","_from":"file:C:/DevDojo/Buddhi/buddhi-ai-harness/dist/npm/buddhilive-dsh-session-log-deepseek-0.1.2-alpha.3.tgz","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-ejoN55rrNOsrfEVIKYpreW0E4GvJ8k134d7cF9AyY4nXONwPrTCyHuWOOcx1+1tlLo3VhcQoIFXbZWYppAP3vA==","shasum":"ea61a71cd4e1099318a38e6e7a18781ce973a1b1","tarball":"https://registry.npmjs.org/@buddhilive/dsh-session-log-deepseek/-/dsh-session-log-deepseek-0.1.2-alpha.3.tgz","fileCount":13,"unpackedSize":26534,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICVYhPPQ6dINm6hL/pzciYHiIOlwM5CyU/hZWdBOL7KmAiEA5l627uad/LaDcfRMeS3o00Gd39chc9Xfs2lbeUFVAvM="}]},"_npmUser":{"name":"buddhilive","email":"visitbudkavin@gmail.com"},"directories":{},"maintainers":[{"name":"buddhilive","email":"visitbudkavin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-session-log-deepseek_0.1.2-alpha.3_1788165734818_0.3789582363092958"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-31T08:42:14.601Z","0.1.2-alpha.3":"2026-08-31T08:42:14.961Z","modified":"2026-08-31T08:42:15.213Z"},"maintainers":[{"name":"buddhilive","email":"visitbudkavin@gmail.com"}],"description":"Incremental lossless session-log request extension for the official DeepSeek LLM API","homepage":"https://github.com/Buddhilive/buddhi-ai-harness#readme","repository":{"type":"git","url":"git+https://github.com/Buddhilive/buddhi-ai-harness.git","directory":"packages/session/session-log-deepseek"},"bugs":{"url":"https://github.com/Buddhilive/buddhi-ai-harness/issues"},"license":"MIT","readme":"---\ndescription: \"面向启用官方 DeepSeek 请求元数据的部署，说明规范会话日志的增量上传。\"\nkind: \"package-reference\"\n---\n\n# @buddhilive/dsh-session-log-deepseek\n\n[English](README.md) | 中文\n\n## 概述\n\n用于 DeepSeek 官方 LLM API 请求的增量权威会话日志上传。该函数插件注入 `ctx.sessions` 与 `ctx.deepseekLlmApiExtensions`，并拥有 `dsh_session_log` 请求字段以及用于派生接受水位的持久 `session-log-deepseek/delivery-accepted` 事件。仅当官方 API 需要接收 Session 日志后缀时才启用它。\n\n## 目录\n\n- [配置](#configuration)\n- [请求字段](#request-field)\n- [接受与重试](#acceptance-and-retry)\n- [模型体验](#model-experience)\n- [已知限制与暂缓事项](#known-limitations-and-deferred-work)\n- [开发备注](#dev-note)\n\n-----\n\n<a id=\"configuration\"></a>\n## 配置\n\n| 配置键 | 默认值 | 含义 |\n|---|---:|---|\n| `enabled` | `false` | 注册 `dsh_session_log` 贡献。将其设为 `true` 可选择启用会话日志上传。 |\n\n随附 profile 会挂载该插件，让 overlay 可以启用它；默认配置不会注册请求字段，也不会追加接受水位。\n\n<a id=\"request-field\"></a>\n## 请求字段\n\n对于携带存活 `sessionId` 的请求，插件会折叠该确切会话身份的最大已接受水位，对 `Session.events` 取快照，并发送水位之后的连续后缀。进程内 fold 会让每条事件只被扫描一次并增量消费后续追加；重启与 HMR 会从持久日志重建它。版本 1 字段包含不可变的 `SessionHeader`、`afterSeq`、`throughSeq`，以及作为数组直接元素的该范围内每个完整权威 `SessionEvent`。每个水位都会记录已接受请求发送的会话 id，因此 fork 会话会忽略从父会话继承的水位。\n\n<a id=\"acceptance-and-retry\"></a>\n## 接受与重试\n\nDeepSeek 适配器会在 HTTP 2xx 后、消费 SSE（Server-Sent Events）正文前调用已准备贡献的 `accept()`。接受操作会追加 `session-log-deepseek/delivery-accepted` 及已上传的 `throughSeq`；下一次请求再把该事件作为新后缀的一部分上传。传输失败与非 2xx 失败不会追加接受记录，因此后续请求会重发不确定范围。并发交付可能乱序得到接受；折叠匹配记录中最大的 `throughSeq` 可以防止游标回退。\n\n服务端接受后、持久化水位前发生崩溃，可能让恢复后的进程重放已经接受的范围。这是至少一次交付的失败方向：不确定性会制造重复，绝不会跳过序列。普通会话检查点策略会在下一个语义检查点持久化水位；本插件不执行独立 I/O。\n\n缺少存活会话的直接请求会省略 `dsh_session_log`。普通 agent（智能体）、压缩（compaction）与会话标题调用都会携带存活会话 id。\n\n<a id=\"model-experience\"></a>\n## 模型体验\n\n### 会话日志元数据\n\n#### 模型看到的内容\n\n无。`dsh_session_log` 是 DeepSeek 请求中模型输入字段的同级字段，不会插入 `messages`、系统提示词或工具 schema。\n\n#### Token 影响\n\n模型输入 token 为零；该字段只会增加 HTTP 请求字节数。\n\n#### KV Cache 影响\n\n无；模型可见请求前缀保持不变。\n\n## 已知限制与暂缓事项\n\n<a id=\"known-limitations-and-deferred-work\"></a>\n\n- **崩溃窗口重复**——2xx 后、接受水位持久化前进程丢失，会在恢复时触发保守重放。\n- **缺少存活会话就没有字段**——直接调用或陈旧会话调用没有可供快照的权威日志；显式缺失语义仍暂缓处理。\n- **没有独立请求大小上限**——完整交付会快速失败；提供方拒绝会保持游标不变，而非截断日志。\n\n\n<a id=\"dev-note\"></a>\n### 开发备注\n\n<details>\n<summary>维护者工作上下文——点击展开</summary>\n\n无。\n\n</details>\n","readmeFilename":"README.zh.md","_rev":"1-4c8300988e00ed70a14acabf44cfc82e"}