Documentation v1.0
Supabase live · 2026-05-04
ForestSense OS — Dokumentatsiooniportaal
Multi-agent operatsioonisüsteem Baltikumi metsanduse andmehalduseks · Vestman Group test-klient · v1.0 · 2026-05-04
🏗️
Hybriid-arhitektuur v1.2
Forestsense v2.0 SaaS + Eiriku OS metalevel. 8 agenti, Supabase Pro, 5 toodet.
LOCKED
🤖
Agendi register
17 agenti: peaagent, Eirik (3 instantsi), Disainer, Directo, EVR, Watchdog.
3 active14 idle
🌌
Andmeallikad
12 allikat: Directo, TMA, EVR, LVM Geo, KPDC, SharePoint, Drive, WhatsApp.
6 active2 planned
🗄️
Supabase skeem
32 tabelit: directo_*, tma_*, evr_*, features, agent_*, price_*, sync_log.
igybaozqwiklxxcpwwkj
🐍
ETL skriptid
mini-NAS Python ETL: Directo sync, Harvester TMA, LVM Geo import, EVR.
07_skriptid/
📊
Andmete universumi kaart
Graafiline orbiitkaart kõigist andmeallikatest — reaalajas Supabase data_freshness_status.
Live HTML

Süsteemi olek (2026-05-04)

Supabase Pro — 32 tabelit, PostGIS aktiivsed, igybaozqwiklxxcpwwkj
Directo VFF + VZF2 — viimane sünk 2026-05-03 03:30, andmed fresh
Harvester TMA (VS_TASK_3) — kood kirjutatud, mini-NAS deployment ootab Azure AD credentials
LVM Geo — import PASS, VZF2 kinnistud Supabase features tabelis
KPDC DFIS — planned, Erki annab API token
EVR sync — edge function aktiivsed, andmed Supabase'is

Kiirvasted

Oluline viidete lühend

LühendTähendus
VSClaude Code + VS Code
CWCowork Desktop (Eirik)
FSForestSense
NWNoble Woods
VFFVestman Forest Fund (LV 44103115478)
VZF2Vestman Zemes Fond 2 (LV 40203550091)
DUraieüksus, kood C-XXXXX
MMHMetsamaahalduse AS

Kiirlingid

SüsteemLink
Supabase Studiosupabase.com/project/igy…
ForestSense DriveDrive / ForestSense
VFF SharePointSP VFF108
Andmete universumi kaartandmeallikate_kaart_v0.html
LVM geo kaartlvm_geo_kaart_v1.html
Azure ADportal.azure.com
Süsteemiarhi
Hybriid_arhitektuur v1.2 — Forestsense v2.0 SaaS + Eiriku OS operatsioonikiht
🔒
LOCKED v1.2 — auditeeritud peaagent_opus47_max'iga (Supabase id=424–427). Järgmine versioon v2.0 pärast GitHub priv-repo forestsense-os loomist.

Kaks kihti

🌲 ForestSense v2.0 — kliendi vaade
Multi-tenant SaaS metsanduse haldusplatvorm Balti investoritele.

5 toodet: MAP (geo), TimberTrace (raieaudit), Verify (arve-kontroll), S2 (LiDAR R&D), RAK (hinnakirjakontroll)

Test-klient: Vestman Group (VFF + VZF2)
⚙️ Eiriku OS — tehase vaade
Erki kõigi rollide metalevel mälu: NW direktor + FS asutaja + KBC omanik + eraelu.

Toimib real-time: Outlook, Gmail, Supabase, Drive, WhatsApp, SharePoint.

8 agenti + mini-NAS automation + GitHub CI/CD (plaanis)

Süsteemi diagramm

