Intake exam — Ghostshell
Intake exam (MEASURED — every finding carries its evidence)
0 critical 36 warning 13 info
exam at 2026-09-07 00:00:06 UTC ·
target(s): ghostshell_v3, (agent host env)
Findings
| Severity | Scanner | Finding | Advice | Evidence |
|---|---|---|---|---|
| warning | exposure | SSL off while listening on '*' | Enable SSL or bind to localhost / a private interface only. | {
"listen_addresses": "*",
"port": "5432",
"ssl": "off",
"target_db": "ghostshell_v3"
} |
| warning | privilege | active connection as superuser 'ghostshell' | Point the application at a least-privilege role instead. | {
"is_scanner_role": false,
"target_db": "ghostshell_v3",
"usename": "ghostshell"
} |
| warning | workflow | v3_heal_audit: 'docker:no_restart_policy' heal success 0% over 7d (25 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 25,
"failure": 25,
"feature": "docker:no_restart_policy",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'docker:zombie_containers' → 'healed' 184× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 184,
"result": "healed",
"table": "v3_heal_audit",
"target": "docker:zombie_containers",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' heal success 20% over 7d (624 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 624,
"failure": 498,
"feature": "ghostshell-alertmanager",
"slo": 0.9,
"success": 126,
"success_rate": 0.202,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' → 'escalated' 498× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 498,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-alertmanager",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' → 'healed' 126× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 126,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-alertmanager",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' heal success 20% over 7d (673 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 673,
"failure": 539,
"feature": "ghostshell-cadvisor",
"slo": 0.9,
"success": 134,
"success_rate": 0.199,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' → 'escalated' 539× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 539,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-cadvisor",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' → 'healed' 134× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 134,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-cadvisor",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-chromadb' heal success 12% over 7d (316 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 316,
"failure": 279,
"feature": "ghostshell-chromadb",
"slo": 0.9,
"success": 37,
"success_rate": 0.117,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-chromadb' → 'escalated' 279× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 279,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-chromadb",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-dashboard' heal success 15% over 7d (227 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 227,
"failure": 193,
"feature": "ghostshell-dashboard",
"slo": 0.9,
"success": 34,
"success_rate": 0.15,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-dashboard' → 'escalated' 193× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 193,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-dashboard",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' heal success 20% over 7d (749 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 749,
"failure": 601,
"feature": "ghostshell-luks-exporter",
"slo": 0.9,
"success": 148,
"success_rate": 0.198,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' → 'escalated' 601× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 601,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-luks-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' → 'healed' 148× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 148,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-luks-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' heal success 20% over 7d (660 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 660,
"failure": 527,
"feature": "ghostshell-node-exporter",
"slo": 0.9,
"success": 133,
"success_rate": 0.202,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' → 'escalated' 527× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 527,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-node-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' → 'healed' 133× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 133,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-node-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' heal success 21% over 7d (613 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 613,
"failure": 484,
"feature": "ghostshell-postgres-exporter",
"slo": 0.9,
"success": 129,
"success_rate": 0.21,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' → 'escalated' 484× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 484,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-postgres-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' → 'healed' 129× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 129,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-postgres-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' heal success 21% over 7d (692 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 692,
"failure": 545,
"feature": "ghostshell-prometheus",
"slo": 0.9,
"success": 147,
"success_rate": 0.212,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' → 'escalated' 545× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 545,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-prometheus",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' → 'healed' 147× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 147,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-prometheus",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' heal success 19% over 7d (682 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 682,
"failure": 550,
"feature": "ghostshell-redis-exporter",
"slo": 0.9,
"success": 132,
"success_rate": 0.194,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' → 'escalated' 550× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 550,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-redis-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' → 'healed' 132× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 132,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-redis-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' heal success 16% over 7d (822 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 822,
"failure": 694,
"feature": "ghostshell-searxng",
"slo": 0.9,
"success": 128,
"success_rate": 0.156,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' → 'escalated' 694× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 694,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-searxng",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' → 'healed' 128× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 128,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-searxng",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'service:postgres' heal success 0% over 7d (32 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 32,
"failure": 32,
"feature": "service:postgres",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'service:redis' heal success 0% over 7d (71 events) | The feature's self-healing is not sticking — investigate the root cause, not the healer (the flap IS the signal). | {
"events": 71,
"failure": 71,
"feature": "service:redis",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'service:redis' → 'escalated' 71× in 7d | A retry storm — the underlying fault is not being fixed. | {
"count_7d": 71,
"result": "escalated",
"table": "v3_heal_audit",
"target": "service:redis",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 40444 non-terminal row(s) older than 3d | Investigate the stuck work — it will not finish by itself. | {
"non_terminal": [
"monitored",
"pending",
"running",
"queued",
"stuck"
],
"older_than_days": 3,
"stuck_rows": 40444,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.idx_routine_executions_routine_id: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.idx_routine_executions_routine_id",
"index_bytes": 1138688,
"table": "public.routine_executions",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.idx_routine_executions_status: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.idx_routine_executions_status",
"index_bytes": 1130496,
"table": "public.routine_executions",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.idx_routine_executions_task_id: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.idx_routine_executions_task_id",
"index_bytes": 6234112,
"table": "public.routine_executions",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_llm_billing_agent_created: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_llm_billing_agent_created",
"index_bytes": 1196032,
"table": "public.llm_billing",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_llm_billing_model_created: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_llm_billing_model_created",
"index_bytes": 1875968,
"table": "public.llm_billing",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_llm_billing_prompt_hash: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_llm_billing_prompt_hash",
"index_bytes": 1155072,
"table": "public.llm_billing",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_llm_billing_user_model: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_llm_billing_user_model",
"index_bytes": 2179072,
"table": "public.llm_billing",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_patrol_log_type_created: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_patrol_log_type_created",
"index_bytes": 27328512,
"table": "public.patrol_log",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_task_events_actor: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_task_events_actor",
"index_bytes": 1032192,
"table": "public.task_events",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_task_events_failure_category: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_task_events_failure_category",
"index_bytes": 1015808,
"table": "public.task_events",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_tasks_status_priority: 0 scans (unused index) | Drop candidate — verify no reporting workload needs it first. | {
"idx_scan": 0,
"index": "public.ix_tasks_status_priority",
"index_bytes": 1204224,
"table": "public.tasks",
"target_db": "ghostshell_v3"
} |
| info | config_drift | connections 22/200 in use (11%) | Connection headroom measured as adequate. | {
"current_connections": 22,
"max_connections": 200,
"target_db": "ghostshell_v3",
"used_pct": 11.0
} |
| info | privilege | 1 superuser role(s) | Each one is an unrestricted account — keep the count minimal. | {
"superusers": [
"ghostshell"
],
"target_db": "ghostshell_v3"
} |
Feature health (per-feature SLOs — heal-success rate, bar 90% over 7d)
| Feature | Source table | Heal success | Measured events | Window |
|---|---|---|---|---|
| ghostshell-searxng | v3_heal_audit | 16% | 128 ok / 694 failed (822 events) | 7d |
| ghostshell-luks-exporter | v3_heal_audit | 20% | 148 ok / 601 failed (749 events) | 7d |
| ghostshell-redis-exporter | v3_heal_audit | 19% | 132 ok / 550 failed (682 events) | 7d |
| ghostshell-prometheus | v3_heal_audit | 21% | 147 ok / 545 failed (692 events) | 7d |
| ghostshell-cadvisor | v3_heal_audit | 20% | 134 ok / 539 failed (673 events) | 7d |
| ghostshell-node-exporter | v3_heal_audit | 20% | 133 ok / 527 failed (660 events) | 7d |
| ghostshell-alertmanager | v3_heal_audit | 20% | 126 ok / 498 failed (624 events) | 7d |
| ghostshell-postgres-exporter | v3_heal_audit | 21% | 129 ok / 484 failed (613 events) | 7d |
| ghostshell-chromadb | v3_heal_audit | 12% | 37 ok / 279 failed (316 events) | 7d |
| ghostshell-dashboard | v3_heal_audit | 15% | 34 ok / 193 failed (227 events) | 7d |
| service:redis | v3_heal_audit | 0% | 0 ok / 71 failed (71 events) | 7d |
| service:postgres | v3_heal_audit | 0% | 0 ok / 32 failed (32 events) | 7d |
| docker:no_restart_policy | v3_heal_audit | 0% | 0 ok / 25 failed (25 events) | 7d |
| service:chromadb | v3_heal_audit | 0% | 0 ok / 8 failed (8 events) | 7d |
| probe:nats_stream | v3_heal_audit | 0% | 0 ok / 2 failed (2 events) | 7d |
| probe:postgres_pool | v3_heal_audit | 0% | 0 ok / 1 failed (1 events) | 7d |
| docker:zombie_containers | v3_heal_audit | 100% | 184 ok / 1 failed (185 events) | 7d |
| probe:consumer_bindings | v3_heal_audit | 0% | 0 ok / 1 failed (1 events) | 7d |
| docker:stale_containers | v3_heal_audit | n/a | 0 ok / 0 failed (0 events) | 7d |
Changes since last exam
| Severity | Scanner | New finding | Evidence |
|---|---|---|---|
| warning | workflow | v3_heal_audit: 'docker:no_restart_policy' heal success 0% over 7d (25 events) | {
"events": 25,
"failure": 25,
"feature": "docker:no_restart_policy",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' heal success 20% over 7d (624 events) | {
"events": 624,
"failure": 498,
"feature": "ghostshell-alertmanager",
"slo": 0.9,
"success": 126,
"success_rate": 0.202,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' → 'escalated' 498× in 7d | {
"count_7d": 498,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-alertmanager",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-alertmanager' → 'healed' 126× in 7d | {
"count_7d": 126,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-alertmanager",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' heal success 20% over 7d (673 events) | {
"events": 673,
"failure": 539,
"feature": "ghostshell-cadvisor",
"slo": 0.9,
"success": 134,
"success_rate": 0.199,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' → 'escalated' 539× in 7d | {
"count_7d": 539,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-cadvisor",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-cadvisor' → 'healed' 134× in 7d | {
"count_7d": 134,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-cadvisor",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-chromadb' heal success 12% over 7d (316 events) | {
"events": 316,
"failure": 279,
"feature": "ghostshell-chromadb",
"slo": 0.9,
"success": 37,
"success_rate": 0.117,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-chromadb' → 'escalated' 279× in 7d | {
"count_7d": 279,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-chromadb",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-dashboard' heal success 15% over 7d (227 events) | {
"events": 227,
"failure": 193,
"feature": "ghostshell-dashboard",
"slo": 0.9,
"success": 34,
"success_rate": 0.15,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-dashboard' → 'escalated' 193× in 7d | {
"count_7d": 193,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-dashboard",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' heal success 20% over 7d (749 events) | {
"events": 749,
"failure": 601,
"feature": "ghostshell-luks-exporter",
"slo": 0.9,
"success": 148,
"success_rate": 0.198,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' → 'escalated' 601× in 7d | {
"count_7d": 601,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-luks-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-luks-exporter' → 'healed' 148× in 7d | {
"count_7d": 148,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-luks-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' heal success 20% over 7d (660 events) | {
"events": 660,
"failure": 527,
"feature": "ghostshell-node-exporter",
"slo": 0.9,
"success": 133,
"success_rate": 0.202,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' → 'escalated' 527× in 7d | {
"count_7d": 527,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-node-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-node-exporter' → 'healed' 133× in 7d | {
"count_7d": 133,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-node-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' heal success 21% over 7d (613 events) | {
"events": 613,
"failure": 484,
"feature": "ghostshell-postgres-exporter",
"slo": 0.9,
"success": 129,
"success_rate": 0.21,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' → 'escalated' 484× in 7d | {
"count_7d": 484,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-postgres-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-postgres-exporter' → 'healed' 129× in 7d | {
"count_7d": 129,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-postgres-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' heal success 21% over 7d (692 events) | {
"events": 692,
"failure": 545,
"feature": "ghostshell-prometheus",
"slo": 0.9,
"success": 147,
"success_rate": 0.212,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' → 'escalated' 545× in 7d | {
"count_7d": 545,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-prometheus",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-prometheus' → 'healed' 147× in 7d | {
"count_7d": 147,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-prometheus",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' heal success 19% over 7d (682 events) | {
"events": 682,
"failure": 550,
"feature": "ghostshell-redis-exporter",
"slo": 0.9,
"success": 132,
"success_rate": 0.194,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' → 'escalated' 550× in 7d | {
"count_7d": 550,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-redis-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-redis-exporter' → 'healed' 132× in 7d | {
"count_7d": 132,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-redis-exporter",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' heal success 16% over 7d (822 events) | {
"events": 822,
"failure": 694,
"feature": "ghostshell-searxng",
"slo": 0.9,
"success": 128,
"success_rate": 0.156,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' → 'escalated' 694× in 7d | {
"count_7d": 694,
"result": "escalated",
"table": "v3_heal_audit",
"target": "ghostshell-searxng",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'ghostshell-searxng' → 'healed' 128× in 7d | {
"count_7d": 128,
"result": "healed",
"table": "v3_heal_audit",
"target": "ghostshell-searxng",
"target_db": "ghostshell_v3"
} |
| warning | workflow | v3_heal_audit: 'service:postgres' heal success 0% over 7d (32 events) | {
"events": 32,
"failure": 32,
"feature": "service:postgres",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'service:redis' heal success 0% over 7d (71 events) | {
"events": 71,
"failure": 71,
"feature": "service:redis",
"slo": 0.9,
"success": 0,
"success_rate": 0.0,
"table": "v3_heal_audit",
"target_db": "ghostshell_v3",
"window_days": 7
} |
| warning | workflow | v3_heal_audit: 'service:redis' → 'escalated' 71× in 7d | {
"count_7d": 71,
"result": "escalated",
"table": "v3_heal_audit",
"target": "service:redis",
"target_db": "ghostshell_v3"
} |
| info | anatomy | public.ix_task_events_failure_category: 0 scans (unused index) | {
"idx_scan": 0,
"index": "public.ix_task_events_failure_category",
"index_bytes": 1015808,
"table": "public.task_events",
"target_db": "ghostshell_v3"
} |
Measured trends
- anatomy|public.ix_patrol_log_type_created: # scans (unused index) — index_bytes: 24428544.0 → 27328512.0 (up 2899968.0)
- workflow|v#_heal_audit: # non-terminal row(s) older than #d — stuck_rows: 46576.0 → 40444.0 (down 6132.0)
- config_drift|connections #/# in use (#%) — current_connections: 24.0 → 22.0 (down 2.0)
- config_drift|connections #/# in use (#%) — used_pct: 12.0 → 11.0 (down 1.0)
- anatomy|public.ix_task_events_actor: # scans (unused index) — index_bytes: 1015808.0 → 1032192.0 (up 16384.0)
- workflow|v#_heal_audit: 'docker:zombie_containers' → 'healed' #× in #d — count_7d: 51.0 → 184.0 (up 133.0)
Skipped (data source absent — never fabricated)
- query (ghostshell_v3): pg_stat_statements not installed on the target
- exposure (ghostshell_v3): pg_hba_file_rules unreadable with this role