PROJECT CONTROL CENTER / SINGLE SOURCE OF TRUTH

Oat Trading Copilot

Local-first research and decision system; Oat is the only execution layer in V1.

สถานะปัจจุบันLive shadow evidence collection — 1/10 eligible sessionsUpdated 2026-07-31T16:27:27+07:00 by นพ
NOW / FIRST PRIORITY

ขั้นที่กำลังทำ: P5.5 — Live Shadow Evidence Collection

P9 operational pipeline is complete. The remaining gate is 10 chronological COMPLETE-only local shadow sessions before any protected workflow decision.

1/10 done
  1. P5.5.1เสร็จแล้ว

    Record eligible COMPLETE session

    CRWV 2026-07-30 appended through the explicit P7 runner; journal is local and append-only.

  2. P5.5.2ACTIVE

    Accumulate nine more chronological sessions

    Run explicitly after each completed US session. PARTIAL/UNAVAILABLE/duplicate/out-of-order data does not count.

  3. ?
    P5.5.3รอพี่โอ๊ต

    Policy gate review

    After 10 eligible sessions, retain daily-stock-brief unless Oat explicitly approves any protected-workflow change.

ROADMAP

Phase map

P0เสร็จแล้ว

Product Charter & Scope

Lock the V1 user, decision model, scope, non-goals, and success criteria before code exists.

เงื่อนไขผ่าน phaseComplete: V1 specification v1.0 approved and saved.
P1เสร็จแล้ว

Portfolio Ledger & Audit Trail

Create a reconciled source of truth for holdings, cost bases, cash, and trade history.

เงื่อนไขผ่าน phaseComplete: P1 Ledger Contract v1.0.0 frozen after independent aggregate specification/privacy and financial/code-quality audits; final suite 189 passed.
P2เสร็จแล้ว

Deterministic Market Scanner

Implement transparent Stage, MA, RSI, volume, relative-strength, and price-range calculations.

เงื่อนไขผ่าน phaseComplete: P2 Scanner Contract v1.0.0 frozen after aggregate audits; final suite 446 passed.
P3เสร็จแล้ว

Setup & Portfolio Risk Engine

Generate explainable setups with entry, stop, target, allocation cap, correlation, and concentration checks.

เงื่อนไขผ่าน phaseComplete: P3 Risk Contract v1.0.0 frozen after aggregate audits; final suite 689 passed.
P4เสร็จแล้ว

Daily Report & Decision Journal

Publish the daily post-close report and record every system recommendation and Oat decision.

เงื่อนไขผ่าน phaseComplete: P4 Reporting & Decision Journal Contract v1.0.0 frozen after aggregate audits; final suite 1026 passed.
P5กำลังทำ

Paper Evaluation

Evaluate frozen rules chronologically with costs, slippage assumptions, benchmarks, and bias checks.

เงื่อนไขผ่าน phaseImplementation complete except P5.5 policy gate: >=10 real chronological market-session shadow records plus explicit Oat approval; daily-stock-brief stays unchanged.
P6เสร็จแล้ว

yfinance Historical Data Intake

Bring yfinance historical daily EOD data through a provider-isolated, raw/unadjusted, provenance-preserving boundary for chronological replay.

เงื่อนไขผ่าน phaseComplete: isolated raw/unadjusted yfinance intake, XNYS calendar checks, and controlled live smoke passed; no protected workflow change.
P7เสร็จแล้ว

Local Shadow-Run Workflow

Create an explicit local-only workflow to record real chronological shadow sessions from validated market data without changing daily-stock-brief.

เงื่อนไขผ่าน phaseComplete: explicit local-only shadow workflow passed aggregate audit. >=10 real chronological sessions plus explicit Oat approval still required before any protected workflow replacement.
P8เสร็จแล้ว

Portfolio Monitor UI

Provide a mobile-first static dashboard of explicit local portfolio snapshots and validated completed EOD data.

