# Objective Guard — functional map

## Scope

This folder describes the expected behavior of Objective Guard in a verifiable way. The product is not yet implemented; therefore, except for documentary guard dogfooding, capabilities are marked as `[Inference]` derived from the product contract.

A documented decision should not be confused with evidence of implementation.

## Trust conventions

- `[Fact]`: backed by a script, execution, or existing file that was inspected.
- `[Inference]`: behavior required by canonical documentation, still without implementation.
- `[Ambiguity]`: open decision or behavior that cannot be closed with current evidence.

## Layers

| File | Question it answers |
| --- | --- |
| [Actors and surfaces](01-actors-and-surfaces.md) | Who interacts and where? |
| [Capabilities and flows](02-capabilities-and-flows.md) | What can each actor do and what does they observe? |
| [Rules, states, and validations](03-rules-states-and-validations.md) | What decisions are valid and how does state change? |
| [Functional matrix](04-functional-test-matrix.md) | What cases must be tested to accept the product? |

## Product source

Capabilities derive from:

- [Vision and thesis](../product/01-vision-and-thesis.md)
- [Product contract](../product/02-product-contract.md)
- [Signal model](../product/03-signal-and-decision-model.md)
- [Architecture](../product/04-technical-architecture.md)
- [Scientific validation](../product/05-scientific-validation.md)
- [Roadmap](../product/06-roadmap-and-criteria.md)

## Current state

- [Fact] `scripts/validate-docs.mjs` validates documentary topology, capability fields, matrix, and links.
- [Inference] The functional MVP corresponds to the universal reflection of Phase 1.
- [Ambiguity] Implementation language, final executable name, and external contract format remain deferred.

## Gaps for a future QA round

- Verify actual behavior of hooks in each supported agent.
- Measure latency on target machines, not just in CI.
- Build golden corpus before assigning false-negative rates.
- Define UX of human approval for exceptions.
- Define how an `error` fail-open is displayed without consuming excessive tokens.
