80 lines
2.4 KiB
Markdown
80 lines
2.4 KiB
Markdown
# R4.2 P2 Compact Interface Map Runtime
|
|
|
|
## Purpose
|
|
|
|
The persistent Online Agent already supports the canonical read-only `source_capture` action, but
|
|
its `SourceCaptureExecutor` always returns an `aios.engineering.source-snapshot.v2` tar.gz+base64
|
|
payload. That is correct for implementation source transfer, but too large for control-plane
|
|
consumers that only need a bounded implementation map.
|
|
|
|
P2 adds a new **adapter**, not a new execution action:
|
|
|
|
```text
|
|
action=source_capture
|
|
adapter=compact_interface_map
|
|
```
|
|
|
|
This preserves the existing execution-v2 schema and Bridge policy:
|
|
|
|
- read-only repository;
|
|
- no change set;
|
|
- no verification commands;
|
|
- `writer_lease=false`;
|
|
- no branch or commit;
|
|
- existing capability and execution-digest validation.
|
|
|
|
## Compact map contract
|
|
|
|
`aios_online_agent_compact_map.py` scans only approved repository roots and source suffixes. It
|
|
returns:
|
|
|
|
- at most 40 relevant modules;
|
|
- at most 80 selected Python symbols in total;
|
|
- at most 40 test symbols;
|
|
- at most 25 excerpts;
|
|
- at most 1200 characters per excerpt;
|
|
- SQL table names;
|
|
- systemd unit names;
|
|
- current invariants, failure windows and reuse points;
|
|
- P2 fleet contract-to-surface mappings.
|
|
|
|
The result is hard-bounded to 120 KiB and contains no source archive or `payload_b64`.
|
|
|
|
Source excerpts apply a conservative sensitive-pattern redaction before result construction.
|
|
|
|
## P2 contracts
|
|
|
|
The map supplies evidence surfaces for:
|
|
|
|
- `FLEET_AGENT_REGISTRATION`
|
|
- `FLEET_CAPACITY_SCHEDULING`
|
|
- `FLEET_FAIRNESS`
|
|
- `FLEET_FAULT_ISOLATION`
|
|
- `FLEET_WORKER_REASSIGNMENT`
|
|
- `FLEET_SCOPE_ISOLATION`
|
|
- `FLEET_IDEMPOTENT_DISPATCH`
|
|
- `FLEET_FAILURE_RECOVERY`
|
|
|
|
Missing first-class scheduling/fleet primitives are reported as gaps rather than invented.
|
|
|
|
## Result
|
|
|
|
When the adapter is selected, the worker returns:
|
|
|
|
```text
|
|
status=SUCCEEDED
|
|
classification=P2_INTERFACE_MAP_CAPTURED
|
|
execution_mode=compact_interface_map
|
|
writer_lease=NONE
|
|
```
|
|
|
|
The existing `source_capture_done` / P1 checkpoint/retry path is reused, so the compact analysis
|
|
inherits attempt-aware result idempotency and restart-safe result submission.
|
|
|
|
## Governance
|
|
|
|
This capability is runtime infrastructure only. The implementation candidate may use a governed
|
|
branch/WriterLease for its own code change, but any task executed through `compact_interface_map`
|
|
is read-only and must not create a WriterLease, branch, commit, protected-ref write, or Production
|
|
side effect.
|