Phase 0: Residual authority detection (baseline) #59
No reviewers
Labels
No labels
bug
cli
core
docs
event
experiment
figure
invariant
metrics
oracle
phase-0
phase-1
phase-2
phase-3
phase-4
phase-5
phase-6
provenance
revocation
tests
workload
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
erikinkinen/AES!59
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "0-residual-authority-detection-baseline"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Implements Residual Authority Detection (Baseline) v0 for issue #18.
This adds a baseline residual-authority layer that detects unexpected direct reachability (
actual - expected), introduces non-blocking runtime hook reporting, and provides forward-looking residual interfaces for later revocation phases.Closes #18.
What’s Included
1) Baseline residue concept and detector (
aes::core)Added:
core/include/aes/core/residual_authority.hppcore/src/residual_authority.cppNew public types/APIs:
ResidualBaselineSpecexpected_objects_from_subject: map<SubjectId, vector<ObjectId>>expected_subjects_to_object: map<ObjectId, vector<SubjectId>>UnexpectedFromSubjectUnexpectedToObjectUnexpectedReachabilityFinding(variant)detect_unexpected_reachability(...)Behavior:
actual_reachable - expected_reachable#17, non-empty rights only)Errc::InvalidArgumentErrc::NotFoundErrc::InvariantViolationAlso documented baseline concept and non-goals in:
docs/phase0.md(new section under Phase 0 core)2) Unexpected-reachability runtime hooks (
aes::sim)Added:
sim/include/aes/sim/residual_hooks.hppsim/src/residual_hooks.cppNew public types/APIs:
UnexpectedReachabilityReporttimeevent_idanalysis_errorfindingsUnexpectedReachabilityHookinterfaceNoopUnexpectedReachabilityHookEngineAPIs:step_with_unexpected_reachability_hook(...)run_with_unexpected_reachability_hook(...)Behavior:
timeandhistory.back().idanalysis_errorand empty findingsrun_with_unexpected_reachability_hook(same as normal run behavior)3) Later-phase residual stubs (
aes::sim)Added:
sim/include/aes/sim/residual_pipeline.hppNew stub interfaces:
ResidualExpectationProviderResidualDetectorNoopResidualExpectationProvider(returns empty baseline)NoopResidualDetector(returns empty findings)These are intentionally additive and decoupled from revocation policy semantics.
Build / Wiring Changes
core/CMakeLists.txt: addssrc/residual_authority.cppsim/CMakeLists.txt: addssrc/residual_hooks.cpptests/CMakeLists.txt: adds:aes_residual_authority_testsaes_residual_hooks_testsaes_residual_pipeline_stubs_testsTests Added
tests/residual_authority_tests.cpptests/residual_hooks_tests.cpptests/residual_pipeline_stubs_tests.cppCommit Breakdown
Phase 0: Define baseline residue concept (#18)Phase 0: Implement unexpected reachability hooks (#18)Phase 0: Stub residual interfaces for later phases (#18)Validation
Executed after each commit:
cmake --build _buildctest --test-dir _build --output-on-failureFinal result: all tests passing (
29/29).