เงื่อนไขผ่าน phaseComplete: mobile dashboard, validated completed-EOD refresh, append-only local EOD history, and published history view; no broker or automatic trading.
P9เสร็จแล้ว

Daily Snapshot Operations

Make explicit local completed-session refresh observable and repeatable without modifying the protected daily-stock-brief.

เงื่อนไขผ่าน phaseManual refresh, history recording, rendering and publish operations are composed and verified with failure visibility.
OAT INPUT REQUIRED

Decision queue

D1DECIDED

Initial universe locked: current Oat holdings + a fixed 30–50 ticker watchlist.

ผลต่อระบบ: The watchlist will be versioned; additions/removals require a dated reason to prevent hindsight bias. P0.6 is next.

D2DECIDED

Portfolio input locked: bootstrap from Oat-confirmed portfolio records already held by Nop.

ผลต่อระบบ: No duplicate data entry. The future ledger will retain source labels and treat broker reconciliation as a separate later step. P0.7 is next.

D3DECIDED

Delivery locked: 21:30 Telegram report plus local dashboard, with the existing daily-stock-brief preserved as baseline.

ผลต่อระบบ: New Copilot output runs in local shadow mode first; it cannot replace, pause, or modify the existing cron without explicit Oat approval after parity review.

D4DECIDED

Schedule locked: retain the existing daily-stock-brief schedule, weekdays at 21:30 Thailand time.

ผลต่อระบบ: Copilot shadow reports align to the same post-close cadence for apples-to-apples comparison.

D5DECIDED

Risk warning policy locked: position 30%/40%, top-three 65%/75%, drawdown 12%/20%, and high-correlation concentration alert.

ผลต่อระบบ: The system will surface concentration and regime risk with evidence but will never force a sale. P0.9 is next.

D6DECIDED

V1 operating boundary locked: long-only shares; no shorting, broker connection, order execution, or options module.

ผลต่อระบบ: Scope is now safe and finite. P0.5 — initial stock universe — is the next decision.

D7รอการตัดสินใจ

What proves V1 is worthwhile: time saved, decision discipline, benchmark performance, or all three?

ผลต่อระบบ: Defines paper-evaluation success criteria.

D8DECIDED

Historical EOD provider policy: yfinance/Yahoo Finance is the first provider, restricted to raw/unadjusted daily OHLCV; dividends and splits remain separate provenance; no protected cron modification.

ผลต่อระบบ: P6 may build an isolated provider adapter and provenance-preserving local intake. Historical replay is supplementary and cannot satisfy P5.5 live-shadow evidence alone.

AUDIT TRAIL

