You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Incan intentionally emits Rust and native artifacts, but the build surface does not yet provide a stable machine-readable report of what was emitted, which Rust crates/features were involved, which Incan/stdlib modules participated, and where generated outputs live. Users and agents can inspect target/, but that is discover-by-accident rather than a supported contract.
This overlaps with generated Rust inspection work in #567, but the requested surface is broader: a build artifact report that lets tools, CI, docs, and agents understand a build without reverse-engineering directory layout or Cargo output.
Proposed solution
Add a build report output, with exact CLI spelling to be finalized. Candidate surface:
Depend on Cargo JSON output directly. Cargo can provide useful low-level data, but Incan needs to report Incan source modules, stdlib surfaces, interop adapters, and compiler-owned artifact semantics.
Scope / acceptance criteria
In scope:
Define a versioned JSON build report schema.
Emit the report for executable and library builds.
Include generated Rust paths, emitted artifact paths, package metadata, dependency/feature summaries, and build policy flags.
Area
Problem statement
Incan intentionally emits Rust and native artifacts, but the build surface does not yet provide a stable machine-readable report of what was emitted, which Rust crates/features were involved, which Incan/stdlib modules participated, and where generated outputs live. Users and agents can inspect
target/, but that is discover-by-accident rather than a supported contract.This overlaps with generated Rust inspection work in #567, but the requested surface is broader: a build artifact report that lets tools, CI, docs, and agents understand a build without reverse-engineering directory layout or Cargo output.
Proposed solution
Add a build report output, with exact CLI spelling to be finalized. Candidate surface:
The report should include, where available:
incan.tomlThe report should complement human build output and generated Rust inspection tooling, not replace them.
Alternatives considered
Scope / acceptance criteria
In scope:
Out of scope:
Done when:
incan build ... --report jsonemits a deterministic report for successful builds.