{"_id":"@antientropier/dsh-artifact-provenance","_rev":"2-a737ba4571d857522f15ff8a2cb50b01","name":"@antientropier/dsh-artifact-provenance","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@antientropier/dsh-artifact-provenance","version":"0.1.0","license":"MIT","_id":"@antientropier/dsh-artifact-provenance@0.1.0","maintainers":[{"name":"antientropier","email":"AntiEntropieR@foxmail.com"}],"homepage":"https://github.com/YOUR_USERNAME/dsh-openscience#readme","bugs":{"url":"https://github.com/YOUR_USERNAME/dsh-openscience/issues"},"dist":{"shasum":"af69d5f0faf303c0a3eb28395cce82af272f2fa7","tarball":"https://registry.npmjs.org/@antientropier/dsh-artifact-provenance/-/dsh-artifact-provenance-0.1.0.tgz","fileCount":10,"integrity":"sha512-CAlQs2GFqDG9hIvYtazKv6dqKWneEZ+C9/anvN/nQMja/HIK6kaMAX1Gzs0ig3iWVWvlcTqRLaMI06FQlIUxBA==","signatures":[{"sig":"MEUCIBBjnc1vnvxI0Sgdgcr2zALp3YKPsgCuVssmwAEC4zkJAiEAkkGg5i4qKjm1fMn8RsJwpXHeg+g/9vrsA3hU6JUV6B0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28655},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"gitHead":"163cfd5e4df4d38a52869918b0209d2dddbea35d","_npmUser":{"name":"antientropier","email":"AntiEntropieR@foxmail.com"},"repository":{"url":"git+https://github.com/YOUR_USERNAME/dsh-openscience.git","type":"git","directory":"plugin/artifact-provenance"},"_npmVersion":"11.9.0","description":"Artifact provenance projection: fold session logs into per-file last-write records","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-artifact-provenance_0.1.0_1786714326517_0.9554860538169343","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@antientropier/dsh-artifact-provenance","description":"Artifact provenance projection: fold session logs into per-file last-write records","version":"0.1.1","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/Asukaleo-aa/dsh-openscience.git","directory":"plugin/artifact-provenance"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1","@deepseek-ai/cordis":"^4.0.1"},"devDependencies":{"@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1","@deepseek-ai/cordis":"^4.0.1"},"gitHead":"d382bd5aca0b4c98547a7ec704f879611774f7c4","_id":"@antientropier/dsh-artifact-provenance@0.1.1","bugs":{"url":"https://github.com/Asukaleo-aa/dsh-openscience/issues"},"homepage":"https://github.com/Asukaleo-aa/dsh-openscience#readme","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-6Fq+BeJMrmqwkYrS5X+0S6dwk5YgZRiFAy963Psbfv5PgLa4m+HRyazSozIvoPd97R82E4oTMFFvOweIOHknqA==","shasum":"0a5528590b80ef2d45e458d497a19b1c4e3eb89b","tarball":"https://registry.npmjs.org/@antientropier/dsh-artifact-provenance/-/dsh-artifact-provenance-0.1.1.tgz","fileCount":10,"unpackedSize":28653,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD0FZl3qI421iY/q/tvKeCg6RiIVEhbWFe4bfcn+CsGwgIgCr2BJtwCqbWzwPbMVuz7o6gXQzr5Qu+1LvdPJplfzi8="}]},"_npmUser":{"name":"antientropier","email":"AntiEntropieR@foxmail.com"},"directories":{},"maintainers":[{"name":"antientropier","email":"AntiEntropieR@foxmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-artifact-provenance_0.1.1_1786714910374_0.8654378502584021"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-14T13:32:06.336Z","modified":"2026-08-14T13:41:50.687Z","0.1.0":"2026-08-14T13:32:06.673Z","0.1.1":"2026-08-14T13:41:50.513Z"},"bugs":{"url":"https://github.com/Asukaleo-aa/dsh-openscience/issues"},"license":"MIT","homepage":"https://github.com/Asukaleo-aa/dsh-openscience#readme","repository":{"type":"git","url":"git+https://github.com/Asukaleo-aa/dsh-openscience.git","directory":"plugin/artifact-provenance"},"description":"Artifact provenance projection: fold session logs into per-file last-write records","maintainers":[{"name":"antientropier","email":"AntiEntropieR@foxmail.com"}],"readme":"# @deepseek-ai/dsh-artifact-provenance\n\nArtifact provenance 投影：从会话日志折叠出每个文件最后一次写入的记录，替代 openscience 的 `.openscience/provenance.jsonl` 约定层。\n\n## 设计\n\n- **纯折叠投影**：`foldArtifactManifest(events)` 从 `tool/result` 的 `meta.diffs` 提取覆盖写入，从 `tool/call` 的 `arguments.file_path` 兜底新建文件（write 的 create 不产 diff），最后写入胜出。\n- **架构级替代**：数据源是 session log（运行时强制、model-visible means logged），不是靠 skill 约定去写的文件。\n- **无状态**：manifest 按需折叠，可恢复 / fork / 压缩后原样重放。\n\n## ctx 接口\n\n- `ctx.provenance.manifest(session)` → `Map<path, { seq, time }>`\n- `ctx.provenance.lastWrite(session, path)` → `{ seq, time } | undefined`\n\n## 模型工具\n\n- `provenance_last_write`：查询某文件最后写入的 seq/time，供 traceability-review 等 skill 做图↔代码一致性检查。\n\n## 配置\n\n```yaml\n- id: artifact-provenance\n  name: '@deepseek-ai/dsh-artifact-provenance'\n```\n","readmeFilename":"README.md"}