p1-1: tree-1 fixture + snapshot/determinism tests

fixtures/source-fs/tree-1/:
  README.md
  notes/alpha.md
  notes/beta.md
  ignored/skip.tmp        (excluded by .kbignore *.tmp)
  .kbignore               ("*.tmp")
  .DS_Store               (implicitly excluded by FsSourceConnector)

The committed baseline (tree-1.snapshot.json) has discovered_at,
source_uri.value, and stored.path replaced with "<stripped>" so the
JSON is portable across checkout locations and CI runs. The test
applies the same stripping to scan output before comparing.

The determinism test runs scan twice and asserts byte-identical
serialized JSON (post-strip) — same filesystem state must yield the
same Vec<RawAsset>.

Regenerate baseline with `KB_REGEN_SNAPSHOT=1 cargo test -p kb-source-fs
--test snapshot_tree1 -- tree_1_snapshot_matches_baseline`.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-30 12:28:00 +00:00
parent 3d4c485415
commit 0699220d5d
8 changed files with 217 additions and 0 deletions

View File

@@ -0,0 +1,68 @@
[
{
"asset_id": "bd6e5649e546d6ac94c3269ffe7192c5",
"byte_len": 6,
"checksum": "f6b71def043f1fd92f2d34969a7272a9d134730551de8c9754c4be79fbc0aef3",
"discovered_at": "<stripped>",
"media_type": {
"other": ""
},
"source_uri": {
"kind": "file",
"value": "<stripped>"
},
"stored": {
"kind": "copied",
"path": "<stripped>"
},
"workspace_path": ".kbignore"
},
{
"asset_id": "ba6cd31cab86eff7a86638ee76494bcf",
"byte_len": 169,
"checksum": "b0124489083674f6ad99a57ee5fc425feb71754a538a97a1ab580e8eb9b1f1c1",
"discovered_at": "<stripped>",
"media_type": "markdown",
"source_uri": {
"kind": "file",
"value": "<stripped>"
},
"stored": {
"kind": "copied",
"path": "<stripped>"
},
"workspace_path": "README.md"
},
{
"asset_id": "3381fcc34cf9415a391ba6b0dc6037c5",
"byte_len": 11,
"checksum": "e9fa9a5e0725d7bf6ec9d1565d3921eb6b62aa7f0db40c1c3ffebda7475d4258",
"discovered_at": "<stripped>",
"media_type": "markdown",
"source_uri": {
"kind": "file",
"value": "<stripped>"
},
"stored": {
"kind": "copied",
"path": "<stripped>"
},
"workspace_path": "notes/alpha.md"
},
{
"asset_id": "e300aa98aec843d2df1dd8f43702b257",
"byte_len": 10,
"checksum": "3e4df2f43563730d61672ce67a9bf479bc7c7a2f1384e2081d52e06f143353ed",
"discovered_at": "<stripped>",
"media_type": "markdown",
"source_uri": {
"kind": "file",
"value": "<stripped>"
},
"stored": {
"kind": "copied",
"path": "<stripped>"
},
"workspace_path": "notes/beta.md"
}
]

1
fixtures/source-fs/tree-1/.DS_Store vendored Normal file
View File

@@ -0,0 +1 @@
macOS Finder metadata placeholder. Implicitly excluded by FsSourceConnector.

View File

@@ -0,0 +1 @@
*.tmp

View File

@@ -0,0 +1,5 @@
# tree-1
Fixture for `kb-source-fs` snapshot tests. Contents are intentionally tiny
and stable — bumping a byte here will require regenerating the snapshot
baseline.

View File

@@ -0,0 +1 @@
should be excluded by .kbignore

View File

@@ -0,0 +1 @@
alpha note

View File

@@ -0,0 +1 @@
beta note