Skip to content

Commit f4b8ef3

Browse files
Claude Sonnet (coordinator)claude
andcommitted
feat: FDKMS foundation — document ingestion, Xero OAuth2, LLM vision, filesystem metadata
Adds the Financial Document Knowledge Management System foundation across four new/updated crates: document model (DocType, XeroLink, DocumentRecord), #tag newtypes, sidecar+xattr filesystem metadata backends, blocking Xero PKCE OAuth2 client, blocking OpenAI-compatible LLM client (receipt/document OCR + transaction classification), XeroService MCP bridge, and ledgerr_xero as the 8th MCP tool. Regenerates docs and scripts from Rust contract source. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 7ec2baf commit f4b8ef3

29 files changed

Lines changed: 3004 additions & 9 deletions

Cargo.lock

Lines changed: 181 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
members = [
33
"crates/ledger-core",
44
"crates/ledgerr-mcp",
5+
"crates/ledgerr-xero",
6+
"crates/ledgerr-llm",
57
"xtask",
68
]
79
resolver = "2"
@@ -13,6 +15,15 @@ version = "1.4.0"
1315

1416
[workspace.dependencies]
1517
rust_xlsxwriter = "0.94.0"
18+
serde = { version = "1", features = ["derive"] }
19+
serde_json = "1"
20+
thiserror = "2"
21+
tokio = { version = "1", features = ["full"] }
22+
reqwest = { version = "0.12", features = ["blocking", "json", "rustls-tls"], default-features = false }
23+
chrono = { version = "0.4", features = ["serde"] }
24+
rust_decimal = { version = "1.41.0", features = ["serde"] }
25+
blake3 = "1.8.3"
26+
tracing = "0.1"
1627

1728
[workspace.lints.rust]
1829
unsafe_code = "forbid"

crates/ledger-core/Cargo.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,18 @@ license.workspace = true
66

77
[dependencies]
88
serde = { version = "1", features = ["derive"] }
9+
serde_json = "1"
910
toml = "0.8"
1011
rust_xlsxwriter = { workspace = true }
1112
calamine = "0.34"
1213
thiserror = "2"
1314
blake3 = "1"
1415
rhai = "1.24.0"
1516

17+
# filesystem metadata — xattr on Linux; sidecar fallback is pure std
18+
[target.'cfg(target_os = "linux")'.dependencies]
19+
xattr = "1"
20+
1621
[lints]
1722
workspace = true
1823

0 commit comments

Comments
 (0)