agileplus-trace-validator 0.3.0

Typed intent graphs for engineering work — convert prompts into validated DAGs of intents, features, tasks, tests, and edges, then store, query, and serve them from Rust, HTTP, or MCP.
Documentation

agileplus-trace-validator

Ontology, DAG, and edge-constraint validator for AgilePlus intent graphs. Every graph persisted into the workspace must pass through this crate.

Purpose

agileplus-trace-validator is the workspace's canonical validation layer. It enforces the AgilePlus Intent Graph Ontology (node kinds, edge kinds, property schemas, DAG acyclicity, edge endpoint constraints) so downstream consumers — CLI, HTTP server, MCP server, web UI, plugins — can trust that any graph they read is internally consistent.

Installation

This is a library crate. There is no binary to install. Add it to your Cargo.toml:

[dependencies]
agileplus-trace-validator = "0.3"

Or build the workspace from source:

cargo build -p agileplus-trace-validator

Minimal Usage

Validate an in-memory intent graph built with agileplus-domain:

use agileplus_domain::intent_graph::IntentGraphBuilder;
use agileplus_trace_validator::{validate, ValidationError};

let graph = IntentGraphBuilder::new("Build OAuth2 login")
    .feature("Login endpoint")
    .feature("Session manager")
    .plan("OAuth2 plan")
    .build();

match validate(&graph) {
    Ok(report) => println!("ok: {} nodes, {} edges", report.node_count, report.edge_count),
    Err(ValidationError::Cycle { .. }) => panic!("graph contains a cycle"),
    Err(e) => panic!("validation failed: {e}"),
}

The validator returns either a ValidationReport summarising the graph's shape, or a typed ValidationError describing the first violation. The workspace's intent, validate, and bulk import subcommands all funnel through this function.

Ontology Extensions

agileplus-trace-validator also owns the ontology_ext module, which adds optional node kinds (Stories, Bugs, Metrics, Hypotheses) on top of the core ontology. See crates/agileplus-trace-validator/src/ontology_ext.rs.

API Reference

See the workspace docs/ for the full ontology spec, edge-constraint tables, and the proptest-driven property coverage in the test suite.

License

MIT — see LICENSE.