┌─────────────────────────────────────────────────────────────────────┐ │ ERKI (kasutaja + omanik) │ │ VS Code ─── Cowork Desktop ─── Claude.ai ─── Android │ └─────────┬────────────────┬──────────────────┬──────────────────── ┘ │ │ │ ┌─────────▼──────┐ ┌──────▼────────┐ ┌─────▼──────────┐ │ VS Eirik │ │ CW Eirik │ │ Chat Eirik │ │ (kõvad liinid)│ │ (meili/relay)│ │ (mobile/kerge)│ │ Python, kood │ │ Outlook MCP │ │ Supabase query│ └─────────┬──────┘ └──────┬────────┘ └─────┬──────────┘ │ │ │ └────────────────▼──────────────────┘ │ ┌──────────▼──────────┐ │ Supabase Pro │ │ 32 tabelit │ │ PostGIS + pgvector │ │ agent_messages bus │ └──────────┬──────────┘ │ ┌──────────────────────────▼────────────────────────────────────────┐ │ ANDMEALLIKAD │ │ │ │ Directo VFF/VZF2 ─── TMA SharePoint ─── EVR ─── LVM Geo │ │ Email (vestman.ee) ─── WhatsApp ─── KPDC ─── Drive/OneDrive │ └────────────────────────────────────────────────────────────────────┘

First-principles põhimõtted (v1.2)

#ReegelSeisJärgmine samm
1Üks vaade, üks tõde5 toote koondvaade puudubLA-04 "tehase HUB" Live Artifact
2Vertikaalne integratsioon (data→audit→P&L)OK
3Real-time (Live Artifacts MCP)OK
4VersioneerimineKäsitsi HTML, git puudubGitHub priv-repo forestsense-os
5First-principles otsusedOK
6Skill-katalog ühisruumis23 skilli laialiSkills migratsioon _KATUS/Skills/

Konto- ja kanalide-arhitektuur

