=== ENVIRONMENT === Hostname: Work User: ray UTC time: 2026-07-30T02:20:24+00:00 Branch: main HEAD: ad99844402cf3d27c85cee5223c03cabc79aebca Local URL: http://127.0.0.1:8781 Tailnet URL: http://100.116.93.90:8781 Database: /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3 Backup: /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z === BACK UP CURRENT TRENDSCOUT === === BUILD NATIVE READ-ONLY API === === VALIDATE STAGED FILES === PASS JSON: /tmp/trendscout-native-0004b.wjHBqB/agent.manifest.json PASS JSON: /tmp/trendscout-native-0004b.wjHBqB/registry.json PASS JSON: /tmp/trendscout-native-0004b.wjHBqB/state.json PASS: Staged API and systemd units are present. === INSTALL READ-ONLY API === === OFFLINE API CHECK === { "ok": true, "service": "shire-trendscout", "version": "0.3.0-native-readonly-api", "database": { "ok": true, "integrity": "ok", "tableCount": 14, "database": "/home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3", "readOnly": true }, "liveResearchEnabled": false, "weeklyEmailEnabled": false, "schedulerEnabled": false, "credentialsConfigured": false, "writeActionsEnabled": false } { "ok": true, "agentId": "trendscout", "version": "0.3.0-native-readonly-api", "status": "STAGED_NATIVE_READ_ONLY_API_ONLINE_NO_LIVE_SOURCES_OR_EMAIL", "enabled": false, "liveResearchEnabled": false, "schedulerEnabled": false, "weeklyEmailEnabled": false, "credentialsConfigured": false, "dedicatedPortEnabled": true, "registryEntryCount": 1, "contractPresent": true, "dataDirectories": [ "/home/shire3d/ARMOR/data/agents/trendscout/working", "/home/shire3d/ARMOR/data/agents/trendscout/memory", "/home/shire3d/ARMOR/data/agents/trendscout/tasks", "/home/shire3d/ARMOR/data/agents/trendscout/evidence" ] } { "ok": true, "agents": 7, "registry": "/home/shire3d/ARMOR/config/agents/registry.json" } === START PRIVATE WORKSPACE === Created symlink /etc/systemd/system/multi-user.target.wants/shire-trendscout.service → /etc/systemd/system/shire-trendscout.service. Created symlink /etc/systemd/system/sockets.target.wants/shire-trendscout-tailnet.socket → /etc/systemd/system/shire-trendscout-tailnet.socket. === LOCAL SERVICE TESTS === { "ok": true, "service": "shire-trendscout", "version": "0.3.0-native-readonly-api", "boundTo": "127.0.0.1:8781", "readOnly": true, "database": { "ok": true, "integrity": "ok", "tableCount": 14, "database": "/home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3", "readOnly": true }, "time": "2026-07-30T02:20:33.621827+00:00" }{ "agent": { "id": "trendscout", "name": "TrendScout", "displayStatus": "SETUP REQUIRED", "declaredStatus": "STAGED_NATIVE_READ_ONLY_API_ONLINE_NO_LIVE_SOURCES_OR_EMAIL", "version": "0.3.0-native-readonly-api", "liveResearchEnabled": false, "schedulerEnabled": false, "weeklyEmailEnabled": false, "credentialsConfigured": false }, "counts": { "production_opportunities": 0, "demo_opportunities": 0, "recommended": 0, "rejected": 0, "production_evidence": 0, "demo_evidence": 0, "research_leads": 0, "weekly_reports": 0 }, "topOpportunities": [], "recentActivity": [], "nextWeeklyEmail": null, "weeklyEmailMessage": "Weekly email adapter is not installed yet.", "timezone": "Australia/Perth" }{ "overall": "SETUP_REQUIRED", "checks": { "nativeRepository": true, "databaseReadOnly": true, "productionDatabasePresent": true, "liveResearch": false, "researchScheduler": false, "weeklyEmail": false, "credentials": false }, "database": { "ok": true, "integrity": "ok", "tableCount": 14, "database": "/home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3", "readOnly": true }, "safeToDisplay": true, "writeActionsEnabled": false }PASS: Write request rejected with HTTP 405. === PRIVATE TAILNET TEST === PASS: Tailnet workspace returned HTTP 200. Workspace: http://100.116.93.90:8781 === DATABASE READ-ONLY ASSERTION === PASS: Read-only API did not modify the production database. === NETWORK SAFETY ASSERTION === LISTEN 0 5 127.0.0.1:8781 0.0.0.0:* users:(("python3",pid=3644767,fd=6)) LISTEN 0 4096 100.116.93.90:8781 0.0.0.0:* PASS: TrendScout has no public listener. === AGENT HUB READ-BACK === { "id": "trendscout", "name": "TrendScout", "declaredStatus": "STAGED_NATIVE_READ_ONLY_API_ONLINE_NO_LIVE_SOURCES_OR_EMAIL", "enabled": false, "route": "/agents/trendscout", "localUrl": "http://100.116.93.90:8781", "brain": { "fastModel": "qwen3:1.7b", "fastAvailable": true, "deepModel": "qwen3:8b", "deepAvailable": true }, "memory": { "root": "/home/shire3d/ARMOR/data/agents/trendscout", "isolated": true }, "checkedAt": "2026-07-30T02:20:34.284250+00:00" } === FINAL SAFETY CHECK === PASS: Native read-only workspace is online. PASS: TrendScout remains staged. PASS: Live research remains disabled. PASS: Research scheduling remains disabled. PASS: Weekly email remains disabled. PASS: No credentials are configured. === INSTALL EVIDENCE === LoadState=loaded ActiveState=active SubState=running UnitFileState=enabled LoadState=loaded ActiveState=active SubState=running UnitFileState=enabled /home/shire3d/ARMOR/agents/apps/trendscout/contracts/demand-evidence.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/email-delivery.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/forge-brief.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/opportunity.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/research-lead.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/source-record.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/contracts/weekly-report.schema.json /home/shire3d/ARMOR/agents/apps/trendscout/__pycache__/trendscout_repository.cpython-312.pyc /home/shire3d/ARMOR/agents/apps/trendscout/README.md /home/shire3d/ARMOR/agents/apps/trendscout/schema.sql /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_api.py /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_core.py /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_repository.py /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_repository_selftest.py /home/shire3d/ARMOR/agents/definitions/trendscout/agent.manifest.json /home/shire3d/ARMOR/agents/definitions/trendscout/SYSTEM_CONTRACT.md /home/shire3d/ARMOR/data/agents/trendscout/evidence/README.txt /home/shire3d/ARMOR/data/agents/trendscout/memory/README.txt /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3 /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3-shm /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3-wal /home/shire3d/ARMOR/data/agents/trendscout/state.json /home/shire3d/ARMOR/data/agents/trendscout/tasks/README.txt /home/shire3d/ARMOR/data/agents/trendscout/working/README.txt 86e66520e150d891a806f192ab053c3234dcc9ce16aad870a3b07b6a5ded7875 /etc/systemd/system/shire-trendscout.service 08d01d49d5bde16ee321af098a59baa581a152fdac79018771e405b1352f0d3b /etc/systemd/system/shire-trendscout-tailnet.service 4447e9e7dda9ca88d2b444fe92c30d69a004518a0c3100615ded19628f31a125 /etc/systemd/system/shire-trendscout-tailnet.socket 3ce564954b26aa51bd7b1698bf2e3e14978b9cc697620245c888af2d9df47fd0 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/demand-evidence.schema.json 833fa9be14c934fd0da8ab91a627495ff8e9e7000d5041354c572f79e0894cc4 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/email-delivery.schema.json f2f6be18e6957a5bf52195c54a97cb10d094c0fa9acf85fa6dfe928bc756fdb5 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/forge-brief.schema.json 260fe14b763c199ce55dc99d5b5f4e894d7dd613316c71e7e1912556f13362e7 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/opportunity.schema.json bb374874f18fc47cad0c670399e31f1a44e74054429610c468c154c5c4feb7b0 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/research-lead.schema.json a8a8e73a4b48527dd26d7bbc0ba5253da6541a27a6b46213c2c2e3deaa8e575a /home/shire3d/ARMOR/agents/apps/trendscout/contracts/source-record.schema.json 33eb82cc22c575f3a18df0686fd3e3a9424d9415fc36691b36529cc3a1521036 /home/shire3d/ARMOR/agents/apps/trendscout/contracts/weekly-report.schema.json 59f08508cd433258340742a6eb44be67ddb522025d28de86d68afb417d3ac268 /home/shire3d/ARMOR/agents/apps/trendscout/__pycache__/trendscout_repository.cpython-312.pyc debe890806d3f5f8227bda29dda533aedacb62b3efdc3a2ae997b056b04953a1 /home/shire3d/ARMOR/agents/apps/trendscout/README.md 222cc149177ccd1c54bf08ee4b29db8fd43f20fca5f5e4043889658aa79456ea /home/shire3d/ARMOR/agents/apps/trendscout/schema.sql 2f90f752ecb84dc18bd8b9f08dfecf12d81ef31df26505086302368dae0a7290 /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_api.py 42c48a8d0a2d03e7066ab6674cf4b0feab6a9dae472bd61068d60061dc8a718a /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_core.py c2f8ad8ac311a64d1d0c3cdefcd6db1bedc47b7686bfdc97e418010d8d958ee3 /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_repository.py 3175e09040fbc3e871e1ecf96593f31a091c8ab1044ec31d5bead3d2bb9e4200 /home/shire3d/ARMOR/agents/apps/trendscout/trendscout_repository_selftest.py 814858dca635aed2ba33cfe7a51e2a0f8e5ecf34c9e64691ab271546ffb7a5b0 /home/shire3d/ARMOR/agents/definitions/trendscout/agent.manifest.json 2d2e12a81977a3d1f8ab15efef60bebc84c6e926d88d8ef2736b6675805881b6 /home/shire3d/ARMOR/agents/definitions/trendscout/SYSTEM_CONTRACT.md ba20ede357d6bcff5815bdaeaa199d7614c5f4978be276a06019c9fb614959b7 /home/shire3d/ARMOR/config/agents/registry.json 86d265a0bc6fa13656443bae6d60d49af8c6aeffd9ba33189e84f60a84051ba3 /home/shire3d/ARMOR/data/agents/install-state.json 40066f3d4cb96674a63da02db5bd9aafdedaeb4c5feaf7c3872040556dd531b9 /home/shire3d/ARMOR/data/agents/trendscout/evidence/README.txt 37a03953f58ab13ab28e434610df73eaf109186243c845569e6f4e317649e3d9 /home/shire3d/ARMOR/data/agents/trendscout/memory/README.txt 4c9b924c9dcf6d29ef1c50935502fe6473ff1a2dd62de28a01fae6d5d6f9c773 /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3 fd4c9fda9cd3f9ae7c962b0ddf37232294d55580e1aa165aa06129b8549389eb /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3-shm e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/shire3d/ARMOR/data/agents/trendscout/runtime/trendscout.sqlite3-wal 6a891c55834e71b6e66ae5f9e7e28049d1867d5cccb0a938f901e2beb294a19f /home/shire3d/ARMOR/data/agents/trendscout/state.json f0e2cacdc04a7fe3a315d0adf1154628c5360cd325d3ee398b13d3709608a809 /home/shire3d/ARMOR/data/agents/trendscout/tasks/README.txt 007f3b05762159818465654ffa367e4c4f8a40e6188685ffcf3fb5601d2fb595 /home/shire3d/ARMOR/data/agents/trendscout/working/README.txt 1ab060cfb64912b67a23637cf92d24acd613923027e1028df1ff7ba2fb6abd9d /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/install-output.txt 380493ca574c12f009375f95597fc8a528117fe5843842f2121ef2845d1df50d /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/trendscout-before.tar.gz 226168f982b61612672dc3404b113678c0a6e1f8867387916016d68c8eecc414 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/api-offline-check.json 165a85fe0383ca2cbced1d6c935fbe243be06b3b843b600ab211f78f3b8ab1ff /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/trendscout-core-check.json 5a7a79ab15bf9e7d34b3a70462f0ce372aac5ac21be7fc2bb8702b745ebf152f /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/agent-hub-check.json bb498bc0029a5277b7dacf909041a1e12f20f62cf887b68e14231331dfe28cc5 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/local-health.json 171c39b657f819f21044de60952697b419b4810dec2cd28cf5eaaab58db3326f /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/local-dashboard.json c804578b1319bbb1d81451e17d948003f4efc97dd471fe30556c53a297124680 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/local-readiness.json de49263133d4fe34f88170dacfaa13903dc44d0c838e6e0ae40d5c03c0380eb8 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/write-rejection.json 65717350f4adf05300fc6f051a3acca00bc177c2629279333fc305f4e5f7cd36 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/tailnet-index.html 8fa2e5ca1ca92456ab80c72d7422456264701b0babdfa5715cfd420e003f97b3 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/database-before.sha256 8fa2e5ca1ca92456ab80c72d7422456264701b0babdfa5715cfd420e003f97b3 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/database-after.sha256 1edc2cdcf99ebcd97651bd681fc66262c3a4ded4a7f4279b51c298c7a3f28910 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/listening-port.txt 31a25a1d5409791ed0dcf5d4b73e7c1edff4729e1b0fd2e9318d89395f182f37 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/agent-hub-trendscout-status.json 5353ea54ee772f75385954bc55c3ba965687f21b7f5a15939f2b05f42edd0d2b /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/systemd-state.txt 671a89ea82670ce08990939fed9c87b718115e9b78eb3fbb1dffe7bfb1aa5883 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/systemd-units.txt bdfdbaaac8829590a761c7341d7906f34d86a2fec9f45c3b08e415bedc9c3488 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/installed-files.txt f7dcc3fdb92e189d2291215b8fb1a86c74f51a2beb876d550bdb27c3e8954df8 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/installed-sha256.txt bfa01269ff44c81197b49dceb6ada12f02cad67f11c9e7c540eb78fd16b6f429 /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z/trendscout-native-readonly-api.tar.gz === INSTALL RESULT === TrendScout version: 0.3.0-native-readonly-api Native workspace: online Local API: http://127.0.0.1:8781 Private Tailnet workspace: http://100.116.93.90:8781 HTTP writes: blocked Production database: unchanged Live research: disabled Research scheduler: absent Credentials: absent Weekly email sender: absent TrendScout timer: absent Public listener: absent PASS: TrendScout Native Read-Only API 0004B installed and validated. Evidence: /SHiREVault/Backup/OSBackups/TRENDSCOUT-NATIVE-0004B-READONLY-API-20260730T022024Z