Initial commit: add .gitignore and README
This commit is contained in:
86
docs/maa_activation.md
Normal file
86
docs/maa_activation.md
Normal file
@@ -0,0 +1,86 @@
|
||||
# MAA (Manufacturing Authority Add-On) Activation
|
||||
|
||||
## Overview
|
||||
|
||||
MAA is a sovereign validation layer. No physical-world manufacturing execution is permitted without MAA approval and a valid Manufacturing Proof Certificate (MPC).
|
||||
|
||||
## Activation Flow
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph setup [Setup]
|
||||
MPC[MPCAuthority]
|
||||
Gate[MAAGate]
|
||||
G[Guardrails]
|
||||
E[ExecutorAgent]
|
||||
end
|
||||
|
||||
subgraph runtime [Runtime]
|
||||
Issue[Issue MPC]
|
||||
Verify[Gate.verify]
|
||||
Tool[Manufacturing Tool]
|
||||
end
|
||||
|
||||
MPC --> Gate
|
||||
Gate --> G
|
||||
G --> E
|
||||
Issue --> Verify
|
||||
Verify --> Tool
|
||||
```
|
||||
|
||||
**Flow:** Create MPCAuthority and MAAGate → register Gate with Guardrails → pass Guardrails to Executor. At runtime: issue MPC → Gate verifies before tool execution.
|
||||
|
||||
## Activation Steps
|
||||
|
||||
1. **MAA is built-in.** No extra install is required; use the `fusionagi.maa` package directly.
|
||||
|
||||
2. **Create MPC Authority and MAA Gate**:
|
||||
```python
|
||||
from fusionagi.maa import MAAGate
|
||||
from fusionagi.maa.layers import MPCAuthority
|
||||
|
||||
mpc_authority = MPCAuthority()
|
||||
maa_gate = MAAGate(mpc_authority=mpc_authority)
|
||||
```
|
||||
|
||||
3. **Register MAA Gate with Guardrails**:
|
||||
```python
|
||||
from fusionagi.governance import Guardrails
|
||||
|
||||
guardrails = Guardrails()
|
||||
guardrails.add_check(maa_gate.check)
|
||||
```
|
||||
|
||||
4. **Pass Guardrails to Executor**:
|
||||
```python
|
||||
from fusionagi.agents import ExecutorAgent
|
||||
from fusionagi.tools import ToolRegistry
|
||||
|
||||
registry = ToolRegistry()
|
||||
executor = ExecutorAgent(registry=registry, state_manager=state, guardrails=guardrails)
|
||||
```
|
||||
|
||||
5. **Issue an MPC** before calling manufacturing tools:
|
||||
```python
|
||||
cert = mpc_authority.issue("design-001", decision_lineage=[...])
|
||||
# Tool args must include mpc_id=cert.mpc_id.value (or mpc_id_value)
|
||||
```
|
||||
|
||||
6. **Register manufacturing tools** (e.g. from MAA):
|
||||
```python
|
||||
from fusionagi.maa.tools import cnc_emit_tool, am_slice_tool
|
||||
registry.register(cnc_emit_tool())
|
||||
registry.register(am_slice_tool())
|
||||
```
|
||||
|
||||
## MPC Lifecycle
|
||||
|
||||
- **Issue**: `MPCAuthority.issue(mpc_id_value, ...)` creates an immutable, versioned certificate.
|
||||
- **Verify**: The Gate calls `mpc_authority.verify(mpc_id)` before allowing manufacturing tools.
|
||||
- **Versioning**: Changes require re-certification; historical MPCs are read-only.
|
||||
|
||||
## Deployment
|
||||
|
||||
- MAA runs in-process; no cloud dependency.
|
||||
- All state (DLTs, MPCs, machine profiles) can be file-backed or DB-backed for on-prem/air-gapped use.
|
||||
- GPU is optional (for future simulation/geometry backends).
|
||||
Reference in New Issue
Block a user