KontoEmailPlaanAgendid
Max plaanerki.unn@gmail.comClaude Maxpeaagent_opus47_max, Noble Woods projekt, Hinnakiri projekt
Forestsense Teamerki.unn@forestsense.aiClaude TeamVS Eirik, CW Eirik, Chat Eirik, Disainer
ℹ️
Brauseri grupp 1 (Max): peaagent_opus47_max, NW nõukogu. Grupp 2 (Team): Cowork/VS Eirik, Disainer. Cowork = ainult Desktop äpp (PR #41).
Agendi register
17 agenti Supabase agent_registry tabelis · PR #48 universaalne onboarding · sünk agent_messages kaudu
📡
Suhtlusprotokoll: kõik agendid suhtlevad agent_messages tabeli kaudu. Relay: VS Eirik → INSERT Supabase → CW Eirik/peaagent loeb. from_agent, to_agent, message_type, priority, payload jsonb, status.

Eirik-pere (3 instantsi)

InstantsiKanalRollPeamine töö
VS Eirik vs_eirik Claude Code + VS Code Kõvad liinid Python ETL, Supabase migratsioonid, GitHub, mini-NAS skriptid
CW Eirik eirik Cowork Desktop äpp Pehmed liinid Outlook/Gmail analüütika, Disainer relay, briefingud, meilianalüütika
Chat Eirik chat_eirik Claude.ai brauser + Android Kerge kanal Supabase päringud, NW päevalogi lugemine, mobiilne crash-resistance

Kõik agendid

agent_idNimiRollStaatusPeamine võimekus
peaagentPeaagent / Orchestratororchestratoridleall, coordination, Max plaan strateegia
eirikCW Eirikmetaactiveidentity_memory, multi_agent_orchestration, supabase_mcp
vs_eirikVS EirikcodeactivePython, GitHub, ETL, Supabase SQL, mini-NAS
chat_eirikChat Eirikkerge-kanalidleSupabase lugemine, mobiilne staatus
disainerDisainervisuaalne_tarneactiveHTML/JSX, CSS tokens, PDF/PPTX eksport, Drive
disainer_nwDisainer — NW DesigndesignidlePPTX, NW brand, Claude Design Tool
directo_syncDirecto Sync Edge Fndataactivedirecto_invoices, _purchases, _objects, _transactions
evr_syncEVR Sync Edge Fndataactiveevr_waybills VFF+VZF2
watchdogWatchdogmonitoridleall_tables, alerting, cleanup
watchdog_v2Watchdog v2 (pg_cron)monitoractivedata_freshness_check, daily_reports
D1Directo Agentdataidledirecto_bi, VFF+VZF2, arved
EVREVR Agentdataidleevr_api, VFF+VZF2 EVR
MAPKaardi AgentvisualizationidleLeaflet, LVM Geo, ArcGIS, Netlify
R2Raie Audit Agentreportingidleharvester, directo, evr, C-koodid
W1WhatsApp TransportdataidleChrome MCP, WhatsApp, pavadzīme OCR
A1Arhiiv AgentstorageidleSharePoint, OneDrive, Skills
T4Andmelao Haldurdataidledirecto_sync, evr_sync, OneDrive

Agent_messages skeema (PR #5)

INSERT INTO agent_messages (from_agent, to_agent, message_type, priority, payload, status)
VALUES (
  'vs_eirik',
  'eirik',
  'task_result',   -- task_request | task_result | task_done | question | heartbeat
  3,               -- 1=kriitiline .. 5=madal
  $j${"subject": "...", "data": {...}}$j$::jsonb,
  'done'           -- pending | processing | done | error
);
Tööpõhimõtted
CLAUDE.md v1.4 püsireeglid — 60 reeglit kokku · 2026-05-03
⚠️
Need reeglid on siduvad kõigile agentidele. Uus reegel lisatakse ainult Erki kinnitusega (PR #29 AskUserQuestion dialoog). Tuvastus: PR #28–#30 algoritm.

Kriitilised reeglid (Erki prioriteedijärjekord)

PR#ReegelKuupäev
#1Kõigile tegevustele klikitavad lingid (Gmail, Outlook, Drive, GitHub, Supabase, claude.ai)2026-04-19
#5agent_messages õige skeem: from_agent, to_agent, payload jsonb — mitte sender_agent_id2026-04-19
#9EE/LV registripäringud ise (teatmik.ee, ariregister.rik.ee) — ei küsi Erkilt2026-04-22
#16Tähtaeg KEELATUD — kõik on KOHE. WIP-faas.2026-04-28
#20AskUserQuestion 2+ valiku jaoks — mitte markdown-tabel2026-04-28
#28Korralduste auto-analüüs: kategooria 1/2/3 → auto-AskUserQuestion2026-04-28
#38Failide kopeerimine: agendid liigutavad ise (Drive MCP), Erki ei vahenda2026-04-28
#42Sessiooni alguse 5-faili rituaal (CLAUDE.md → MEMORY.md → Supabase 30 → 00_alus/ → lahtised küsimused)2026-05-01
#45Directo andmed Supabase tabelitest otse — ei kasuta d1_directo vahendamist2026-05-02
#49Harvester raportid 2 allikast paralleelselt: SharePoint VFF108 + email erki.unn@vestman.ee2026-05-03
#50FINAL/INTER deduplikatsioon — MITTE KUNAGI summeeri INTER+FINAL2026-05-03

FINAL/INTER reegel (PR #60)

DU C-XXXXX kohta võib olla mitu HPR raportit ajas: FINAL = viimane modification_date per DU → kehtiv arvutustes INTER = varasemad raportid (kumulatiivsed vaheraportid) → ignoreerida _fixed.hpr suffix → eelistus FINAL-ks sama päeva sees SQL: SELECT DISTINCT ON (du_code) du_code, report_date, volume_m3 FROM tma_tracking WHERE du_code = 'C-XXXXX' ORDER BY du_code, report_date DESC;
Andmeallikad
12 allikat · andmeallikate_kataloog_v1.md alusel · Supabase data_sources tabel

Auto-sünk (aktiivsed)

IDAllikasSupabase tabelStaatusSünk sagedus
DIRECTO_VFF 💰 Directo VFF (VFF raamatupidamine) directo_transactions fresh iga 6h, mini-NAS cron
DIRECTO_VZF2 💰 Directo VZF2 (VZF2 raamatupidamine) directo_transactions fresh iga 6h, mini-NAS cron
TMA 🪵 TimberTrace / TMA (harvester raieandmed) tma_tracking, tma_files, tma_stems, tma_objects deployment ootel VS_TASK_3 — iga 30 min (pärast Azure AD seadistust)
EVR 🚛 EVR transport (EE/LV veoselehed) evr_transport_docs active Edge Function daily
LVM_GEO 🗺️ LVM Geo (kinnistute geomeetria, PostGIS) features, feature_relations active batch import (viimane 2026-05-03)
SP_VFF108_HARVEST 📁 SharePoint VFF108 (harvester HPR/PRD) tma_files deployment ootel VS_TASK_3 — iga 30 min
HARVESTER_EMAIL 📧 Email vestman.ee (harvester manused) tma_files deployment ootel VS_TASK_3 — iga 30 min

Pilvsalvestus

IDAllikasMCP tööriistSisu
DRIVE📁 Google Drive ForestSensemcp__82e6245c-*NW Forest Model, Q1, Exit Pitch, briefingud
ONEDRIVE📂 OneDrive isiklik (vestman.ee)mcp__37284916-*Vestman äridokumendid, OneDrive sync C:\Users\erki.unn\Desktop\Erki
SP_VFF📋 VFF SharePointmcp__37284916-*VFF tööruum, operatiivsed dokumendid

Planeeritud (pole veel aktiivsed)

IDAllikasBlokaad
KPDC_LV📊 KPDC DFIS (LV puidu-voo andmekeskus, PapiNet)Erki API token ootel (LK-006)
WHATSAPP_STROBUS💬 WhatsApp Strobus logisticsW1 agent Chrome MCP impl. pooleli
WHATSAPP_AKSTIGA💬 WhatsApp AK Stiga transportW1 agent Chrome MCP impl. pooleli
PHENU📋 Phenu (EE saatelehe-süsteem)Manuaalne, API integratsioon plaanis
📌
Directo ühenduse kanal (PR #51): Eirik EI saa Cowork sandbox'ist otse Directo'sse (proxy blokk HTTP 403). Tee 1: mini-NAS Python → Directo BI Direct → Supabase. Tee 2: Erki manuaalne. Token ainult mini-NAS .env ja Anthropic userMemories'is.
Supabase andmebaasi skeem
Projekt igybaozqwiklxxcpwwkj · 32 tabelit · PostgreSQL + PostGIS · Pro plaan

🤖 Agent infrastruktuur

TabelKirjeldus
agent_messagesAgentide sõnumibuss. from_agent, to_agent, message_type, payload jsonb
agent_registry17 agendi register: agent_id, display_name, role, status, capabilities
agent_stateAgendi hetkeseisu hoidla
agent_tasksÜlesannete jälgimine
sync_logKõigi sünk-operatsioonide logi
watchdog_logWatchdog v2 kontroll-sündmused
data_freshness_statusAndmeallikate värskuse seis (andmete-universumi kaart loeb siit)
data_sources27 andmeallika register koos metadata ja sünk-staatusega

💰 Directo raamatupidamine

TabelKirjeldus
directo_transactionsVFF+VZF2 pearaamatu kanded. company, date, sum, account
directo_invoicesMüügiarved (HPR alusel). invoice_no, du_code, amount
directo_purchasesOstuarved. Ruusa OÜ, AP Mežs jt harvester tasud
directo_objectsDirecto objektid (C-XXXXX DU koodid, kinnistud)
attribute_definitionsDirecto atribuutide definitsioonid
observationsMõõtmisandmed (timbertrace vaatlused)

🪵 TMA / Harvester raieandmed

TabelKirjeldus
tma_filesHPR/PRD/TMA faili metainfo. source_uri, content_hash, raw_attributes jsonb
tma_objectsRaie-objekte StanForD2010 per fail
tma_stemsTüvekaardid (stem list) koos koordinaatidega
tma_trackingDU-tasemel mahukokkuvõte. du_code, report_date, volume_m3, FINAL/INTER

🚛 Transport

TabelKirjeldus
evr_transport_docsEE/LV veoselehed. waybill_no, date, volume_m3

🗺️ Geo (PostGIS)

TabelKirjeldus
featuresKinnistud + eraldised + DU tööülesanded. geom GEOMETRY(Geometry,4326)
feature_relationsGeo-elementide vahelised seosed
geometry_columnsPostGIS metadata (süsteemitabel)
geography_columnsPostGIS metadata (süsteemitabel)
spatial_ref_sysSRID definitsioonid (süsteemitabel)

💵 Hinnakirjad

TabelKirjeldus
price_listsAktiivsed hinnakirjad (VFF/VZF2 harvester tasud)
price_componentsHinnakiri komponentidena (liigid, sortimendid)
coefficient_historyKoefitsientide ajalugu
payment_scheduleMaksegraafikud

📋 Arvekontroll

TabelKirjeldus
invoice_verificationsHPR vs arve kontroll-tulemused (Verify toode)

📊 Vaated (Views)

VaadeKirjeldus
v_active_coefficientHetkel kehtiv koefitsient per liik
v_active_price_listsAktiivsed hinnakirjad
v_pending_invoicesKontrollimata arved
Andmete universumi kaart
Reaalajas orbiitkaart kõigist andmeallikatest · andmeallikate_kaart_v0.html · FS-UNIVERSE-v0.2-2026-05-03
🌌
Kaart loeb andmeid otse Supabase data_sources + data_freshness_status tabelitest. Värvikood: 🟢 fresh (<8h) · 🟡 aging (8–24h) · 🔴 stale (>24h).
andmeallikate_kaart_v0.html ↗ ava uues aknas
ETL skriptid
07_skriptid/ · mini-NAS Windows Docker konteinerites jooksvad Python ETL protsessid
🖥️
Mini-NAS deployment: Erki Windows 11 Pro Docker Desktop. Skriptid käivituvad cron'iga iga 6h (Directo) + 30 min (TMA). Credentials: .env fail lokaalsel masinal + Anthropic userMemories (MITTE Drive ega GitHub).

Harvester TMA sünk (VS_TASK_3)

Kood valmis · deployment ootab Azure AD credentials (MS_TENANT_ID, MS_CLIENT_ID, MS_CLIENT_SECRET)
FailRollStaatus
harvester_tma_sync/sync.py Entry point CLI — --sharepoint | --email | --dedup | --all | --heartbeat | --dry-run valmis
harvester_tma_sync/sources/sharepoint.py Microsoft Graph API SharePoint VFF108 — VFF + VZF2 harvester reports kaustad valmis
harvester_tma_sync/sources/email_capture.py Graph API Outlook vestman.ee — ruusaou@gmail.com, svenotsa@gmail.com manused valmis
harvester_tma_sync/parsers/stanford2010.py StanForD2010 XML parser — TMA/HPR/PRD formaat, DU kood regex, _fixed detektsioon valmis
harvester_tma_sync/tma_writer.py Supabase writer — content_hash dedup, batch 500, SRID=4326 geom valmis
harvester_tma_sync/dedup.py FINAL vs INTER märgistamine — PR #60 reegel, _fixed bonus sort valmis
harvester_tma_sync/.env.example Vajalikud muutujad: SUPABASE_URL, SUPABASE_SERVICE_KEY, MS_TENANT_ID, MS_CLIENT_ID, MS_CLIENT_SECRET valmis
# Käivitus mini-NAS Docker'is:
python sync.py --all                     # SharePoint + email + dedup
python sync.py --sharepoint --dry-run    # Testimine ilma kirjutamata
python sync.py --heartbeat               # Supabase ühenduse test

# SharePoint struktuur VFF108:
# Shared Documents/Harvesting workflow/
#   VFF harvester reports/CXX_FolderName/  → company=VFF, du_code=C-XXXXX
#   VZF2 harvester reports/CXX_FolderName/ → company=VZF2
  

Directo sünk

FailRollSagedus
mini_nas_directo_sync/sync_directo.pyVFF+VZF2 Directo BI Direct → Supabase directo_*iga 6h cron
mini_nas_directo_sync/supabase_writer.pySupabaseWriter baasklass — heartbeat, log_error, get_credential

LVM Geo import

FailRollStaatus
lvm_geo_import/import_geo.pyLVM GeoJSON/GPKG → Supabase features tabel (PostGIS)PASS 2026-05-03

Nõutud .env muutujad (mini-NAS)

# Supabase (kohustuslik)
SUPABASE_URL=https://igybaozqwiklxxcpwwkj.supabase.co
SUPABASE_SERVICE_KEY=your_service_role_key_here

# Microsoft 365 / Graph API
MS_TENANT_ID=your_tenant_id_here        # Azure AD → App registrations
MS_CLIENT_ID=your_client_id_here
MS_CLIENT_SECRET=your_client_secret     # Jäta tühjaks → device_code interaktiivne

# Directo BI Direct
DIRECTO_KEY=your_directo_key
DIRECTO_COMPANY_VFF=VFF
DIRECTO_COMPANY_VZF2=VZF2

# Valikuline
DRY_RUN=false
LOG_LEVEL=INFO
  
Skills kataloog
23 unikaalset skilli · Drive + /mnt/skills/user/ · Migratsioon _KATUS/Skills/ alla (v1.2 F6)
⚠️
Skills on laiali — Drive 4 erikohas + Cowork sandbox. Konsolideerimine 01_FORESTSENSE/_KATUS/Skills/ alla on Hybriid_arhitektuur v1.2 F6 prioriteet. Peaagent_opus47_max teostab.

Kinnitatud skills (dokumenteeritud)

SkillKategooriaDrive linkVersioon
harvesting-project-audit Reports / TimberTrace Drive v1.1 (2026-04-18)
directo-erp-integrationDirectoDrivev1.0
raie-arve-verifitseerimineRAK/VerifyDrivev1.0
hinnakirja-koefitsentRAKDrivev1.0
forestsense-evrReportsDrivev1.0
whatsapp-transport-agentReportsDrivev0.1
lvm-vizulis-inbox-monitorReportsDrivev0.1
v1-verificationVerifyDrivev1.0
forestsense-vaheauditVerifyDrivev0.1
forestsense-datasourcesDatasources/HUBDrivev1.0
ee-xml-gis-converterTehniline platvormDrivev1.0
directo_uhendus_SKILLDirecto / mini-NAS07_skriptid/directo_uhendus_SKILL_v1.mdv1
API viited
Microsoft Graph · Supabase REST · Directo BI Direct · StanForD2010

Microsoft Graph API (SharePoint + Outlook)

EndpointKasutus
GET /drives/{driveId}/items/{itemId}/childrenSharePoint kausta sisu loetlemine
GET /drives/{driveId}/items/{itemId}/contentFaili allalaadimine (HPR/PRD/TMA)
GET /users/{mailbox}/messagesOutlook e-mailid filtriga (sender, hasAttachments, date)
GET /users/{mailbox}/messages/{id}/attachmentsManuste laadimine (contentBytes base64)
KonstantVäärtus
VFF108_DRIVE_IDb!XsQUW0kQxke0vpe6Q9XBzTV01xgkOfhJtx6GR3Q5rcm7m9m8T7y9SZLiBGsXRVlG
VFF harvester folder01EZHKEI47PYBJBAV4HVBYNA3KA7QEDKXR
VZF2 harvester folder01EZHKEI6A3GPOZ6URUVDJ53BDSARGRW5C
TARGET_MAILBOXerki.unn@vestman.ee

MSAL auth (mini-NAS)

# Client credentials (automaatne, mini-NAS .env):
app = msal.ConfidentialClientApplication(
    client_id, authority=f"https://login.microsoftonline.com/{tenant_id}",
    client_credential=client_secret,
)
result = app.acquire_token_for_client(scopes=["https://graph.microsoft.com/.default"])

# Device code (interaktiivne testimine, kui MS_CLIENT_SECRET tühi):
app = msal.PublicClientApplication(client_id, authority=...)
flow = app.initiate_device_flow(scopes=["Files.Read.All"])
print(flow['message'])  # → login.microsoftonline.com/common/oauth2/deviceauth?code=...
  

Supabase REST (Python client)

from supabase import create_client
client = create_client(SUPABASE_URL, SUPABASE_SERVICE_KEY)

# SELECT
result = client.table("tma_files").select("id,source_name,raw_attributes") \
    .not_.is_("raw_attributes->du_code", "null").execute()

# UPSERT (content_hash dedup)
client.table("tma_files").upsert(
    {"source_uri": uri, "content_hash": sha256, ...},
    on_conflict="content_hash"
).execute()
  

StanForD2010 XML

ElementKirjeldus
hpr:HarvestingProcessorReportHarvester raieraport — põhiformat
prd:ProductionDataTootmisandmed (tüvekaardid)
tma:TimberMeasurementActMõõdutunnistus
stem/StemCoordinatesGPS koordinaadid (lat/lon) per tüvi
Namespaceurn:skogforsk:stanford2010
Deployment
Mini-NAS (Erki Windows 11 Pro Docker) + Supabase Edge Functions + GitHub priv-repo (plaanis)

Mini-NAS ülevaade

🖥️ Praegune NAS (Erki laptop)
Windows 11 Pro · Docker Desktop
Tailscale VPN: 100.116.204.116
pgAdmin: 100.116.204.116:5050
07_skriptid/ Docker konteinerites
🗄️ DS1825+ (planeeritud)
Synology DS1825+ migratsioon planeeritud v1.x→v2.0 puhul
Sama skriptide-arhitektuur
Tailscale + SSH tunnel

VS_TASK_3 deployment sammud

#SammBlokaad
1Azure AD app registration — portal.azure.com → App registrations → New → Sites.Read.All + Mail.Read.SharedErki teeb
2Kopeeri MS_TENANT_ID, MS_CLIENT_ID, MS_CLIENT_SECRET → mini-NAS .env failipärast sammu 1
3pip install msal httpx supabase python-dotenv
4python sync.py --heartbeat — testi Supabase ühendust
5python sync.py --sharepoint --dry-run — testi SharePoint loetlemist
6python sync.py --all — täis sünk
7Docker cron — iga 30 min sync.py --all

Supabase Edge Functions (aktiivsed)

FunktsioonKäivitusRoll
directo_syncpg_cron iga 6hDirecto VFF+VZF2 → Supabase directo_*
evr_syncpg_cron dailyEVR veoselehed → evr_transport_docs
watchdog_v2pg_cron dailydata_freshness_status uuendamine + alertid

GitHub (plaanis)

📌
Praegu: Käsitsi versioneerimine (HTML failid v8.4→v9, mitte git). Plaan (Hybriid_arhitektuur F6): GitHub priv-repo forestsense-os — CI/CD Python skriptide jaoks, git history, pull requests. Peaagent audit id=424: "ForestSense EI kasuta git praegu! SOOVITUS: VS Code workspace + GitHub priv-repo."
LVM Geo kaart
VZF2 kinnistud + eraldised + DU tööülesanded · Leaflet + PostGIS · lvm_geo_kaart_v1.html
🗺️
Import PASS 2026-05-03: VZF2 kinnistud on Supabase features tabelis. VFF kinnistud import on järgmine samm. 7 kihti: parcels, compartments, du_work_orders, TMA by file, NFA stems.
lvm_geo_kaart_v1.html ↗ ava uues aknas
Changelog
ForestSense OS dokumentatsiooniportaal · Kõigi komponentide versiooniajalugu

Dokumentatsiooniportaal

v1.0
2026-05-04
Esmane dokumentatsiooniportaal — 9 sektsiooni, agent register (17), DB skeem (32 tabelit), ETL inventuur, andmeallikate integratsioon. Forbes 500 SaaS standard, sama disainikeel mis andmete universumi kaart.

Süsteemikomponentide ajalugu

v1.2
2026-04-26
Hybriid_arhitektuur LOCKED — peaagent_opus47_max audit (id=424–427). Skills migratsiooniplaan, 6 first-principles.
v2.0
2026-04-18
ForestSense Team arhitektuur v2.0 — Cowork = süda, brauser = strateegia/mobiil. Skills + Scheduled Tasks + püsiv mälu rõhk.
v0.2
2026-05-03
Andmete universumi kaart — 12 andmeallikat, reaalajas Supabase data_freshness_status, orbiitkaart. FS-UNIVERSE-v0.2.
v1.0
2026-05-03
LVM geo kaart — VZF2 kinnistud import PASS. 7 Leaflet kihti. PostGIS SRID=4326.
VS_TASK_3
2026-05-03/04
Harvester TMA ETL kood valmis — 6 faili: sync.py + sharepoint.py + email_capture.py + stanford2010.py + tma_writer.py + dedup.py. Deployment ootab Azure AD.
PR #60
2026-05-03
FINAL/INTER deduplikatsioon püsireegel — kumulatiivne INTER ignoreerida, ainult FINAL arvestada. Valideeritud C-01472 Pauguri/Graudiņi/Skaidiņas.
PR #54
2026-05-02
3-instantsi Eirik-pere — VS Eirik + CW Eirik + Chat Eirik. Crash-resistance, Supabase sünk kõigi vahel.
CLAUDE.md v1.4
2026-05-03
60 püsireegleid — PR #1..#60. VS_TASK_3 + harvester e-mail + FINAL/INTER lisatud.
🌲 Eirik — agent_messages
Realtime · igybaozqwiklxxcpwwkj
Laen sõnumeid…
Supabase Realtime ühendamine
to_agent: from: erki
Ctrl+K → otsing · Enter → saada · Shift+Enter → uus rida