{"repo": "beer-sakthai/sak-family-agent", "files": {"personas/sakjules/PLAN.md": {"7ceb14808e058ef30a7e04b9c7283039f4c1e6ef": {"t": 1785846943.1647968, "n": 5486, "h": "930c5f30d9863099", "c": "# PLAN.md โ€” SakJules ๐Ÿ”ง Deep-Dive Task-by-Task Roadmap\n> *DevSecOps, GitHub Actions & Asynchronous Model Training Execution Plan*\n> *Status: Active Step-by-Step Execution*\n\n---\n\n## ๐Ÿ“‹ Deep-Dive Task Execution Breakdown (Step-by-Step, One-by-One)\n\n```mermaid\nflowchart TD\n T1[\"Task 1: Environment & Credential Audit (Phase 1)\"] --> T2[\"Task 2: Local Memory & Daemon Health Check (Phase 1)\"]\n T2 --> T3[\"Task 3: OpenCode Custom Model Matrix Audit (Phase 2)\"]\n T3 --> T4[\"Task 4: Remote Jules Session Dispatch & Integration (Phase 3)\"]\n T4 --> T5[\"Task 5: HF Jobs Dataset & Training Pipeline Execution (Phase 4)\"]\n T5 --> T6[\"Task 6: Benchmark Eval & Model Cards Publishing (Phase 5)\"]\n T6 --> T7[\"Task 7: GGUF Quantization & Local Ollama Binding (Phase 6)\"]\n```\n\n---\n\n### Phase 1: Foundation & Infrastructure Verification\n\n#### ๐Ÿ”น Task 1.1: Environment Variable & API Credential Audit\n- **Goal**: Verify all API keys (`JULES_API_KEY`, `OPENCODE_GO_API_KEY`, `SUPERMEMORY_API_KEY`, `RENDER_API_KEY`, `GOOGLE_API_KEY`) are present in `/home/beern/.env` and exported in `~/.bashrc`.\n- **Estimated Time**: 2 minutes\n- **Command**: `grep -E \"JULES_API_KEY|OPENCODE_GO_API_KEY|SUPERMEMORY_API_KEY\" /home/beern/.env`\n- **Acceptance Criteria**: All 5 credentials return non-empty values.\n\n#### ๐Ÿ”น Task 1.2: Local Supermemory Daemon Health Check\n- **Goal**: Verify local Supermemory daemon is running on port 6767 with ONNX `Xenova/bge-base-en-v1.5` embeddings.\n- **Estimated Time**: 2 minutes\n- **Command**: `curl -s http://localhost:6767/healthcheck || pgrep -f supermemory-server`\n- **Acceptance Criteria**: HTTP 200 response or active PID returned.\n\n---\n\n### Phase 2: OpenCode & Custom Model Binding Audit\n\n#### ๐Ÿ”น Task 2.1: OpenCode Model Matrix Verification\n- **Goal**: Audit [`/home/beern/opencode.json`](file:///home/beern/opencode.json) to ensure zero Gemini API quota dependencies.\n- **Estimated Time**: 3 minutes\n- **Matrix**:\n - `model`: `huggingface/deepseek-ai/DeepSeek-V4-Flash`\n - `small_model`: `Nanthasit/sakthai-context-1.5b-tools-v2`\n - `tools_model`: `Nanthasit/sakthai-context-7b-tools`\n - `embedding_model`: `Nanthasit/sakthai-embedding-multilingual`\n- **Acceptance Criteria**: `opencode.json` contains 100% custom `Nanthasit/*` models.\n\n#### ๐Ÿ”น Task 2.2: Google ADK Zero-Cost Specification Audit\n- **Goal**: Verify [`/home/beern/.agents-cli-spec.md`](file:///home/beern/.agents-cli-spec.md) is configured for $0.00 USD spend.\n- **Estimated Time**: 2 minutes\n- **Command**: `agents-cli info`\n- **Acceptance Criteria**: Executed cleanly with 0 malformed metadata warnings.\n\n---\n\n### Phase 3: Jules Asynchronous Remote Automation\n\n#### ๐Ÿ”น Task 3.1: Remote Jules Session List & Status Audit\n- **Goal**: Query active remote sessions on Jules server.\n- **Estimated Time**: 5 minutes\n- **Command**: `jules remote list --session` or via `julesServer` MCP\n- **Acceptance Criteria**: List of remote sessions returned cleanly.\n\n#### ๐Ÿ”น Task 3.2: Jules Remote Patch Pull & Git Merge\n- **Goal**: Pull completed patches from remote Jules sessions and apply to `Sak-Family-Agent` or target repos.\n- **Estimated Time**: 5 minutes\n- **Command**: `jules remote pull --session --apply`\n- **Acceptance Criteria**: Git working tree updated cleanly without merge conflicts.\n\n---\n\n### Phase 4: Custom Model Training & Benchmark Pipeline\n\n#### ๐Ÿ”น Task 4.1: Dataset Synthesis (`sakthai-bench-v3`)\n- **Goal**: Run `.opencode/scripts/run-benchmark-v3.py` to generate 25,000 synthetic task routing prompts.\n- **Estimated Time**: 15 minutes\n- **Command**: `uv run .opencode/scripts/run-benchmark-v3.py`\n- **Acceptance Criteria**: Dataset saved under `Nanthasit/sakthai-triage-dataset`.\n\n#### ๐Ÿ”น Task 4.2: Hugging Face Job GPU Fine-Tuning\n- **Goal**: Dispatch QLoRA SFT training for `Nanthasit/sakthai-triage-1.5b` on HF Jobs.\n- **Estimated Time**: 45 minutes\n- **Command**: `hf jobs run python:3.11 \"uv run SakThai-Training/train.py\" --secrets HF_TOKEN --flavor t4-small`\n- **Acceptance Criteria**: Job status `COMPLETED` and weights published to HF Hub.\n\n---\n\n### Phase 5: Evaluation & Documentation Publishing\n\n#### ๐Ÿ”น Task 5.1: Benchmark Evaluation Run\n- **Goal**: Evaluate model accuracy on `Nanthasit/sakthai-bench-v2`.\n- **Estimated Time**: 10 minutes\n- **Command**: `uv run .opencode/scripts/run-eval.py --model Nanthasit/sakthai-triage-1.5b --publish`\n- **Acceptance Criteria**: Cross-model YAML uploaded to `Nanthasit/eval_results`.\n\n#### ๐Ÿ”น Task 5.2: Model Cards & Dataset Card Synchronization\n- **Goal**: Update README tables across all model repos and dataset cards.\n- **Estimated Time**: 5 minutes\n- **Command**: `uv run .opencode/scripts/update-model-cards.py`\n- **Acceptance Criteria**: Model card tables updated on Hugging Face Hub.\n\n---\n\n### Phase 6: GGUF Quantization & Local Ollama Binding\n\n#### ๐Ÿ”น Task 6.1: GGUF Quantization & Upload\n- **Goal**: Convert model weights to GGUF format (Q4_K_M) for local sub-100ms inference.\n- **Estimated Time**: 15 minutes\n- **Command**: `hf upload Nanthasit/sakthai-triage-1.5b-gguf ./model.gguf`\n- **Acceptance Criteria**: GGUF file available on HF Hub.\n\n#### ๐Ÿ”น Task 6.2: Local Ollama Pull & Verification\n- **Goal**: Pull GGUF into local Ollama instance and run inference test.\n- **Estimated Time**: 5 minutes\n- **Command**: `ollama run hf.co/Nanthasit/sakthai-triage-1.5b-gguf \"Task triage test\"`\n- **Acceptance Criteria**: Sub-100ms response generated cleanly.\n\n---\n\n*SakJules Step-by-Step Task Master Plan ยท House of Sak*"}}}}