diff --git a/.github/workflows/README.md b/.github/workflows/README.md index b1d3877..f7c2142 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -86,9 +86,9 @@ cd apps/mobile && dart format --output=none --set-exit-if-changed lib/ test/ && Add to README.md: ```markdown -[![CI Web](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-web.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-web.yml) -[![CI API](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-api.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-api.yml) -[![CI ML](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-ml.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-ml.yml) -[![CI Mobile](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-mobile.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-mobile.yml) -[![CodeQL](https://github.com/Remote55/carbonscan-ai/actions/workflows/codeql.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/codeql.yml) +[![CI Web](https://github.com/Remote55/treeq/actions/workflows/ci-web.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-web.yml) +[![CI API](https://github.com/Remote55/treeq/actions/workflows/ci-api.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-api.yml) +[![CI ML](https://github.com/Remote55/treeq/actions/workflows/ci-ml.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-ml.yml) +[![CI Mobile](https://github.com/Remote55/treeq/actions/workflows/ci-mobile.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-mobile.yml) +[![CodeQL](https://github.com/Remote55/treeq/actions/workflows/codeql.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/codeql.yml) ``` diff --git a/CLAUDE.md b/CLAUDE.md index 1db718c..63d6b1f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -59,8 +59,13 @@ ## ⚠️ ข้อจำกัดของเครื่องผู้ใช้ -**โน้ตบุ๊ก Acer Predator PHN16-71 ค้างตายสนิท 12 ครั้ง** (7 ครั้งใน 24 ชม. เมื่อ 22-23 ส.ค.) -ไม่มี bugcheck ไม่มี dump ไม่มี WHEA — สงสัยฮาร์ดแวร์ ยังไม่ได้ข้อสรุป +**โน้ตบุ๊ก Acer Predator PHN16-71 ค้างตายสนิท 19 ครั้ง** (15 ครั้งใน 3 วัน 21-23 ส.ค.) +ไม่มี bugcheck ไม่มี dump ไม่มี WHEA + +**สาเหตุ (วัดได้แล้ว 23 ส.ค.): ไฟ AC หลุดเข้าหลุดออก + แบตเสื่อม 72% ที่ 53 cycles** +Event 105 บันทึก AC หลุด/กลับ 4 ครั้งใน 10 วินาที (20:00:01-20:00:11) แล้วเครื่องตาย 20:13:03 +RAM ตัดออกแล้วด้วยการวัด (Memory Diagnostic 23 ส.ค. 13:24 = no errors) +**ไม่ใช่ซอฟต์แวร์ ไม่ใช่ workload** — รายละเอียดใน memory `machine-freeze-root-cause` - **ห้ามรัน full test suite บนเครื่องนี้** (`pytest tests/` ชุดเต็มใช้ ~29 นาที และเคยทิ้ง scratch ไว้ 93 GB จนเครื่องอืด) — ให้ GitHub Actions รับไป diff --git a/README.md b/README.md index 8f8c47b..e02f978 100644 --- a/README.md +++ b/README.md @@ -7,10 +7,10 @@ NSC 2026 หมวด 14 · Evidence-gated ML · 3D visual verification [![NSC 2026](https://img.shields.io/badge/NSC-2026-2D6A4F)](https://www.nstda.or.th/sims) -[![License: MIT](https://img.shields.io/github/license/Remote55/carbonscan-ai?color=52B788)](LICENSE) -[![CI · ML](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-ml.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-ml.yml) -[![CI · API](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-api.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-api.yml) -[![CI · Web](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-web.yml/badge.svg)](https://github.com/Remote55/carbonscan-ai/actions/workflows/ci-web.yml) +[![License: MIT](https://img.shields.io/github/license/Remote55/treeq?color=52B788)](LICENSE) +[![CI · ML](https://github.com/Remote55/treeq/actions/workflows/ci-ml.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-ml.yml) +[![CI · API](https://github.com/Remote55/treeq/actions/workflows/ci-api.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-api.yml) +[![CI · Web](https://github.com/Remote55/treeq/actions/workflows/ci-web.yml/badge.svg)](https://github.com/Remote55/treeq/actions/workflows/ci-web.yml) diff --git a/apps/web/.env.example b/apps/web/.env.example index 8bcde6f..1de3689 100644 --- a/apps/web/.env.example +++ b/apps/web/.env.example @@ -15,7 +15,7 @@ NEXT_PUBLIC_SUPABASE_ANON_KEY=sb_publishable_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # --- Backend API --- # Local dev: http://localhost:8000 -# Production: https://api.carbonscan-ai.up.railway.app +# Production: (none) - there is no public API deployment; see docs/DEPLOYMENT.md NEXT_PUBLIC_API_URL=http://localhost:8000 # --- WebSocket (for job progress) --- @@ -26,7 +26,7 @@ NEXT_PUBLIC_WS_URL=ws://localhost:8000 # NEXT_PUBLIC_MAPBOX_TOKEN=pk.eyJ... # --- Analytics (optional) --- -# NEXT_PUBLIC_PLAUSIBLE_DOMAIN=carbonscan-ai.vercel.app +# NEXT_PUBLIC_PLAUSIBLE_DOMAIN=treeqcarbon.vercel.app # NEXT_PUBLIC_VERCEL_ANALYTICS_ID=... # --- Feature Flags --- diff --git a/docs/DEPLOYMENT.md b/docs/DEPLOYMENT.md index 67926f3..b8a0756 100644 --- a/docs/DEPLOYMENT.md +++ b/docs/DEPLOYMENT.md @@ -50,7 +50,7 @@ vercel # Set production env vars in Vercel dashboard: # - NEXT_PUBLIC_SUPABASE_URL # - NEXT_PUBLIC_SUPABASE_ANON_KEY -# - NEXT_PUBLIC_API_URL=https://api.carbonscan-ai.up.railway.app +# - NEXT_PUBLIC_API_URL is deliberately left unset - no public API deployment exists ``` ### Auto-deploy on push @@ -67,7 +67,7 @@ GitHub integration → ทุก commit on `main` deploys to production. ### Initial Setup 1. Sign up at railway.app (use GitHub login) -2. New Project → Deploy from GitHub Repo → select `carbonscan-ai` +2. New Project → Deploy from GitHub Repo → select `treeq` 3. Set **Root Directory:** `services/api` 4. Set **Start Command:** `uvicorn app.main:app --host 0.0.0.0 --port $PORT` 5. Add environment variables (from `.env.example`) diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index d6b2157..0a5b148 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -65,8 +65,8 @@ git --version # ≥ 2.40 ```bash # 1. Clone -git clone https://github.com//carbonscan-ai.git -cd carbonscan-ai +git clone https://github.com/Remote55/treeq.git +cd treeq # 2. Install JS dependencies pnpm install @@ -247,7 +247,7 @@ RUNPOD_ENDPOINT_ID= REDIS_URL=redis://localhost:6379 # CORS -CORS_ORIGINS=http://localhost:3000,https://carbonscan-ai.vercel.app +CORS_ORIGINS=http://localhost:3000,https://treeqcarbon.vercel.app ``` ### services/ml/.env diff --git a/docs/HANDOFF.md b/docs/HANDOFF.md index ffe91ca..1f3bcf4 100644 --- a/docs/HANDOFF.md +++ b/docs/HANDOFF.md @@ -1,5 +1,12 @@ # 📋 CarbonScan AI — Master Handoff Document +> [!CAUTION] +> **Historical — snapshot ของ 22 พ.ค. 2569 ห้ามอ่านเป็นสถานะปัจจุบัน** +> เอกสารนี้เรียกตัวเองว่า "single reference doc" แต่บรรยายทีม 3 คน · deadline NSC 2026 · +> และเว็บที่ยัง deploy ไม่เสร็จ — **ไม่มีข้อไหนเป็นจริงแล้ว** NSC ไม่ผ่าน ทำคนเดียว +> และเว็บ live อยู่ที่ https://treeqcarbon.vercel.app +> สถานะปัจจุบัน: `CLAUDE.md` · [PROJECT_SPEC.md](PROJECT_SPEC.md) · [CAPABILITY_MATRIX.md](CAPABILITY_MATRIX.md) + > **The single reference doc for everything about this project.** > Read this if you lose your other notes or onboard a new team member. > diff --git a/docs/ONBOARDING.md b/docs/ONBOARDING.md index ee4ff95..ac04336 100644 --- a/docs/ONBOARDING.md +++ b/docs/ONBOARDING.md @@ -153,8 +153,8 @@ ```bash # 1. Clone repo -git clone https://github.com//carbonscan-ai.git -cd carbonscan-ai +git clone https://github.com/Remote55/treeq.git +cd treeq # 2. Install Node dependencies pnpm install diff --git a/docs/PROJECT_SPEC.md b/docs/PROJECT_SPEC.md index c69d9e4..c912c43 100644 --- a/docs/PROJECT_SPEC.md +++ b/docs/PROJECT_SPEC.md @@ -89,7 +89,10 @@ Pipeline ที่รันได้ตอนนี้รับ point cloud (`.l - **ชื่อปัจจุบัน: `TreeQ Carbon Platform`** (ทีมตัดสินใจ 2026-07-16) - **ชื่อเดิม `CarbonScan AI` = historical name** — ยังหลงเหลือใน legacy docs/code metadata บางส่วน - rebrand core surface แล้วใน **apps/web**, README, master spec และ ML docs -- **ยังไม่ rebrand ครบ:** GitHub repo name (`carbonscan-ai`) และ package identifier ในโค้ด +- **GitHub repo เปลี่ยนเป็น `Remote55/treeq` แล้ว** 23 ส.ค. 2569 · slug เก่ายัง redirect อยู่ + (ทดสอบแล้ว: ทั้ง CI badge และ shields.io ตาม redirect ได้) แต่ redirect จะตายทันที + ถ้ามีใครสร้าง repo ชื่อ `Remote55/carbonscan-ai` ขึ้นมาทับ +- **ยังไม่ rebrand ครบ:** package identifier ในโค้ด (`carbonscan-api`, `carbonscan-ml`, `@carbonscan/*`, bucket `carbonscan-uploads`) · เอกสาร historical และ ADR **ตั้งใจไม่แก้** เพราะการแก้บันทึกย้อนหลังคือการปลอมบันทึก · brand assets แก้แล้ว — โลโก้ไม่มี wordmark จึงย้ายมาใช้ได้ทั้งดุ้น diff --git a/services/api/pyproject.toml b/services/api/pyproject.toml index bca2a9a..5688f53 100644 --- a/services/api/pyproject.toml +++ b/services/api/pyproject.toml @@ -72,8 +72,8 @@ dev = [ ] [project.urls] -Repository = "https://github.com/Remote55/carbonscan-ai" -Issues = "https://github.com/Remote55/carbonscan-ai/issues" +Repository = "https://github.com/Remote55/treeq" +Issues = "https://github.com/Remote55/treeq/issues" [tool.hatch.build.targets.wheel] packages = ["app"] diff --git a/services/ml/README.md b/services/ml/README.md index 1e0101e..12978fe 100644 --- a/services/ml/README.md +++ b/services/ml/README.md @@ -150,7 +150,7 @@ pip install -e ".[dev,gpu]" ### Google Colab ```python # In notebook -!pip install -e /content/carbonscan-ai/services/ml[gpu] +!pip install -e /content/treeq/services/ml[gpu] ``` --- diff --git a/services/ml/training/README.md b/services/ml/training/README.md index 69c0ff5..6bc104a 100644 --- a/services/ml/training/README.md +++ b/services/ml/training/README.md @@ -22,8 +22,8 @@ The torch-free parts have unit tests in `../tests/test_woodleaf_training.py` ```bash # 1. clone the repo and cd into the ML service -!git clone https://github.com/Remote55/carbonscan-ai.git -%cd carbonscan-ai/services/ml +!git clone https://github.com/Remote55/treeq.git +%cd treeq/services/ml # 2. minimal deps (Colab already has torch + numpy + scipy) !pip install scipy