Invert the tool↔policy control flow per the file-context event-gate RFC. dsh-tool-fs becomes the executor — it reads/writes/edits through ctx.fs directly, owns read windowing, and dispatches fs/write-expectation / fs/edit-expectation (single-slot waterfalls) plus a contained fs/observed emit. dsh-file-context drops its ctx.fileContext service and becomes a pure event-gate plugin (observed-state + read-before-edit + version-guarded write/edit, decided on those events). The provider's version guard becomes optional so ctx.fs alone is a complete unconstrained text-storage seam: removing the policy plugin gracefully loses the policy instead of breaking the tool at a service-injection boundary. |
||
|---|---|---|
| .. | ||
| check-vendor-manifest.sh | ||
| check-workspace-constraints.ts | ||
| doc-typecheck.ts | ||
| gen-cordis-catalog.ts | ||
| gen-module-graph.ts | ||
| install-lefthook.mjs | ||
| publint-all.ts | ||
| type-equiv.manifest.json | ||
| verify-doc-refs.ts | ||
| verify-md-links.ts | ||
| verify-md-wrap.ts | ||
| verify-package-paths.ts | ||
| verify-rfc-classification.ts | ||
| verify-type-equiv.ts | ||