{"ok":true,"nexus_version":"0.1.0","deploy":{"sha":"182d554a14b1fb7121c9a4211ada3a6b9755fad5","ref":"develop","deployed_at":"2026-09-02T03:05:48Z"},"instance":{"name":"aquastar-dev","tenancy":"single","configured_version":"release/v1.0"},"modules":[{"name":"schema_introspection","version":"0.1.0","description":"Read-only DB schema endpoints for dev / agent tooling"},{"name":"vault_capture","version":"0.1.0","description":"Plaid integration for Vault — Link tokens, item lifecycle, transactionsSync, accounts, and webhook receiver."},{"name":"collab","version":"0.1.0","description":"Persistent chat, Jitsi video/screen-share sessions, and recording upload"}],"db":{"ok":true,"label":"postgres @ 100.127.152.52:5432/nexus_aquastar_dev","host":"100.127.152.52","port":5432,"database":"nexus_aquastar_dev","server_version":"PostgreSQL 17.2 on x86_64-windows, compiled by msvc-19.41.34123, 64-bit","uptime_seconds":767141,"connections":{"active":1,"idle":1,"total":2,"max_connections":100},"pool":{"size":10,"idle":2,"busy":0,"waiting":0}},"jobs":[{"moduleName":"core/audit_log","id":"audit_log.prune","intervalSeconds":86400,"lastStartedAt":"2026-09-05T03:08:39.428Z","lastFinishedAt":"2026-09-05T03:08:39.445Z","lastOutcome":"ok"},{"moduleName":"core/issue_tracker","id":"issue_tracker.outbox_dispatch","intervalSeconds":30,"lastStartedAt":"2026-09-06T01:43:45.651Z","lastFinishedAt":"2026-09-06T01:43:45.654Z","lastOutcome":"ok"},{"moduleName":"core/issue_tracker","id":"issue_tracker.sla_sweep","intervalSeconds":300,"lastStartedAt":"2026-09-06T01:43:40.005Z","lastFinishedAt":"2026-09-06T01:43:40.013Z","lastOutcome":"ok"},{"moduleName":"core/notifications","id":"apns_drain","intervalSeconds":5,"lastStartedAt":"2026-09-06T01:43:54.045Z","lastFinishedAt":"2026-09-06T01:43:54.046Z","lastOutcome":"ok"},{"moduleName":"core/notifications","id":"email_drain","intervalSeconds":10,"lastStartedAt":"2026-09-06T01:43:48.828Z","lastFinishedAt":"2026-09-06T01:43:48.829Z","lastOutcome":"ok"},{"moduleName":"core/notifications","id":"fcm_drain","intervalSeconds":5,"lastStartedAt":"2026-09-06T01:43:54.045Z","lastFinishedAt":"2026-09-06T01:43:54.046Z","lastOutcome":"ok"},{"moduleName":"core/notifications","id":"notifications_retry","intervalSeconds":3600,"lastStartedAt":"2026-09-06T01:08:39.473Z","lastFinishedAt":"2026-09-06T01:08:39.476Z","lastOutcome":"ok"},{"moduleName":"core/notifications","id":"notifications_prune","intervalSeconds":86400,"lastStartedAt":"2026-09-05T03:08:39.428Z","lastFinishedAt":"2026-09-05T03:08:39.434Z","lastOutcome":"ok"},{"moduleName":"core/app_jobs","id":"app_jobs_tick","intervalSeconds":1,"lastStartedAt":"2026-09-06T01:43:56.164Z","lastFinishedAt":"2026-09-06T01:43:56.164Z","lastOutcome":"ok"},{"moduleName":"core/db_health","id":"db_health.snapshot_tick","intervalSeconds":3600,"lastStartedAt":"2026-09-06T01:08:39.474Z","lastFinishedAt":"2026-09-06T01:08:39.650Z","lastOutcome":"ok"},{"moduleName":"core/db_health","id":"db_health.prune","intervalSeconds":86400,"lastStartedAt":"2026-09-05T03:08:39.429Z","lastFinishedAt":"2026-09-05T03:08:39.470Z","lastOutcome":"ok"},{"moduleName":"schema_introspection","id":"heartbeat","intervalSeconds":60,"lastStartedAt":"2026-09-06T01:43:42.390Z","lastFinishedAt":"2026-09-06T01:43:42.390Z","lastOutcome":"ok"}],"streams":[],"auth":{"jwt_key_present":true,"migrations_applied":["001_auth.sql","002_metering.sql","003_apps.sql","004_app_db_health_snapshots.sql","005_notifications.sql","006_app_jobs.sql","007_iot_provisioning.sql","008_oauth.sql","009_iot_device_certs.sql","010_audit_log.sql","011_app_db_health_schema_migrations.sql","012_drop_vestigial_iot_device_columns.sql","013_app_db_health_top_tables.sql","014_backup_status.sql","015_scheduled_tasks.sql","016_device_service_events.sql","017_ai_hosts.sql","018_nexus_credentials.sql","019_ai_hosts_metadata.sql","020_ai_chat_app_allowed_models.sql","021_email_sends.sql","022_email_sends_from_address.sql","023_user_app_associations.sql","024_users_status_invited.sql","025_user_invitations.sql","026_user_app_associations_invite_role.sql","027_user_app_associations_role_status.sql","028_platform_admin_purge_user.sql","029_issue_tracker_config.sql","030_issue_tracker_core.sql","031_issue_tracker_progress.sql","032_file_service.sql","033_users_image.sql","034_users_profile_fields.sql","035_oauth_as.sql","036_ai_chat_agent_control_kind.sql","037_user_app_associations_tech_role.sql","038_oauth_grants.sql","039_ai_app_access.sql","040_app_capability_access.sql","041_user_capability_access.sql","042_retire_agent_control_capability.sql","043_places_search_quota.sql","044_app_capability_metadata.sql","044_scraping.sql","045_research_jobs.sql","046_user_app_associations_vendor_role.sql"],"mailer":"smtp(smtp.gmail.com:587)","bootstrap_admin_seeded":false},"metering":{"enabled":true,"total_recorded":249333,"total_persisted":249332,"total_dropped":0,"inflight":1},"apps":{"apps":1,"active_apps":1,"active_keys":2,"active_functions":57,"compile_failures":{"total":0,"last_hour":0,"last_at":null,"last_app_id":null}},"app_dbs":[{"appId":"aquastar","lastCapturedAt":"2026-09-06T01:08:39.642Z","reachable":true,"sizeMb":12.760882377624512,"warnings":[],"schemaMigrations":{"latestAppliedAt":"2026-09-02T03:05:44.772Z","appliedCount":25,"appliedFiles":["001_device_state.sql","002_speed_settings.sql","003_schedules.sql","004_device_models.sql","005_aquastar_users.sql","006_aquastar_staff.sql","007_aquastar_invites.sql","008_device_telemetry_history.sql","009_device_telemetry_samples.sql","010_fn_insert_telemetry_event.sql","011_fn_insert_telemetry_sample.sql","012_schedules_unique_slot.sql","013_device_state_fast_poll.sql","014_polling_config.sql","015_device_state_watching.sql","016_polling_default_auto.sql","017_device_state_broker_connectivity.sql","018_device_state_command_confirm.sql","019_retire_redundant_pump_projections.sql","020_poll_log.sql","021_command_log.sql","022_device_models_restore_plp.sql","023_device_state_command_retry.sql","024_device_state_polled_stale_at.sql","025_firmware_release.sql"]},"topTables":[{"schema":"public","tableName":"poll_log","totalBytes":3244032,"heapBytes":1318912,"rowEstimate":16305},{"schema":"public","tableName":"device_telemetry_history","totalBytes":393216,"heapBytes":106496,"rowEstimate":774},{"schema":"public","tableName":"command_log","totalBytes":352256,"heapBytes":180224,"rowEstimate":880},{"schema":"public","tableName":"device_state","totalBytes":155648,"heapBytes":16384,"rowEstimate":3},{"schema":"public","tableName":"schedules","totalBytes":90112,"heapBytes":8192,"rowEstimate":9},{"schema":"public","tableName":"firmware_release","totalBytes":65536,"heapBytes":8192,"rowEstimate":1},{"schema":"public","tableName":"polling_config","totalBytes":40960,"heapBytes":8192,"rowEstimate":0},{"schema":"public","tableName":"schema_migrations","totalBytes":32768,"heapBytes":8192,"rowEstimate":0},{"schema":"public","tableName":"ota_device_event","totalBytes":32768,"heapBytes":0,"rowEstimate":0},{"schema":"public","tableName":"_schema_applied","totalBytes":32768,"heapBytes":8192,"rowEstimate":3}]}],"notifications":{"pending":0,"sent_1h":0,"failed_1h":0,"skipped_1h":0,"by_channel":{"apns":{"sent_1h":0,"failed_1h":0},"fcm":{"sent_1h":0,"failed_1h":0},"email":{"sent_1h":0,"failed_1h":0}},"total":0},"app_jobs":{"enabled":3,"disabled":0,"recently_failed":0,"running":0,"stuck":0},"iot":{"devices":3,"online":1,"offline":2,"active_followers":0,"pending_invitations":0,"telemetry_1h":2,"cert_auth":"ok"},"translator":{"ready":true,"publishers":[{"appId":"aquastar","state":"connected","lastConnectedAt":"2026-09-02T03:08:39.572Z","publishCount":41253,"inboundCount":406,"queuedCount":0,"lastError":null}],"profiles":[{"deviceType":"aquastar_pump_v013","description":"AquaStar pump (firmware V0.13) — Modbus-RTU over MQTT (AWS IoT)"}]},"audit_log":{"retentionDays":90,"lastPrunedAt":"2026-09-05T03:08:39.445Z","lastPrunedCount":1,"nextRunAt":"2026-09-06T03:08:39.445Z"},"backup":{"enabled":true,"warningThresholdHours":36,"targets":[{"target":"app_aquastar_dev","targetKind":"app_db","state":"stale","startedAt":"2026-09-02T07:00:01.774Z","finishedAt":"2026-09-02T07:00:02.336Z","ok":true,"ageSeconds":326634,"sizeBytes":138216,"destinationPath":"/var/backups/nexus/aquastar-dev/app_aquastar_dev-20260902T070001Z.dump","errorMessage":null},{"target":"nexus_aquastar_dev","targetKind":"platform_db","state":"stale","startedAt":"2026-08-28T07:00:01.320Z","finishedAt":"2026-08-28T07:00:32.853Z","ok":true,"ageSeconds":758604,"sizeBytes":239729632,"destinationPath":"/var/backups/nexus/aquastar-dev/nexus_aquastar_dev-20260828T070001Z.dump","errorMessage":null},{"target":"nexus_aquastar_dev_app_aquastar","targetKind":"app_db","state":"failed","startedAt":"2026-08-06T07:00:02.029Z","finishedAt":"2026-08-06T07:00:02.226Z","ok":false,"ageSeconds":2659434,"sizeBytes":null,"destinationPath":null,"errorMessage":"pg_dump: error: connection to server at \"100.127.152.52\", port 5432 failed: FATAL:  database \"nexus_aquastar_dev_app_aquastar\" does not exist"}],"disk":{"warnPercent":85,"root":{"path":"/","freeBytes":347418337280,"totalBytes":401222561792,"usedPercent":13,"warn":false},"destination":{"path":"/var/backups/nexus/aquastar-dev","freeBytes":347418337280,"totalBytes":401222561792,"usedPercent":13,"warn":false}}},"ai_hosts":{"ok":true,"hosts":{"active":2,"draining":0,"archived":0},"workspace_roots":2,"app_workspaces":{"provisioned":1,"pending":0},"providers":{"enabled":2,"disabled":1,"default":"claude-code-mac"},"allowed_models":{"total":0,"enabled":0}},"ai_chat":{"ok":true,"providers":{"enabled":2,"disabled":1,"default":"claude-code-mac"}},"uptime_seconds":340519}