ELSTAND Intelligence
Dokumentasi teknis ekosistem intelligence dan decision-intelligence layer ELVOID — dari konsep paling atas sampai implementasi teknis paling dalam.
Overview
ELSTAND Intelligence adalah ekosistem market-intelligence untuk crypto yang mengubah data makro, market, order flow, on-chain, dan berita menjadi evidence, reasoning, dan konteks keputusan yang bisa ditelusuri — bukan sekadar chart atau skor tanpa alasan di baliknya.
ELVOID adalah decision-intelligence layer di dalam ELSTAND — bagian yang mengubah evidence menjadi keputusan trading yang graded dan risk-aware. ELVOID bukan keseluruhan produk; ia adalah reasoning core dari platform yang juga menangani agregasi data, paper & live trading, membership, dan lapisan wallet/token on-chain (BSC Testnet).
| ELSTAND Intelligence | ELVOID | |
|---|---|---|
| Apa itu | Ecosystem / product surface | Decision-intelligence layer di dalamnya |
| Cakupan | Macro, market, order flow, Web3, external data, membership, wallet | Oracle pipeline, cognitive layer, evaluasi & learning |
| Output | Seluruh product surface (dashboard, journal, portfolio, wallet) | Satu OracleAssessment: side, grade, confidence, risk plan |
The Problem
Masalah utamanya bukan kekurangan data — justru sebaliknya.
Rantai kegagalan ini yang coba dipotong ELSTAND — bukan dengan mengejar signal accuracy setinggi mungkin, tapi dengan membuat setiap langkah (evidence → reasoning → decision → outcome → evaluation) terstruktur dan bisa ditelusuri balik ke sumbernya.
Intelligence Philosophy & Loop
Ini adalah Intelligence Loop ELSTAND — satu siklus tertutup, bukan pipeline satu arah. Outcome dari sebuah keputusan mengalir balik lewat evaluation menjadi input untuk reasoning berikutnya (lihat Learning Loop).
- Data → Evidence — data mentah dinormalisasi, ditag sumbernya, dengan fallback jujur kalau sumber tidak tersedia (weight 0, bukan nilai dikarang).
- Evidence → Intelligence — evidence disilangkan lintas sumber & timeframe untuk mencari confluence dan mendeteksi conflict.
- Intelligence → Reasoning — Oracle dan Cognitive Layer ELVOID mengubah intelligence jadi pembacaan graded yang bisa dijelaskan.
- Reasoning → Decision — side, grade, confidence, risk plan — satu keputusan kanonik, bisa ditelusuri balik ke evidence yang membentuknya.
- Decision → Outcome → Evaluation → Learning — apa yang benar-benar terjadi dinilai objektif, lalu dikembalikan sebagai konteks untuk reasoning masa depan.
Intelligence Ecosystem
Komponen yang benar-benar ada di repository, masing-masing menyumbang evidence ke ELVOID:
| Komponen | Tujuan | Input | Output |
|---|---|---|---|
| Macro Context | Konteks regime market secara luas | Alpha Vantage (sumber ekonomi primer); FRED (pendukung: DXY, M2), Fear & Greed, economic calendar | Tag bias/konteks makro |
| ELVOID Quant | Konteks harga, volume, derivatif | CoinGecko, Binance (spot/futures), GeckoTerminal | Input confluence |
| Order Flow | Pembacaan flow gaya footprint/CVD | Binance klines, order book, funding | Evidence bias flow |
| Intelligence Map | Agregasi cross-source | Semua sumber di atas | Permukaan evidence terpadu untuk ELVOID |
| External Intelligence | Berita dan sentimen | NewsAPI.org | Tag sentimen, flag rugpull "negative press" |
| Web3 Utility | Aktivitas on-chain | Alchemy (whale transfer), DefiLlama (stablecoin supply) | Evidence whale/liquidity |
| ELVOID Pro | Decision-intelligence layer | Semua evidence di atas | OracleAssessment graded |
| Evidence Ledger / Methodology | Transparansi metodologi & histori | — | Halaman /methodology, /ai-journal |
ELSTAND × ELVOID
Ecosystem / product surface — dashboard, macro, quant, order flow, Web3, membership, wallet.
Decision-intelligence layer di dalam ELSTAND — Oracle, Cognitive Layer, evaluasi & learning.
ELVOID tidak punya akses langsung ke user, wallet, atau membership — semua itu domain ELSTAND. ELVOID hanya menerima evidence yang sudah dinormalisasi dan mengembalikan satu OracleAssessment per permintaan. Batas ini konsisten di seluruh kode: modul Oracle/Cognitive tidak pernah mengimpor logic trading/wallet, dan sebaliknya.
System Iceberg
UI hanyalah permukaan sistem
System Architecture & Data Flow
Tiga project Supabase yang terpisah
Arsitektur data dipisah jadi tiga project Supabase independen, masing-masing dengan env var kredensialnya sendiri — bukan satu database besar yang dibagi-bagi secara logis:
| Project | Env var | Isi |
|---|---|---|
| Main | NEXT_PUBLIC_SUPABASE_URL | Auth, user, journal, wallet, membership, ai_signals, bn_* (Binance audit trail) |
| Market Data | DATA_SUPABASE_URL | Data market ter-cache (whale-tracker-schema.sql, data-engine-schema.sql) |
| ELVOID Learning | ELVOID_LEARNING_SUPABASE_URL | decision_experiences, failure patterns, adaptive constraints, autonomous runtime lock |
Alasan pemisahan: masing-masing project bisa di-scale dan direset secara independen. Learning DB secara eksplisit tidak punya foreign key SQL ke Main DB — source_signal_id hanyalah referensi logis ke ai_signals.id, karena foreign key lintas-project memang tidak mungkin di Postgres/Supabase.
ELVOID PRO Oracle Pipeline
Oracle adalah deterministic pipeline bertahap, bukan satu panggilan LLM. Setiap tahap adalah modul terpisah di lib/ai/oracle/, dan sebagian besar secara eksplisit didokumentasikan sebagai PURE / READ-ONLY — tidak fetch baru, tidak scoring baru, tidak mengubah keputusan yang sudah dibuat tahap sebelumnya.
Otoritas tunggal
gradeConfluence() (grading.ts) adalah satu-satunya sumber kebenaran untuk side/grade/confidence/riskStatus. Contradiction, Scenario, dan Arbitration semuanya membaca hasil ini dan menambah konteks — tidak satu pun boleh menghitung ulang atau menimpanya. Ini prinsip arsitektural yang ditegakkan di komentar kode setiap modul, bukan konvensi yang tidak tertulis.
Grade final: NO_TRADE | B+ | A | A+. A+ membutuhkan dominant score ≥ 35 dan minimal 3 cluster evidence independen — dan otomatis diturunkan (ceiling) kalau risk plan tidak tersedia (S/R protective level tidak ditemukan dari histori candle).
Endpoint: GET /api/elvoid-pro/oracle untuk satu symbol/timeframe, GET /api/elvoid-pro/insights untuk insight tambahan.
Evidence, Confluence, Conflict & Risk
Evidence & Confluence
- Setiap angka pada satu evidence factor berasal dari sesuatu yang benar-benar terukur di
OracleContext— tidak ada bobot hardcode karena "sinyal seharusnya ada". - Sumber yang tidak tersedia (
quality: "unavailable") selalu diberi weight 0 — tidak pernah diperlakukan sebagai vote netral atau default ke satu sisi. - Data proxy (mis. Liquidity Volume Map, atau Microstructure untuk symbol selain BTC) weight-nya dibatasi
PROXY_WEIGHT_CAP = 0.5— proxy read tidak pernah bisa mengalahkan skor orderbook/data real. - Confluence dihitung lintas sumber independen — grade
A+butuh minimal 3 cluster, bukan satu sinyal kuat sendirian.
Contradiction (Conflict)
Contradiction Classifier (Phase 7.6) adalah lapisan reklasifikasi, bukan detector baru — setiap entri di laporannya menelusuri balik ke deskripsi yang sudah dihasilkan modul lain (confluence.contradictions, mtf.ts, scenario.primary.opposingEvidence). Setiap kontradiksi ditandai genuineness-nya:
| Genuineness | Arti |
|---|---|
GENUINE | Kontradiksi nyata antar-evidence berkualitas real |
DATA_GAP | Setidaknya satu sisi evidence tidak berkualitas real — kontradiksi bisa jadi artefak data yang hilang |
SAME_CLUSTER | Kedua sisi berasal dari cluster evidence yang sama — bukan sinyal independen yang berlawanan |
Risk Plan
Risk plan (entry/SL/TP/R:R) memakai metodologi yang sama dengan AI Signal biasa — SL dari protective S/R terdekat + buffer ATR, TP dari opposing S/R terdekat atau fallback R-multiple tetap — dihitung dari candle history nyata. Kalau histori candle tidak cukup untuk menemukan level protective sama sekali, risk plan mengembalikan null dan grading otomatis menandai riskStatus: "unavailable", menolak grade A+.
Cognitive Layer
ELVOID Cognitive Layer (Phase 8.0.x) melakukan observation → hypothesis → conflict resolution di atas output Oracle yang sudah final.
- Observation (8.0.1) — strictly downstream/read-only: tidak pernah memutasi input, tidak pernah menghitung ulang hasil Phase 2-7.x, tidak melakukan network/database/LLM call apa pun. Input yang sama menghasilkan output yang sama persis (kecuali timestamp).
- Hypothesis Engine (8.0.3) — thin reframing layer di atas Scenario/Contradiction/Arbitration yang sudah dihitung; tidak pernah menurunkan ulang supporting/ opposing evidence atau confidence sendiri. Bahkan tidak mengimpor
OracleAssessmentsecara langsung. - Conflict Resolution (8.0.4) — pure reuse atas
contradictions.hasUnresolvedGenuineContradictiondanarbitration.alignment; tidak pernah memindai ulang evidence mentah atau membuat sistem confidence keduanya.
Kalau sebuah sumber evidence hilang, Cognitive Layer melaporkan state degraded/unavailable apa adanya — tidak pernah mengarang untuk menutupi celah data.
Decision Trace
Decision Traceability (Phase 8.2.1) saat ini adalah infrastruktur murni — bentuk tabel dan fungsi persist, mengikuti batas “capture only, decide nothing” yang sama seperti Phase 8.1.0. Fase ini belum memperkenalkan logic autonomous decision, wiring eksekusi, route, atau cron sendiri.
TraceSource) adalah literal single-value tersendiri, secara struktural belum bisa menerima baris AI_SIGNAL biasa — perluasan ke sana adalah fase terpisah di masa depan yang butuh persetujuan sendiri, bukan bagian dari fase ini.Autonomous Runtime
Orchestrator (Phase 8.2.9) menjalankan siklus Oracle → Cognitive → Decision per symbol watchlist tanpa aksi user, dipicu Vercel cron + heartbeat GitHub Actions setiap 15 menit. Orkestrator ini tidak menghitung apa pun sendiri — setiap fungsi scoring/grading/qualification/decision yang dipanggilnya adalah modul Phase 7/8.0-8.2.8 yang sudah ada dan tidak diubah.
| File | Peran |
|---|---|
| orchestrator.ts | Urutan langkah per siklus: evidence → validasi pre-entry → keputusan |
| batch.ts | Menjalankan siklus untuk seluruh watchlist symbol |
| lock.ts | Advisory lock single-row (Learning DB) — mencegah dua invocation overlap |
| dedup.ts | Mencegah duplikasi keputusan/snapshot untuk symbol yang sama |
| evaluationBacklog.ts | Antrean evaluasi outcome yang tertunda |
| learningRefresh.ts | Sequencing tiga fungsi recompute learning setelah batch (lihat Learning Loop) |
- Read-only status:
GET /api/elvoid-pro/autonomous/status(snapshot terbaru),GET /api/elvoid-pro/autonomous/snapshots(histori). - Execution:
POST /api/elvoid-pro/autonomous/tick(satu siklus),POST /api/elvoid-pro/execute-signal(eksekusi sinyal jadi order).
Outcome Evaluation
Decision Evaluation Engine (Phase 8.1.1) adalah fungsi pure & deterministic — nol call database/network/LLM/fetch, nol pembangkitan timestamp sendiri, nol randomness. Modulnya bahkan tidak mengimpor apa pun dari lib/ai/oracle/*, lib/ai/cognitive/*, lib/elvoid/*, atau modul eksekusi trading manapun — hanya bergantung pada satu DecisionExperienceRecord yang sudah dibekukan.
DecisionExperienceRecord pada satu waktu, hanya dari field yang sudah dibekukan Phase 8.1.0 saat insert.Learning Loop
IMPLEMENTED + RUNTIME EVIDENCE Seluruh rantai ini di-sequence oleh lib/ai/autonomousRuntime/learningRefresh.ts dalam urutan tetap: recomputeFailurePatterns() → recomputeAdaptiveConstraints() → recomputeConstraintValidations(), dijaga lock yang sama dengan batch trading. Tidak ada logic deteksi/generation/validasi baru di file ini — ia hanya memanggil tiga fungsi yang sudah ada, berurutan. Kegagalan di satu langkah menghentikan run tanpa menghapus snapshot sukses sebelumnya.
- Failure Pattern Detection — melaporkan frequency observation murni: menghitung berapa kali satu evidence tag muncul bersamaan dengan evaluasi outcome negatif, untuk satu source, di lebih dari satu hari kalender. Minimal
MIN_OCCURRENCE_COUNT = 5kejadian sebelum sebuah pattern dianggap kandidat. Tidak pernah menyatakan kausalitas. - Adaptive Constraint — dibangun dari kandidat failure pattern yang sudah lolos ambang di atas; tidak pernah menuliskan ulang atau melonggarkan
MIN_OCCURRENCE_COUNT/aturan spread temporal. Constraint bersifat advisory (menaikkan kehati-hatian) — tidak ada jalur yang langsung memblokir eksekusi otonom dari constraint ini. - Decision Memory Retrieval —
retrieveDecisionMemory()adalah fungsi pure (nol DB/network/LLM/randomness), dipanggil live setiap cycle di orchestrator sebelum tahap qualification/decision. Sinyal memory negatif membuat status keputusanCONFLICTED, yang langsung berujung REJECT — tidak pernah menguatkan EXECUTE, selalu fail-safe ke arah WAIT/REJECT. Retrieval ini dan klasifikasi lifecycle pembelajaran (dipanggil setiap cycle) berstatus IMPLEMENTED + RUNTIME EVIDENCE — bukti runtime diamati di dashboard AI Performance (dilaporkan; tidak tersimpan di repository). Yang masih EXPERIMENTAL adalah rantai self-improving di luar learning loop ini — lihat Controlled Self-Evolution.
Controlled Self-Evolution
IMPLEMENTEDPARTIALLY VERIFIED Komponen 8.6.1–8.6.6 sudah ada di source dan diuji fixture offline. Secara end-to-end fase ini EXPERIMENTAL: satu siklus evolusi penuh dalam satu runtime kontinu belum terbukti. Output 8.6.1–8.6.6 berupa catatan dan record, bukan kode — fase ini tidak mengubah keputusan trading hari ini.
| Label | Komponen (anchor di source) | Status |
|---|---|---|
| 8.6.1 | Novelty Detection + Self Performance Monitor — rule-based, tanpa embedding/LLM (lib/ai/noveltyDetection, selfPerformance) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.2 | Cognitive Gap Detection — 6 kategori, min. 5 kejadian per gap; P1 menambah population gap terpisah (lib/ai/cognitiveGap) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.3 | Reasoning Gap + Evolution Need — gate NO_EVOLUTION_NEEDED / INSUFFICIENT_EVIDENCE / MONITOR / EVOLUTION_WARRANTED (lib/ai/reasoningGap, evolutionNeed) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.4 | Evolution Proposal — template tetap per kategori, tanpa LLM; Self-Evaluation Summary (lib/ai/evolutionProposal, selfEvaluation) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.5 | Evolution Candidate + Replay — replikasi split-history (paruh lama vs baru), bukan eksekusi counterfactual (lib/ai/evolutionCandidate) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.6 | Validation + Regression Guard — 7 gate tetap, record append-only (lib/ai/evolutionValidation) | IMPLEMENTEDPARTIALLY VERIFIED |
| 8.6.7 | Human Approval via Telegram — satu approver (ID numerik), idempoten (lib/ai/evolutionApproval) | IMPLEMENTED + RUNTIME EVIDENCE |
| 8.6.7 | Change Artifact → Patch Generation + scopeGuard → CI regression → otorisasi manusia → merge/deploy (code path) | IMPLEMENTEDEXPERIMENTAL |
| — | Evaluasi pasca-deployment / feedback loop evolusi | ROADMAPNOT VERIFIED |
| 8.7+ | Adaptive / Collective Intelligence — konsep, belum ada kode | ROADMAP |
8.6.7 — Controlled Self-Improvement / Self-Coding / Self-Evolution
controlPolicy.yaml memberi label MERGE_DEPLOY: autonomous, sementara daftar neverAutonomous memuat production_merge dan production_deploy; keduanya dicatat apa adanya dan tidak direkonsiliasi di file itu. Pembacaan yang tepat: mechanically executable after explicit human authorization — bukan fully autonomous production deployment.- Batasan historis. Sebelum commit
7e12508(2026-09-28), merge + deploy dapat terjadi tepat setelah code generation. Gate CI, otorisasi manusia kedua, dan trigger database diperketat setelah itu; halaman ini menjelaskan model saat ini, bukan pipeline awal. - Label “Phase 9”. Identifier
phase9,scripts/phase9,elvoid/phase9/*dan workflowphase9-*adalah label implementasi historis untuk 8.6.7. Tidak ada Phase 9 di roadmap; identifier tidak diubah. - Cakupan patch. Template proposal saat ini hanya menyebut empat file sumber; hanya dua kategori gap yang menghasilkan scope patch yang tidak masuk denylist.
- Verifikasi. Fixture offline mencakup approval (125 PASS), artifact (21), coding (11), dan git/pipeline (12); fixture jalur otorisasi/CI-gate BLOCKED offline (butuh
js-yaml). Verifikasi produksi sebuah evolusi NOT VERIFIED; E2E evolusi penuh belum terbukti.
Detail teknis: docs/ELVOID_COGNITIVE_LAYER.md · roadmap & crosswalk: CHANGES.md.
Data Sources
| Source | Digunakan untuk | API key |
|---|---|---|
| CoinGecko | Data market, harga, market cap, perubahan 1h/24h/7d | Tidak |
| Binance Futures | Funding rate, open interest, OHLCV candle | Tidak |
| Alternative.me | Fear & Greed index | Tidak |
| GeckoTerminal | Volume DEX, liquidity & FDV (ETH, BSC, Solana, Base, Arbitrum) | Tidak |
| DefiLlama | Overview supply stablecoin | Tidak |
| Alpha Vantage | Observasi indikator ekonomi — sumber ekonomi PRIMER | Ya (ALPHA_VANTAGE_API_KEY) |
| FRED (St. Louis Fed) | Sumber pendukung: DXY (proxy Broad USD Index) & M2 money supply | Ya — gratis |
| Alchemy | Feed whale transfer (watchlist ERC-20 terkurasi) | Ya — free tier |
| NewsAPI.org | Feed berita, sentimen, flag "negative press" rugpull | Ya — free tier |
| ForexFactory (calendar feed) | Economic calendar (event FOMC/CPI/NFP) | Tidak |
| Binance Spot/Futures (Testnet/Live) | Live trading — saldo, posisi, order, eksekusi | Ya — free testnet key |
Hierarki data ekonomi: Alpha Vantage = sumber primer; FRED, ForexFactory, dan sumber lain = pendukung yang boleh memperkaya atau mengonfirmasi, tidak pernah menggantikan atau mengungguli data primer. Pembacaan primer yang hilang, basi, atau tidak berurutan membuat indikator itu UNAVAILABLE (fail-closed).
Database Architecture
Detail penuh sudah dibahas di System Architecture & Data Flow. Ringkasan tabel penting:
| Tabel | Project | Catatan |
|---|---|---|
| ai_signals | Main | Baris dibagi AI Signal biasa dan ELVOID_PRO_ORACLE (source terlabel), globally unique ID |
| ai_journal, paper_wallet, ai_statistics | Main | Journal paper trading, statistik, wallet simulasi |
| bn_credentials, bn_orders_log, bn_position_meta, bn_emergency_stop | Main | Audit trail & kredensial Binance — lihat bagian Binance Integration |
| decision_experiences | ELVOID Learning | Snapshot keputusan, frozen at insert, source_signal_id = referensi logis (tanpa FK) ke ai_signals.id |
| autonomous_runtime_lock | ELVOID Learning | Advisory lock single-row untuk mencegah batch/learning-refresh overlap |
RLS (Row Level Security) diaktifkan pada seluruh tabel sensitif dengan nol public policy — semua akses lewat service-role key sisi server. Pola ini konsisten di Main DB maupun Learning DB.
API Documentation
Representatif, bukan exhaustive — lihat app/api/ di repository
| Method | Path | Tujuan |
|---|---|---|
| GET | /api/elvoid-pro/oracle | Jalankan pipeline Oracle → Cognitive untuk satu symbol |
| GET | /api/elvoid-pro/autonomous/status | Baca snapshot autonomous-runtime terbaru |
| GET | /api/elvoid-pro/autonomous/snapshots | Baca histori snapshot autonomous |
| GET / POST | /api/elvoid-pro/autonomous/tick | Baca status tick / jalankan satu siklus autonomous |
| POST | /api/elvoid-pro/execute-signal | Eksekusi sinyal menjadi order |
| GET | /api/elvoid-pro/insights | Baca insight tambahan Oracle |
| GET | /api/elvoid-pro/runtime-events | Baca event runtime |
| GET / POST | /api/ai-signals | Baca / buat sinyal AI |
| POST | /api/ai-signals/scan | Scan watchlist untuk kandidat sinyal |
| POST | /api/binance/order | Tempatkan order live/testnet |
| DELETE | /api/binance/order | Batalkan order |
| GET | /api/ai-performance/cognitive | Baca state/performa cognitive layer |
| POST | /api/bug-hunter/report | Submit laporan bug ke BugBountyEscrow |
| GET | /api/leaderboard | Baca leaderboard |
Method dan path dikutip langsung dari handler route (app/api/**/route.ts). Schema request/response detail di luar tabel ini: Belum dapat diverifikasi dari implementasi saat ini.
Binance Integration
Seluruh integrasi Binance hidup di lib/binance/ — terpisah dari Oracle/Cognitive Layer secara arsitektural (Oracle tidak pernah mengeksekusi order sendiri; eksekusi lewat lib/elvoid/paperTrader.ts atau modul di bawah ini).
| File | Peran |
|---|---|
| spotClient.ts / futuresClient.ts | REST client untuk Binance Spot & Futures |
| signer.ts / restClient.ts | Signing request HMAC & wrapper REST bersama |
| credentials.ts / crypto.ts | Penyimpanan & dekripsi API key exchange (AES-256-GCM) |
| tradingEngine.ts / autoTrader.ts | Engine eksekusi order & auto-trader berbasis sinyal |
| riskManager.ts / orderGuard.ts | Validasi risk sebelum order, guard idempotency/cooldown |
| exitConditions.ts | Logic exit posisi (SL/TP/manual) |
| newsGate.ts | Gate berbasis berita sebelum entry |
| signalBridge.ts | Jembatan dari sinyal AI/Oracle ke order Binance |
| marketData.ts / wsUrl.ts | Data market & koneksi WebSocket Binance |
| db.ts | Persistensi audit trail (bn_orders_log, bn_position_meta, dll) |
db.ts secara eksplisit graceful-degrade: setiap fungsi mengecek koneksi Supabase dulu sebelum menulis — Trading Engine tetap bisa menempatkan order nyata di Binance meski Supabase tidak terkonfigurasi, hanya saja sistem “tidak ingat kenapa” antar-request, dan AI Auto Trader melaporkan dirinya unconfigured sampai Supabase disiapkan.Keamanan order: setiap order punya client order ID unik, cooldown singkat mencegah double-submit, dan lock in-process per symbol (orderGuard.ts).
Web3 / BNB Chain
ELSTAND memakai BNB Smart Chain Testnet (chainId 97) untuk ekonomi token dan gating membership on-chain.
| Contract | Address | Network | Purpose |
|---|---|---|---|
| ELS Token | 0x4AeA3938eb5c5A594410Bf67c2F2107970901a4D | BSC Testnet (97) | Core ERC-20, fixed supply 1.000.000.000 |
| Testnet Faucet | 0x3a0664300EA06Ba7c01EDC9951c1b04BE9101C82 | BSC Testnet (97) | Alur klaim faucet |
| Reward Distributor | 0xdF06b4C5a77a9fbFB2400481e159fD0e223db739 | BSC Testnet (97) | Pipeline swap → verify → claim reward |
| BugBountyEscrow | 0x305f5450042eD126Aa08e0E2C9740F46B1f3b7DB | BSC Testnet (97) | Submission/claim Bug Hunter |
| ELSTestnetSwap | 0x5EB87767c2861eD345E068bbACB07d73C014751B | BSC Testnet (97) | Contract swap |
| ELSTestnetSell | 0x97A8EE8157C1fe62124c5fBD475b1282cB248D34 | BSC Testnet (97) | Contract sell (ELS → tBNB) |
| ELSTestnetPayment | 0x576bba3714983B59d5440C8f6Bb7Dd048cf9628b | BSC Testnet (97) | Satu-satunya processor membership PRO + AI Energy |
Address di atas dikutip verbatim dari CONTRACTS.md pada repository. Belum ada deployment mainnet — status mainnet: ROADMAP.
Security & Data Integrity
- IMPLEMENTED Autentikasi Supabase Auth (Google OAuth), ditegakkan di
middleware.tsuntuk seluruh route terproteksi — request tanpa autentikasi diarahkan ke/login. - IMPLEMENTED Row Level Security aktif di tabel sensitif, nol public policy — akses butuh service role key sisi server.
- IMPLEMENTED Exchange API key: env var server-only secara default, atau tersimpan di database terenkripsi AES-256-GCM (
ENCRYPTION_KEY, server-only). - IMPLEMENTED Keamanan order: client order ID unik, cooldown double-submit, lock in-process per symbol.
- DESIGN PRINCIPLE No fabricated data — diterapkan konsisten dari Oracle sampai Binance client: sumber gagal → fallback jujur, bukan nilai dikarang.
- DESIGN PRINCIPLE Fail-safe over fail-strong — lock/memory/evidence yang tidak bisa diverifikasi selalu diarahkan ke jalur paling aman (lihat bagian selanjutnya), bukan diasumsikan aman.
Failure & Degraded-State Behavior
Prinsip konsisten di seluruh codebase: kalau sesuatu tidak bisa diverifikasi, sistem jujur soal itu — bukan mengarang nilai pengganti. Beberapa contoh konkret dari kode aktual:
| Situasi | Perilaku |
|---|---|
| Evidence source tidak tersedia | Weight 0, quality "unavailable" — tidak pernah jadi vote netral atau default ke satu sisi (confluence.ts) |
| Risk plan tak bisa dihitung (histori candle kurang) | Fungsi mengembalikan null → riskStatus "unavailable" → grade A+ ditolak otomatis |
| Autonomous runtime lock tidak bisa diverifikasi | Fails OPEN — dianggap "belum dikonfigurasi, lanjutkan", bukan "blokir semua selamanya" (lock.ts) |
| Supabase (main atau learning) tidak terkonfigurasi | Setiap fungsi persistensi mengecek koneksi dulu — Binance tetap bisa eksekusi order, hanya kehilangan memory/audit trail antar-request |
| Sinyal Decision Memory negatif | Status keputusan CONFLICTED → REJECT — tidak pernah menguatkan EXECUTE, selalu fail-safe ke WAIT/REJECT |
| Learning refresh gagal di satu langkah | Run dihentikan; snapshot sukses sebelumnya tidak dihapus |
| Kontradiksi yang melibatkan data non-real | Ditandai genuineness DATA_GAP, bukan otomatis dianggap GENUINE |
Repository Structure
app/ → routes & UI (App Router) app/api/ → seluruh API route handler components/ → komponen UI React lib/ai/oracle/ → Oracle pipeline (confluence, contradiction, arbitration, scenario, risk, execute) lib/ai/cognitive/ → Cognitive Layer (observation, hypothesis, conflict) lib/ai/decisionTrace/ → infrastruktur trace keputusan (Phase 8.2.1) lib/ai/decisionEvaluation/ → evaluasi outcome per-keputusan (pure) lib/ai/failurePatterns/ → deteksi pola kegagalan (frequency-only) lib/ai/adaptiveConstraint/ → generator constraint advisory lib/ai/learningValidation/ → validasi constraint lib/ai/decisionMemory/ → retrieval memory keputusan (pure filter) lib/ai/autonomousRuntime/ → orchestrator, batch, lock, dedup, learning refresh lib/binance/ → integrasi Binance (client, trading engine, risk, guard) lib/elvoid/ → paper trader & helper ELVOID non-Oracle supabase/ → schema Main DB supabase/learning/ → schema ELVOID Learning DB contracts/ → source smart contract CONTRACTS.md → daftar address contract terdeploy README.md → overview & status implementasi CHANGES.md → roadmap panjang + riwayat evolusi engineering docs/ELVOID_COGNITIVE_LAYER.md → deep-dive teknis Cognitive Layer docs/changelog/ENGINEERING_DELTA_LOG.md → rekaman historis engineering per fase
Engineering Principles
- No fabricated data
- Evidence-first reasoning
- Traceability
- Risk-aware decision
- Explicit uncertainty
- Separation of concerns
- Deterministic decision pipeline
- Satu otoritas keputusan (gradeConfluence)
- LLM sebagai reasoning/narrative layer
- Pure/read-only sebagai default untuk lapisan downstream
- Fail-safe, bukan fail-strong
- Controlled learning, bukan self-modification bebas
- Failure isolation antar-langkah
- Human approval untuk evolusi high-risk
Implementation Status
- IMPLEMENTED kode ada dan terjangkau dari jalur runtime atau dapat dipanggil — tidak menyatakan kebenaran.
- IMPLEMENTED + RUNTIME EVIDENCE implemented, dan bukti runtime diamati di dashboard AI Performance (dilaporkan pemilik; tidak tersimpan di repository) — sengaja lebih lemah dari VERIFIED.
- PARTIALLY VERIFIED sebagian perilaku terbukti dari bukti yang dapat direproduksi (umumnya fixture offline).
- EXPERIMENTAL implemented, tetapi E2E dalam satu runtime kontinu belum terbukti.
- ROADMAP konsep/rencana, belum ada kode yang memadai.
- BLOCKED pemeriksaan tidak dapat dijalankan (dependency tidak tersedia offline) — bukan pass dan bukan fail.
- NOT VERIFIED belum ada bukti. VERIFIED hanya bila bukti dapat direproduksi dari repository.
| Komponen | Status |
|---|---|
| Agregasi data Macro / Market / Order Flow / Web3 / External | IMPLEMENTED + RUNTIME EVIDENCE |
| ELVOID PRO Oracle pipeline (confluence → grading → contradiction → scenario → arbitration → risk) | IMPLEMENTED + RUNTIME EVIDENCE |
| Cognitive Layer (observation, hypothesis, conflict resolution) | IMPLEMENTEDPARTIALLY VERIFIED |
| Decision Trace, Cognitive Trace, replay, causal graph, attribution (infrastruktur traceability) | IMPLEMENTEDPARTIALLY VERIFIED |
| Decision Qualification → Pre-entry Validation → Autonomous Decision (EXECUTE / WAIT / REJECT) | IMPLEMENTED + RUNTIME EVIDENCE |
| Decision Outcome Capture + Learning DB terisolasi | IMPLEMENTED + RUNTIME EVIDENCE |
| Decision Evaluation / Failure Pattern / Adaptive Constraint / Learning Validation | IMPLEMENTED + RUNTIME EVIDENCE |
| Decision Memory Retrieval (live per-cycle) | IMPLEMENTED + RUNTIME EVIDENCE |
| Autonomous background runtime (cron + heartbeat, lock, dedup) | IMPLEMENTED + RUNTIME EVIDENCE |
| Paper trading (journal, statistik) | IMPLEMENTED |
| Live trading via Binance Spot/Futures | IMPLEMENTED |
| Membership on-chain via ELSTestnetPayment | IMPLEMENTED |
| ELS token, faucet, reward distributor, Bug Hunter escrow (BSC Testnet) | IMPLEMENTED |
| LLM narrative pass di atas keputusan final | IMPLEMENTED |
| Alpha Vantage sebagai sumber ekonomi primer (FRED pendukung) + macro-ingestion lock | IMPLEMENTED |
| Community Intelligence (8.4.4) — belum ada sumber terintegrasi | EXPERIMENTAL |
| Controlled Evolution 8.6.1–8.6.6 (komponen dan gate) | IMPLEMENTEDPARTIALLY VERIFIED |
| Controlled Evolution end-to-end (satu siklus penuh) | EXPERIMENTAL |
| 8.6.7 Human Approval (Telegram) | IMPLEMENTED + RUNTIME EVIDENCE |
| 8.6.7 Self-Coding: change artifact, patch generation + scopeGuard, CI regression, otorisasi manusia, merge/deploy | IMPLEMENTEDEXPERIMENTAL |
| Verifikasi produksi sebuah evolusi | NOT VERIFIED |
| Evaluasi pasca-deployment / feedback loop evolusi | ROADMAPNOT VERIFIED |
| 8.7+ Adaptive / Collective Intelligence | ROADMAP |
| Mainnet deployment | ROADMAP |
| Cross-chain di luar BNB Smart Chain | ROADMAP |
Fixture offline: 66 file · 61 bersih · 0 FAIL · 1.488 baris PASS · 5 BLOCKED (4 butuh @supabase/supabase-js, 1 butuh js-yaml; termasuk controlled-autonomy-and-economic dan autonomous-runtime). Fixture offline ≠ E2E produksi, dan BLOCKED tidak pernah dihitung sebagai PASS. Detail dan matriks verifikasi ada di deep-dive Cognitive Layer; status mengikuti legenda di CHANGES.md. Sejak sinkronisasi ini, README dan halaman ini memakai status Decision Memory yang sama (lihat Learning Loop).
Glossary
| Istilah | Arti |
|---|---|
| Oracle | Deterministic pipeline ELVOID yang mengubah evidence jadi OracleAssessment graded |
| OracleAssessment | Output kanonik Oracle: side, grade, confidence, riskStatus |
| Confluence | Kesepakatan evidence LONG/SHORT lintas sumber independen |
| Contradiction | Kontradiksi antar-evidence, ditandai genuineness GENUINE / DATA_GAP / SAME_CLUSTER |
| Arbitration | Anotasi seberapa kuat konteks sekitar mendukung keputusan yang sudah dibuat — read-only |
| Scenario (Primary/Alternative) | Narasi pasar paling plausible mengikuti side yang sudah diputuskan grading |
| Cognitive Layer | Lapisan meta downstream yang menilai koherensi reasoning — bukan decision engine kedua |
| Decision Trace | Infrastruktur jejak audit keputusan, capture-only |
| Autonomous Runtime | Sistem yang menjalankan siklus Oracle→Decision otomatis via cron |
| Decision Experience | Snapshot satu keputusan yang dibekukan di Learning DB |
| Failure Pattern | Observasi frekuensi murni: evidence tag yang sering berbarengan dengan outcome negatif |
| Adaptive Constraint | Aturan advisory hasil failure pattern — menaikkan kehati-hatian, tidak memblokir eksekusi |
| Decision Memory | Riwayat keputusan yang di-retrieve live sebelum keputusan baru dibuat |
| Grade (NO_TRADE/B+/A/A+) | Skala kualitas sinyal Oracle; A+ butuh dominant score ≥35 dan ≥3 cluster |
| RLS (Row Level Security) | Kontrol akses baris Postgres — di sini diaktifkan tanpa public policy sama sekali |
| 8.6.7 | Controlled Self-Improvement / Self-Coding / Self-Evolution. Identifier kode 'phase9' (scripts/phase9, elvoid/phase9/*, workflow phase9-*) adalah label historisnya; tidak ada Phase 9 di roadmap |
| Change Artifact | Rekaman terkontrol (P4) yang menjadi masukan patch generation; dibuat hanya dari validation record VALID dengan approval hash yang cocok |
| scopeGuard | Pemeriksa murni untuk patch hasil generate: path harus sama persis dengan affectedFiles; denylist path dan konten menang atas allowlist |
| ELS | Token ERC-20 native ekosistem ELSTAND di BNB Smart Chain Testnet |
Changelog & Resources
CHANGES.md pada repository kini adalah dokumentasi roadmap panjang dan riwayat evolusi engineering (crosswalk tiga sistem penamaan, status per fase, appendix UI/UX). Changelog per fase yang lama dipulihkan sebagai rekaman historis.
- → CHANGES.md — roadmap panjang + engineering evolution
- → docs/ELVOID_COGNITIVE_LAYER.md — deep-dive teknis Cognitive Layer, E2E dan verifikasi
- → docs/changelog/ENGINEERING_DELTA_LOG.md — rekaman historis engineering per fase
- →
CONTRACTS.md— daftar address contract terdeploy