Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ WORKDIR /app

COPY --from=builder /app/target/release/ledgerr-mcp-server /usr/local/bin/ledgerr-mcp-server

ENV LEDGER_WORKBOOK_PATH=/data/tax-ledger.xlsx
ENV LEDGERR_WORKBOOK_PATH=/data/tax-ledger.xlsx
ENV LEDGER_PDF_INBOX=/data/inbox

CMD ["/usr/local/bin/ledgerr-mcp-server"]
2 changes: 1 addition & 1 deletion Dockerfile.ledgerr-mcp
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ RUN cargo build --release -p ledgerr-mcp
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
COPY --from=builder /app/target/release/ledgerr-mcp-server /usr/local/bin/ledgerr-mcp
EXPOSE 8001
# NOTE: No EXPOSE — this MCP server uses stdio transport, not TCP.
ENTRYPOINT ["/usr/local/bin/ledgerr-mcp"]
8 changes: 8 additions & 0 deletions Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -664,3 +664,11 @@ wrkflw-full-test emulation="secure-emulation":
@echo ""
@echo "=== Step 2: Run docgen pipeline ==="
wrkflw run --runtime {{emulation}} .github/workflows/wrkflw-docgen.yml

# Verify all env vars in source code are documented in .env.example
env-docs-check:
bash scripts/check-env-docs.sh

# Timed b00t maintenance probe for version/task/focus/audit surfaces.
b00t-maintenance-check budget="":
bash scripts/check-b00t-maintenance.sh {{ if budget == "" { "" } else { "--budget " + budget } }}
Comment on lines +670 to +674
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# l3dg3rr

> **Note on naming:** This project uses multiple names (`l3dg3rr`, `ledgerr-mcp`, `ledgrrr`, `ledg3rr`) depending on context. See [POLYSEME-MAP.md](docs/POLYSEME-MAP.md) for the mapping.

[![CI](https://github.com/PromptExecution/l3dg3rr/actions/workflows/ci.yml/badge.svg)](https://github.com/PromptExecution/l3dg3rr/actions/workflows/ci.yml)
[![Release](https://github.com/PromptExecution/l3dg3rr/actions/workflows/release.yml/badge.svg)](https://github.com/PromptExecution/l3dg3rr/actions/workflows/release.yml)
[![Documentation](https://img.shields.io/badge/docs-github.io-blue)](https://promptexecution.github.io/l3dg3rr/)
Expand Down
3 changes: 1 addition & 2 deletions crates/arc-kit-au/src/graph.rs
Original file line number Diff line number Diff line change
Expand Up @@ -255,10 +255,9 @@ impl Default for EvidenceGraph {
#[cfg(test)]
mod tests {
use super::*;
use crate::node::{Classification, SourceDoc, Transaction};
use crate::node::{SourceDoc, Transaction};
use chrono::TimeZone;
use chrono::Utc;
use rust_decimal::Decimal;

fn test_doc() -> SourceDoc {
SourceDoc {
Expand Down
7 changes: 3 additions & 4 deletions crates/holon-viz/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ blake3.workspace = true
chrono.workspace = true
thiserror.workspace = true
tracing.workspace = true
specta = { version = "=2.0.0-rc.25", features = ["derive"] }

[[bin]]
name = "holon-viz-demo"
Expand All @@ -21,6 +20,6 @@ path = "src/bin/demo.rs"
[dev-dependencies]
serde_json.workspace = true
tempfile.workspace = true

[dev-dependencies]
serde_json.workspace = true
# CDP integration test dependency — only required when TEST_WEBVIEW=1 is set
# cargo test --test holon_viz_visual_e2e # e2e with live Tauri WebView2
# cargo test # unit + integration (no webview)
10 changes: 5 additions & 5 deletions crates/holon-viz/src/cytoscape.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use serde::{Deserialize, Serialize};
use crate::holon::Holon;

/// Data payload for a Cytoscape.js node element.
#[derive(Debug, Clone, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CytoscapeNodeData {
pub id: String,
pub label: String,
Expand All @@ -26,13 +26,13 @@ pub struct CytoscapeNodeData {
}

/// A single Cytoscape.js node element.
#[derive(Debug, Clone, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CytoscapeNode {
pub data: CytoscapeNodeData,
}

/// Data payload for a Cytoscape.js edge element.
#[derive(Debug, Clone, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CytoscapeEdgeData {
pub id: String,
pub source: String,
Expand All @@ -41,15 +41,15 @@ pub struct CytoscapeEdgeData {
}

/// A single Cytoscape.js edge element.
#[derive(Debug, Clone, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CytoscapeEdge {
pub data: CytoscapeEdgeData,
}

/// Serializable Cytoscape.js graph — nodes and edges with `data` fields.
///
/// Construct via [`HolonGraph::from_holons`].
#[derive(Debug, Clone, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CytoscapeGraph {
pub nodes: Vec<CytoscapeNode>,
pub edges: Vec<CytoscapeEdge>,
Expand Down
2 changes: 1 addition & 1 deletion crates/holon-viz/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ pub mod gen;
pub mod type_graph;

pub use controller::{ProcessController, ProcessStep, TransitionReceipt};
pub use cytoscape::{CytoscapeEdge, CytoscapeGraph, CytoscapeNode};
pub use cytoscape::{CytoscapeEdge, CytoscapeEdgeData, CytoscapeGraph, CytoscapeNode, CytoscapeNodeData};
pub use emitter::{Owl2Emitter, SysmlV2Emitter};
pub use holon::{Holon, HolonKind};
pub use log::{ActionKind, ActionRecord, ImmutableActionLog};
Expand Down
8 changes: 4 additions & 4 deletions crates/holon-viz/src/type_graph.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use crate::cytoscape::{
};

/// A Rust type node suitable for type relationship visualization.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize)]
pub struct TypeNode {
/// Stable type identifier, usually a fully-qualified Rust path.
pub id: String,
Comment on lines 11 to 15
Expand All @@ -30,7 +30,7 @@ pub struct TypeNode {

/// Supported relationship kinds between Rust types.
#[derive(
Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize, specta::Type,
Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize,
)]
#[serde(rename_all = "snake_case")]
pub enum TypeRelationshipKind {
Expand Down Expand Up @@ -74,7 +74,7 @@ impl TypeRelationshipKind {

/// A directed relationship between two type nodes.
#[derive(
Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize, specta::Type,
Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize,
)]
pub struct TypeRelationship {
pub source: String,
Expand All @@ -101,7 +101,7 @@ impl TypeRelationship {
}

/// Serializable Rust type relationship graph.
#[derive(Debug, Clone, Default, PartialEq, Eq, Serialize, Deserialize, specta::Type)]
#[derive(Debug, Clone, Default, PartialEq, Eq, Serialize, Deserialize)]
pub struct TypeRelationshipGraph {
pub nodes: Vec<TypeNode>,
pub relationships: Vec<TypeRelationship>,
Expand Down
Loading
Loading