Recent updates

  • P9 closed: explicit daily snapshot pipeline, sanitized operation evidence, CRWV COMPLETE-only shadow command, published Shadow Monitor, and cross-page navigation passed full pytest suite 1899. P5.5 live shadow evidence is active at 1/10 sessions; daily-stock-brief remains unchanged.
  • P9.2 accepted: append-only sanitized operation evidence passed RED→GREEN contracts, a live duplicate-session failure evidence probe, and full pytest suite 1897 passed. P9.3 shadow-evidence alignment is active; daily-stock-brief remains unchanged.
  • P9.1 accepted: explicit daily snapshot pipeline passed focused RED→GREEN checks, safe duplicate-stop probe, real 2026-07-30 COMPLETE run, Cloudflare deploy, and full pytest suite 1895 passed. P9.2 operational evidence/failure reporting is active; daily-stock-brief remains unchanged.
  • P7 closed: aggregate safety/readiness audit approved the explicit local-only shadow workflow. P7 maintains COMPLETE-only eligibility and chronological append/replay; daily-stock-brief remains unchanged. P8 Shadow Monitor UI is next.
  • P7.3 accepted: read-only local shadow journal chronology/replay and readiness summary passed review. Final pytest suite 1835 passed. P7.4 aggregate safety/readiness audit active; daily-stock-brief unchanged.
  • P7.2 accepted: explicit local single-process shadow runner passed reviews and local safety hardening. Final pytest suite 1755 passed. P7.3 chronological accumulation/replay verification active; daily-stock-brief unchanged.
  • P7.1 accepted: COMPLETE-only shadow-session observation builder passed reviews and DST/error-quality hardening. Final pytest suite 1682 passed. P7.2 local manual runner active; daily-stock-brief unchanged.
  • P6 closed: yfinance raw historical-EOD intake and XNYS session validation passed aggregate provider/safety audits. Controlled live AAPL smoke passed; final pytest suite 1585 passed. P7 local shadow-run workflow opened; daily-stock-brief remains protected and unchanged.
  • P6.3 accepted: isolated yfinance raw fetch passed reviews and controlled live AAPL historical smoke (2026-07-20 through 2026-07-24) returned COMPLETE with five XNYS bars and no missing sessions. Final pytest suite 1585 passed; daily-stock-brief unchanged.
  • P6.2 accepted: deterministic XNYS calendar passed review after holiday-date corrections, strict tuple/boundary hardening, and direct dependency declarations; final pytest suite 1455 passed. P6.3 isolated yfinance fetch and replay intake verification active; daily-stock-brief unchanged.
  • P6.1 accepted: raw/unadjusted yfinance-frame normalization and provenance passed final review after weekend/holiday gap correction; final pytest suite 1378 passed. P6.2 isolated fetch and NYSE session-calendar boundary active; daily-stock-brief unchanged.
  • P6 opened by Oat approval: yfinance/Yahoo Finance selected as first historical EOD provider, limited to raw/unadjusted daily OHLCV with separate dividends/splits provenance. Existing daily-stock-brief remains protected and unchanged.
  • P5.4 accepted: aggregate chronology/replay/readiness audits approved after strict replay evidence and subclass hardening; final pytest suite 1273 passed. P5.5 remains policy-blocked pending >=10 real market-session shadow records and explicit Oat approval; daily-stock-brief unchanged.
  • P5.3 accepted: local shadow-readiness summary passed safety/quality gates and consistency hardening; final pytest suite 1242 passed. P5.4 aggregate audit active; daily-stock-brief remains protected and unchanged.
  • P5.2 accepted: deterministic chronological paper replay evidence bundle passed spec/quality gates and cleanup; final pytest suite 1172 passed. P5.3 local shadow-run evidence summary contract active; protected daily-stock-brief unchanged.
  • P5.1 accepted: chronological paper-run contracts passed spec/quality gates after observed-timestamp monotonicity hardening; final pytest suite 1109 passed. P5.2 deterministic replay evidence-bundle contract active.
  • P4 closed and frozen: P4 Reporting & Decision Journal Contract v1.0.0 accepted after aggregate audits; final pytest suite 1026 passed. P5 chronological paper evaluation and shadow readiness opened; protected daily-stock-brief remains unchanged.
  • P4.3 accepted: append-only explicit-path JSONL journal storage/replay passed safety and quality gates after Windows LF portability and CRLF preservation hardening; final pytest suite 1026 passed. P4.4 aggregate audit active.
  • P4.2 accepted: deterministic injection-safe daily Markdown renderer passed spec and final quality gates after # escaping/spacing hardening; final pytest suite 892 passed. P4.3 append-only local journal persistence/replay contract active.
  • P4.1 accepted: immutable decision journal record passed spec/quality gates with timezone edge-case regression; final pytest suite 785 passed. P4.2 deterministic local report contract active.
  • P3 closed and frozen: P3 Risk Contract v1.0.0 accepted after aggregate audits; final pytest suite 689 passed. P4 Daily Report & Decision Journal opened with immutable source-linked journal contract.
  • P3.3 accepted: concentration warnings passed spec and final quality gates after timeout-repair and validation hardening; final pytest suite 689 passed. P3.4 aggregate risk-engine audit active.
  • P3.2 accepted: setup proposal completeness contract passed spec and final quality gates after action and price/cap hardening; final pytest suite 593 passed. P3.3 warning-only portfolio concentration contract active.
  • P3.1 accepted: deterministic add-risk arithmetic passed spec and final quality gates after output type-safety hardening; final pytest suite 511 passed. P3.2 action-completeness contract active.
  • P2 closed and frozen: P2 Scanner Contract v1.0.0 accepted after aggregate audits; final suite 446 passed. P3 setup and risk engine opened with RED-only risk arithmetic contract.
  • P2.4 accepted: explainable stage-label classifier passed spec and quality gates after hash/type cleanup; final pytest suite 446 passed. P2.5 aggregate scanner audit is active.
  • P2.3 accepted: deterministic indicators passed independent spec and final quality gates after type-annotation hardening; final pytest suite 375 passed. P2.4 explainable Stage-label contract is active.
  • P2.3 accepted: 86 RED-only synthetic deterministic-indicator contract tests passed parent verification and independent review after removal of a faulty permanent module-absence gate. Indicator implementation and Stage-label contract work are active.
  • P2.2 accepted: local validated market snapshot model passed independent spec and quality gates after strict date/timestamp repair; final pytest suite 289 passed. P2.3 deterministic indicator contracts are active using synthetic fixed snapshots only.
  • P2.1 accepted: 89 RED-only provider-agnostic market snapshot contract tests passed parent and independent RED review. P2.2 local validation-model implementation is active; no external provider is selected or called.
  • P1 closed: P1 Ledger Contract v1.0.0 frozen after final aggregate audits; full pytest suite 189 passed. P2 opened at P2.1 with a RED-only provider-agnostic market-snapshot contract; no market provider has been selected or called.
  • P1.6 accepted: reconciliation/provenance report passed independent spec/privacy and quality gates after Markdown/status hardening; final pytest suite 174 passed. P1.7 aggregate P1 audit is active.
  • P1.5 accepted: deterministic Decimal-only ledger calculator passed independent spec and quality gates; final pytest suite 128 passed. P1.6 reconciliation/provenance report is active.
  • P1.4 accepted: final RED ledger behavior contract has 15 synthetic tests, including external cash exclusion; independent spec PASS and quality APPROVED. P1.5 calculator implementation is active.
  • P1.3 accepted: bootstrap portfolio data passed independent spec/privacy and quality gates; final pytest suite 112 passed. P1.4 cost-basis test specification is active.
  • P1.2 accepted: immutable financial data contracts passed independent spec and quality gates; Decimal-only runtime enforcement verified; final pytest suite 84 passed. P1.3 bootstrap ledger preparation is active.
  • P1.1 accepted: final pytest suite 2 passed; independent spec-compliance gate PASS and quality gate APPROVED. P1.2 data-contract design is now active.
  • P0 closed: V1 Specification v1.0 created. P1 opened: Portfolio Ledger and Audit Trail; first bounded DeepSeek V4 Pro task is project baseline setup.
  • Subagent policy configured and verified: DeepSeek V4 Pro is the default bounded implementation worker; Nop remains architect, integrator, and verifier.
  • P0.8 approved: risk warning thresholds locked for individual concentration, top-three concentration, drawdown, and correlated exposure.
  • P0.7 approved: Telegram + local dashboard. Existing daily-stock-brief remains untouched; Copilot must prove parity in 10-session shadow mode before any replacement is considered.
  • P0.6 approved: bootstrap the V1 ledger from Oat-confirmed portfolio records already held by Nop; broker reconciliation is deferred.
  • P0.5 approved: V1 will scan current Oat holdings plus a fixed 30–50 ticker watchlist; benchmarks are context only.
  • P0.4 approved: V1 is a long-only Research & Decision Copilot. No broker integration, order execution, options module, or shorting.
  • Expanded P0 into a ten-step checklist: three verified complete, six awaiting Oat decisions, and one approval gate blocking implementation.
  • Created Project Control Center: JSON state is canonical; HTML view is generated from it.
  • Master implementation plan moved to C:\Users\oatsk\Oat-Trading-Copilot for shared review and future audit.
  • Project started in planning mode; no production code, broker integration, or orders exist.