mirror of
https://github.com/morluto/rea.git
synced 2026-11-11 01:13:39 +00:00
* fix(cli): publish partial Evidence to --evidence_output on failure publishCliAnalysisEvidence returned a failed result unchanged before any --evidence_output handling. When a source reached its deadline, or another failure carried partial Evidence, the requested file was not written and --detail summary still printed the complete partial Evidence inline, which reached more than 64 MB on a large build. A failure whose details.partial_observation is authenticated Evidence now publishes it through the same projection and new-file publication as a successful result. The failure keeps its code, message and remediation. With --detail summary, details.partial_observation holds the summary view, and details.diagnostics.evidence_bundle reports the path and bytes. A refused publication keeps the complete partial Evidence inline and adds details.diagnostics.evidence_bundle_error with the refusal and a limitation. Without --evidence_output, for cancellation, and for raw provider observations the failure output is unchanged. Fixes #7787 * fix(cli): keep committed partial Evidence receipts on refused publication When publishing the partial Evidence of a failed analysis, a refusal can follow a commit. Staging cleanup that stays incomplete after its retry returns cleanup_incomplete with published_path and bytes, and a cancellation after commit returns cancelled with diagnostics.evidence_bundle. The failure path read only the second form, so a committed file with incomplete cleanup was reported as not published, without its receipt or the cleanup resources, and the full partial Evidence went back inline. Keep the original analysis failure and record the receipt from either form in details.diagnostics.evidence_bundle. Incomplete publication cleanup adds published, published_path, bytes, cleanup and resources to details, the shape a successful run's cleanup_incomplete reports; resources join any the analysis failure already reports, and its own cleanup reason is kept. Once the file is committed, the delivered view (the summary with --detail summary) replaces the inline partial Evidence. Receipts omit a path that holds an excluded sensitive value, as on success. Tests drive the real staged publication through its commit point: cleanup that stays incomplete, cleanup confirmed by retry, and SIGINT after commit. A composition test checks receipt redaction on the failure path. * fix(cli): report incomplete partial publication cleanup --------- Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Documentation directory
REA documentation is organized by reader task and document owner. This directory
links every authored guide; the site also serves separate
product pages. The VitePress documentation source is this docs/ tree.
Getting started
- Installation and setup
- Client configuration and troubleshooting
- CLI and Evidence
- Guided MCP prompts and completion
Native binaries
- Native binary investigation
- Go binary build metadata
- Offline binary diagnostics
- ELF and Mach-O initializer functions
- ELF unwind function ranges
- Linux kernel build config
- Recorded crash evidence
- Windows Shell Link shortcuts
JavaScript and Electron
- JavaScript Application Graph
- Cross-layer JavaScript application workflows
- JavaScript artifact reconstruction
- JavaScript source recovery
- Passive Node and Electron runtime observation
- JavaScript static/runtime reconciliation
- Electron file-page observation
- V8 code cache inspection
Browser and captured websites
- Website observation with CDP
- Browser scenario contract
- Website runtime source attribution
- Historical web network captures
- HTTP/3 capture lab
- Captured website source locations
- Captured website module relationships
- Captured website scripts and static JavaScript analysis
Android applications
- Static Android APK analysis
- Apktool resource decoding
- ADB device inspection and acquisition
- Flutter build identification
Apple applications
.NET assemblies
Firmware
HarmonyOS packages
WebAssembly
EVM contracts
Databases and recorded packets
Process capture and instrumentation
Signal recordings
Provider setup and formats
- Ghidra provider semantics
- DOS MZ and COM analysis with Ghidra
- Optional NativeAOT metadata recovery
- MIPS ELF analysis through Ghidra
- PSP static ELF analysis through Ghidra
- RISC-V ELF analysis through Ghidra
- Windows Ghidra P0
- Headerless raw-binary analysis with Ghidra
- IDA provider
- JEB instrumentation and analysis
Contracts and evidence
Development and verification
- Settings and recovery
- Flutter budget calibration
- Source-map budget calibration
- Source-location delivery qualification
- JavaScript precision calibration
- MCP tool design
- Testing REA
- Client and agent verification
- Reconstruction readiness conformance
- Releasing REA
- REA roadmap
Release migrations
Architecture and authoring
- Architecture map
- Documentation ownership and contribution model
- Feature specifications
- Architectural decision records
Machine-owned documentation
| Path | Owner and update command |
|---|---|
public/product-catalog.json |
Ignored contract projection; npm run docs:generate |
verification/managed-conformance-*.json |
Ignored managed conformance projections; npm run evidence:generate |
error-contract.schema.json |
Tracked schema from contracts; npm run docs:error-schema |
user-visible-errors.csv |
Authored error classification inventory; preserve its schema |
releases/<version>.contributions.json |
Durable release contribution record; follow the release guide |
assets/ |
Shared authored images referenced by guides |
Do not edit generated catalogs or evidence to change product facts. Change their canonical contracts or producer and regenerate. Historical release records retain the exact commit messages and references from the release they describe.
Additional guides
- Offline API contract inventory
- Bun standalone executables
- Deno compile executables
- Capability composition and ownership
- .NET single-file bundles
- ESP flash images
- U-Boot FIT images
- Measure MCP catalog costs in Codex
- Offline Playwright traces
- Testing lanes and provider verification
- UF2 and DfuSe images
- WeChat mini-program wxapkg archives
- Binary hardening
- Desktop application capture
- Desktop application export
- Desktop application state
- Desktop application tasks
- Desktop build computer
- Desktop build witness
- iNES containers
- Build RL environments with REA
- Agent environments from recorded captures
- APK signature schemes
- Apple IPS crash reports
- Static analysis in GitHub Actions
- Desktop installation directories
- Flattened devicetree inspection
- Electron fuse state
- ELF note tables
- Erlang BEAM files
- ESP images
- GameCube DOL analysis through Ghidra
- PowerPC ELF analysis through Ghidra
- Godot PCK archives
- Static CUDA and HIP code objects
- Intel HEX and S-record images
- IL2CPP metadata
- Static JavaScript route inventory
- Linux kernel modules
- Kuna provider
- Model file declarations
- Match native functions across builds
- Node.js single executable applications
- PE Authenticode certificate tables
- PE import and delay-load tables
- PE TLS callbacks and load configuration
- Python packaged applications
- CPython pyc inspection
- Reconstruction coverage
- Reverse-engineering tool integrations
- Rust binary dependency metadata
- U-Boot legacy uImage containers
- UnityFS AssetBundle archives