docs: capture personal-agent runtime readiness snapshot

This commit is contained in:
Svrnty
2026-06-14 08:40:58 -04:00
parent 412f669b93
commit 8274edffeb
6 changed files with 315 additions and 1 deletions
+1
View File
@@ -18,6 +18,7 @@ Active authority:
- `docs/contracts/personal-agent-proton-rclone-package.json`
- `docs/contracts/personal-agent-secondbrain-proposal-route.json`
- `docs/contracts/personal-agent-conductor-curator-service-handoff.json`
- `docs/contracts/personal-agent-runtime-readiness-snapshot.json`
- `docs/prd/2026-06-14-personal-agent-context-runtime-prd.md`
- `docs/supersession/2026-06-14-personal-agent-context-runtime-supersession-register.md`
@@ -0,0 +1,170 @@
{
"schema_version": "personal-agent-runtime-readiness-snapshot/v1",
"status": "active-redacted-runtime-snapshot",
"snapshot_id": "personal-agent-runtime-readiness-2026-06-14",
"profile_identity": "personal-agent",
"display_name": "Steev",
"observed_date": "2026-06-14",
"aggregate_runtime_state": "degraded",
"runtime_readiness_claimed": false,
"seed_readiness_claimed": false,
"core_promotion_claimed": false,
"memory_target": "secondbrain-personal",
"forbidden_memory_targets": [
"orgbrain"
],
"surface_states": [
{
"surface": "imessage.read",
"capability_package": "bluebubbles",
"readiness_state": "ready",
"health_source": "python3 tools/validate_bluebubbles_child.py",
"redacted_health": {
"validator_ok": true,
"read_only_imessage": true,
"memory_domain": "secondbrain-personal",
"orgbrain_forbidden": true,
"package_runtime_claims": false
},
"remaining_gap": "Profile aggregate runtime readiness still false until final acceptance packet."
},
{
"surface": "mail.read",
"capability_package": "proton-rclone",
"readiness_state": "degraded",
"health_source": "MCP registration plus local service inventory",
"redacted_health": {
"mcp_server_enabled": true,
"proton_bridge_systemd_running": true,
"docker_email_gate": "exited-127",
"raw_mail_observed": false
},
"remaining_gap": "Email gate repair or replacement and package child registration remain required."
},
{
"surface": "calendar.read",
"capability_package": "proton-rclone",
"readiness_state": "degraded",
"health_source": "MCP registration plus local service inventory",
"redacted_health": {
"mcp_server_enabled": true,
"calendar_gate_running": true,
"proton_bridge_systemd_running": true,
"raw_calendar_events_observed": false
},
"remaining_gap": "Calendar read has service posture but no governed package child runtime proof."
},
{
"surface": "contacts.read",
"capability_package": "proton-rclone",
"readiness_state": "degraded",
"health_source": "MCP registration plus local service inventory",
"redacted_health": {
"mcp_server_enabled": true,
"docker_contacts_gate": "exited-127",
"raw_contacts_observed": false
},
"remaining_gap": "Contacts gate repair or replacement and package child registration remain required."
},
{
"surface": "drive.read",
"capability_package": "proton-rclone",
"readiness_state": "degraded",
"health_source": "rclone explicit-config about probe",
"redacted_health": {
"rclone_remote_present": true,
"rclone_about_probe": "ok-redacted",
"rclone_rc_unit": "disabled",
"rclone_proxy_unit": "disabled",
"drive_file_names_observed": false,
"drive_file_contents_observed": false
},
"remaining_gap": "Drive read needs governed wrapper and package child before runtime readiness."
}
],
"supervisor_posture": {
"mac_mini_bluebubbles": "package-validator-ok-redacted",
"proton_bridge_service": "active-running",
"proton_bridge_proxy_service": "active-running",
"rclone_rc_service": "disabled-inactive",
"rclone_proxy_service": "disabled-inactive"
},
"named_runtime_gaps": [
{
"id": "proton-email-gate-exited",
"severity": "must-fix",
"state": "sdo-email-gate exited-127",
"impact": "mail.read remains degraded"
},
{
"id": "proton-contacts-gate-exited",
"severity": "must-fix",
"state": "sdo-contacts-gate exited-127",
"impact": "contacts.read remains degraded"
},
{
"id": "stale-protonmail-bridge-container",
"severity": "follow-up",
"state": "stale sdo-protonmail-bridge container exists in Created state",
"impact": "duplicate service topology must be resolved before final runtime readiness"
},
{
"id": "proton-rclone-child-unregistered",
"severity": "must-fix",
"state": "package candidate exists but no registered child workspace",
"impact": "Proton/rclone package cannot claim runtime readiness"
},
{
"id": "secondbrain-apply-blocked",
"severity": "must-fix",
"state": "proposal route exists; durable apply remains blocked",
"impact": "personal memory intake is not durable yet"
},
{
"id": "desktop-adapter-exposure-blocked",
"severity": "follow-up",
"state": "adapter lane must pick up the contract before desktop display",
"impact": "desktop app cannot display final personal-agent runtime readiness yet"
}
],
"optional_reboot_power_loss_proof": {
"status": "not-run",
"required_for_final_always_on_claim": true,
"notes": "Current proof verifies supervisor posture and package validators, not reboot recovery."
},
"observed_commands": [
"python3 tools/validate_bluebubbles_child.py",
"hermes -p steev mcp list",
"systemctl --user show proton-bridge.service proton-bridge-proxy.service rclone-rc.service rclone-proxy.service -p Id -p LoadState -p ActiveState -p SubState -p UnitFileState --no-pager",
"docker ps -a --format '<name status image>' | rg -i 'bluebubbles|proton|calendar|contacts|email|mail|rclone|sdo'",
"rclone --config /home/svrnty/.config/rclone/rclone.conf about proton: --json"
],
"proof_policy": {
"mode": "redacted-only",
"forbidden_fields": [
"raw_messages",
"message_text",
"mail_bodies",
"mail_subjects",
"sender_address",
"recipient_address",
"contact_details",
"calendar_event_details",
"drive_file_names",
"drive_file_contents",
"attachment_content",
"endpoint_payloads",
"credentials",
"secret_values"
]
},
"remaining_gates": {
"proton_email_gate_repair": "blocked-follow-up",
"proton_contacts_gate_repair": "blocked-follow-up",
"proton_rclone_child_registration": "blocked-follow-up",
"secondbrain_durable_apply": "blocked-follow-up",
"desktop_adapter_exposure": "blocked-follow-up",
"reboot_power_loss_drill": "optional-follow-up",
"final_acceptance_packet": "blocked-follow-up"
}
}
@@ -40,6 +40,7 @@ desktop exposure must be treated as one of:
| Personal memory durable apply | blocked-follow-up | Owning Secondbrain/curator route must approve and apply; profile/capability packages do not write durable memory |
| Personal-agent Conductor/Curator service handoff | active-authority | `docs/contracts/personal-agent-conductor-curator-service-handoff.json` gives route and hygiene lanes a redacted service map |
| Conductor/curator adoption | blocked-follow-up | Owning lanes must explicitly pick up the handoff; this profile does not mutate them |
| Personal-agent runtime readiness snapshot | active-authority | `docs/contracts/personal-agent-runtime-readiness-snapshot.json` names per-surface states and runtime gaps without aggregate readiness claim |
| Desktop app exposure | blocked-follow-up | `PACR-008`, after adapter lane release |
| Browser/Webwright host control | blocked-follow-up | `PACR-009`, explicit approval only |
@@ -78,6 +79,7 @@ desktop exposure must be treated as one of:
- Graph context should expose the Proton/rclone package candidate as the active standardization pickup, not a runtime-ready child package.
- Graph context should expose the personal-agent Secondbrain proposal route as active while keeping durable apply blocked to Secondbrain/curator.
- Graph context should expose the personal-agent Conductor/Curator service handoff as active, while adoption remains blocked to owning lanes.
- Graph context should expose the personal-agent runtime snapshot as degraded until the named runtime gaps close.
- Graph context should not treat legacy Cortex Proton/rclone repositories as active authority.
- Graph context should not treat duplicate Proton skills as separate current product surfaces.
- Graph context should mark browser/Webwright host control as separate HITL runtime authority.