Apple
e2a3ae342a
node2: fix Sofiia routing determinism + Node Capabilities Service
...
Bug fixes:
- Bug A: GROK_API_KEY env mismatch — router expected GROK_API_KEY but only
XAI_API_KEY was present. Added GROK_API_KEY=${XAI_API_KEY} alias in compose.
- Bug B: 'grok' profile missing in router-config.node2.yml — added cloud_grok
profile (provider: grok, model: grok-2-1212). Sofiia now has
default_llm=cloud_grok with fallback_llm=local_default_coder.
- Bug C: Router silently defaulted to cloud DeepSeek when profile was unknown.
Now falls back to agent.fallback_llm or local_default_coder with WARNING log.
Hardcoded Ollama URL (172.18.0.1) replaced with config-driven base_url.
New service: Node Capabilities Service (NCS)
- services/node-capabilities/ — FastAPI microservice exposing live model
inventory from Ollama, Swapper, and llama-server.
- GET /capabilities — canonical JSON with served_models[] and inventory_only[]
- GET /capabilities/models — flat list of served models
- POST /capabilities/refresh — force cache refresh
- Cache TTL 15s, bound to 127.0.0.1:8099
- services/router/capabilities_client.py — async client with TTL cache
Artifacts:
- ops/node2_models_audit.md — 3-layer model view (served/disk/cloud)
- ops/node2_models_audit.yml — machine-readable audit
- ops/node2_capabilities_example.json — sample NCS output (14 served models)
Made-with: Cursor
2026-02-27 02:07:40 -08:00
Apple
3965f68fac
node2: full model inventory audit 2026-02-27
...
Read-only audit of all installed models on NODA2 (MacBook M4 Max):
- 12 Ollama models, 1 llama-server duplicate, 16 HF cache models
- ComfyUI stack (200+ GB): FLUX.2-dev, LTX-2 video, SDXL
- Whisper-large-v3-turbo (MLX, 1.5GB) + Kokoro TTS (MLX, 0.35GB) installed but unused
- MiniCPM-V-4_5 (16GB) installed but not in Swapper (better than llava:13b)
- Key finding: 149GB cleanup potential; llama-server duplicates Ollama (P1, 20GB)
Artifacts:
- ops/node2_models_inventory_20260227.json
- ops/node2_models_inventory_20260227.md
- ops/node2_model_capabilities.yml
- ops/node2_model_gaps.yml
Made-with: Cursor
2026-02-27 01:44:26 -08:00
Apple
7b8499dd8a
node2: P0 vision restore + P1 security hardening + node-specific router config
...
P0 — Vision:
- swapper_config_node2.yaml: add llava-13b as vision model (vision:true)
/vision/models now returns non-empty list; inference verified ~3.5s
- ollama.url fixed to host.docker.internal:11434 (was localhost, broken in Docker)
P1 — Security:
- Remove NODES_NODA1_SSH_PASSWORD from .env and docker-compose.node2-sofiia.yml
- SSH ED25519 key generated, authorized on NODA1, mounted as /run/secrets/noda1_ssh_key
- sofiia-console reads key via NODES_NODA1_SSH_PRIVATE_KEY env var
- secrets/noda1_id_ed25519 added to .gitignore
P1 — Router:
- services/router/router-config.node2.yml: new node2-specific config
replaces all 172.17.0.1:11434 → host.docker.internal:11434
- docker-compose.node2-sofiia.yml: mount router-config.node2.yml (not root config)
P1 — Ports:
- router (9102), swapper (8890), sofiia-console (8002): bind to 127.0.0.1
- gateway (9300): keep 0.0.0.0 (Telegram webhook requires public access)
Artifacts:
- ops/patch_node2_P0P1_20260227.md — change log
- ops/validation_node2_P0P1_20260227.md — all checks PASS
- ops/node2.env.example — safe env template (no secrets)
- ops/security_hardening_node2.md — SSH key migration guide + firewall
- ops/node2_models_pull.sh — model pull script for P0/P1
Made-with: Cursor
2026-02-27 01:27:38 -08:00
Apple
46d7dea88a
docs(audit): NODA2 full audit 2026-02-27
...
- ops/audit_node2_20260227.md: readable report (hardware, containers, models, Sofiia, findings)
- ops/audit_node2_20260227.json: structured machine-readable inventory
- ops/audit_node2_findings.yml: 10 PASS + 5 PARTIAL + 3 FAIL + 3 SECURITY gaps
- ops/node2_capabilities.yml: router-ready capabilities (vision/text/code/stt/tts models)
Key findings:
P0: vision pipeline broken (/vision/models=empty, qwen3-vl:8b not installed)
P1: node-ops-worker missing, SSH root password in sofiia-console env
P1: router-config.yml uses 172.17.0.1 (Linux bridge) not host.docker.internal
Made-with: Cursor
2026-02-27 01:14:38 -08:00
Apple
974522f12b
feat(noda2): enable NATS leafnode remote to NODA1:7422
...
- nats-server.conf: added leafnodes.remotes to nats://144.76.224.179:7422
- NODA2 now a spoke leaf node; NODA1 is hub
- Cross-node pub/sub verified: NODA1 pub → NODA2 sub (node.test.>)
- Leafnode connection confirmed: 144.76.224.179:7422 lid:5
Made-with: Cursor
2026-02-26 23:36:25 -08:00
NODA1 System
088ca07137
feat(gateway): proxy artifact downloads via public doc endpoints
2026-02-21 17:22:06 +01:00
NODA1 System
cca16254e5
feat(docs): add document write-back publish pipeline
2026-02-21 17:02:55 +01:00
NODA1 System
f53e71a0f4
feat(docs): add versioned document update and versions APIs
2026-02-21 16:49:24 +01:00
NODA1 System
5d52cf81c4
feat(docs): add standard file processing and router document ingest/query
2026-02-21 14:02:59 +01:00
NODA1 System
3e3546ea89
security: remove default agromatrix review token fallback
2026-02-21 13:29:12 +01:00
NODA1 System
f44e920486
agromatrix: enforce mentor auth and expose shared-memory review via gateway
2026-02-21 13:18:36 +01:00
NODA1 System
68ac8fa355
agromatrix: add shared-memory review api and crawl4ai robustness
2026-02-21 13:18:36 +01:00
NODA1 System
01bfa97783
agromatrix: tighten numeric source contract guard
2026-02-21 13:18:36 +01:00
NODA1 System
d963c52fe5
agromatrix: add pending-question memory, anti-repeat guard, and numeric contract
2026-02-21 13:18:36 +01:00
NODA1 System
a87a1fe52c
agromatrix: deterministic plant-id flow + confidence guard + plantnet env
2026-02-21 13:18:36 +01:00
NODA1 System
50dfcd7390
router: enforce direct image inputs for plant tools and inject runtime image_data
2026-02-21 13:18:36 +01:00
NODA1 System
f3d2aa6499
agromatrix: invalidate wrong photo labels and tighten correction parsing
2026-02-21 13:18:36 +01:00
NODA1 System
3d04cd4c88
agromatrix: harden correction parser + cap context + persist last photo ref
2026-02-21 13:18:36 +01:00
NODA1 System
69486a92be
vendor: replace third_party/nature-id gitlink with tracked files
2026-02-21 13:18:36 +01:00
NODA1 System
a91309de11
agromatrix: deploy context/photo learning + deterministic excel policy
2026-02-21 13:18:36 +01:00
Apple
e00e7af1e7
agromatrix: harden correction learning and invalidate wrong labels
2026-02-21 02:25:40 -08:00
Lord of Chaos
815a287474
Gateway/Doc: source-lock, PII guard, intent retry, shared Excel contract ( #4 )
...
* gateway: enforce source-lock, pii guard, style profile, and intent retry
* doc-service: add shared deterministic excel answer contract
* gateway: auto-handle unresolved user questions in chat context
* gateway: fix greeting UX and reduce false photo-intent fallbacks
---------
Co-authored-by: Apple <apple@MacBook-Pro.local >
2026-02-21 10:16:43 +02:00
Apple
2b0b142f95
gateway: fix greeting UX and reduce false photo-intent fallbacks
2026-02-21 00:05:09 -08:00
Apple
0a87eadb8d
gateway: auto-handle unresolved user questions in chat context
2026-02-20 23:54:52 -08:00
Apple
7b5357228f
doc-service: add shared deterministic excel answer contract
2026-02-20 14:16:16 -08:00
Apple
e6c083a000
gateway: enforce source-lock, pii guard, style profile, and intent retry
2026-02-20 14:16:07 -08:00
Apple
195eb9b7ac
agents: add planned AISTALK orchestrator and crew profile
2026-02-20 10:24:59 -08:00
NODA1 System
ce6c9ec60a
gateway: add natural-language action mapping for reminders and mentor relay
2026-02-20 19:17:18 +01:00
NODA1 System
c2f0b64604
gateway: add privacy guard plus reminders and mentor relay commands
2026-02-20 19:01:50 +01:00
NODA1 System
987ece5bac
ops: add plant-vision node1 service and update monitor/prober scripts
2026-02-20 17:57:40 +01:00
NODA1 System
90eff85662
crewai: add agromatrix and plant-intel role packs with updated team config
2026-02-20 17:56:55 +01:00
NODA1 System
a8a153a87a
router: add tool manager runtime and memory retrieval updates
2026-02-20 17:56:33 +01:00
NODA1 System
9ecce79810
registry: assign district_id for agents and add district registry catalog
2026-02-20 17:56:05 +01:00
NODA1 System
2e76ef9ccb
gateway: add public invoke/jobs facade with redis queue worker and SSE
2026-02-20 17:55:47 +01:00
NODA1 System
7e82a427e3
gateway: add redis-backed city metrics poller and /v1/metrics/dashboard
2026-02-20 15:44:17 +01:00
Apple
e01ed7be75
router: remove qwen2.5 profile and pin monitor to local qwen3
2026-02-19 00:25:55 -08:00
Apple
e82d70553d
chore: ignore local rollback backup snapshots
2026-02-19 00:14:51 -08:00
Apple
544874d952
docs: add node1 runbooks, consolidation artifacts, and maintenance scripts
2026-02-19 00:14:27 -08:00
Apple
c57e6ed96b
services: update comfy agent, senpai md consumer, and swapper deps
2026-02-19 00:14:18 -08:00
Apple
c201d105f6
services: add clan consent/visibility and oneok adapter stack
2026-02-19 00:14:12 -08:00
Apple
dfc0ef1ceb
runtime: sync router/gateway/config policy and clan role registry
2026-02-19 00:14:06 -08:00
Apple
675b25953b
chore: ignore backup/temp artifacts and local worktree scratch
2026-02-18 10:47:26 -08:00
Apple
de8bb36462
docs+router: formalize runtime policy and remove temporary cloud-first code override
2026-02-18 10:40:40 -08:00
Apple
05435e7fad
router: bypass local routing rules for cloud-first agents
2026-02-18 10:28:53 -08:00
Apple
ef59cb0950
router: enforce cloud-first direct path for top-level and monitor agents
2026-02-18 10:26:29 -08:00
Apple
5bca7fb79d
router: unify top-level DeepSeek-first + on-demand CrewAI policy
2026-02-18 10:20:10 -08:00
Apple
a23cde217f
clan: route simple requests to fast crew profile; keep zhos_mvp for complex
2026-02-18 09:59:53 -08:00
Apple
7c3bc68ac2
clan: restore zhos_mvp profile in crewai-service and re-enable clan zhos routing
2026-02-18 09:56:06 -08:00
Apple
b65ed7cdf2
clan: stop forcing missing zhos_mvp crew profile; use available default
2026-02-18 09:43:33 -08:00
Apple
13aa0c79f0
router: bundle CLAN runtime registry in router image path
2026-02-18 09:42:00 -08:00