summaryrefslogtreecommitdiff
path: root/docs/recovery-task-01.md
diff options
context:
space:
mode:
authorSomhairle H. Marisol <[email protected]>2026-09-18 08:27:41 +0800
committerSomhairle H. Marisol <[email protected]>2026-09-18 08:27:41 +0800
commit088735b948d46896b8af30efcb0a2dc5d362b97f (patch)
tree0dcab0d5ebc65309267a42d7cda827e9fdd866e7 /docs/recovery-task-01.md
parentbf6681eb29ac8b0c80ca17b2b5869f7de3da1198 (diff)
downloadstrategy-lab-088735b948d46896b8af30efcb0a2dc5d362b97f.tar.gz
docs(release): 全周期交接文档入库(含 ui-shadcn 迁移交付说明)
[变更性质] 纯文档提交,无运行时逻辑。 [文档内容] 补齐此前各轮未入库的交接/验收文档:backend-auth/backend-domain/ domain-authorization-user(认证与授权域)、etf-recovery-release- handoff(ETF 修复 + ops 演练定稿与生产部署命令)、recovery-* 系列、 frontend/parent-ui-findings(UI 迁移上下文)、worker/integration 等, 以及本轮 docs/ui-shadcn-handoff.md(shadcn-svelte 迁移交接,含 Chart.svelte 契约、runes $state 踩坑记录与 375/768/1440 验证证据)。 [更新方案] 按主题分文;每份文档只记录可复现的命令、验证结果与语义边界, 不导出密钥或生产敏感路径。 [影响范围] 文档渠道:后续 leader/client 审阅入口;与代码提交一一对应便于回溯。
Diffstat (limited to 'docs/recovery-task-01.md')
-rw-r--r--docs/recovery-task-01.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/docs/recovery-task-01.md b/docs/recovery-task-01.md
new file mode 100644
index 0000000..fd4132b
--- /dev/null
+++ b/docs/recovery-task-01.md
@@ -0,0 +1,15 @@
+# Recovery 01: real listed-ETF ingestion and failure semantics
+
+Use strategy-go/glm-5.3-flash. One integration writer only. Scope this repository. No deployment, service restarts, user DB reads/writes, credentials/Tunnel access, global skill modifications, commits or pushes. Existing production must remain unchanged. External market-data reads permitted; no fabricated results.
+
+Before implementation call native skill tool for systematic-debugging, test-driven-development, writing-plans. These are installed under .opencode/skills/. Record actual skill tool calls. Load verification-before-completion before handoff. If discovery fails, read these exact local SKILL.md files and explicitly report fallback.
+
+User defect: cn.159399 cash-flow ETF dataset2025-12-31..2026-09-17 daily unadjusted OHLCV fails with Eastmoney RemoteDisconnected followed by 'tencent source has no listed-ETF daily adapter'. Canonical requested symbol is159399; preserve identity and classify ETF correctly. Do not disguise fallback provider, units, adjustment or incomplete date coverage. Stock-only live probe success does not validate ETF.
+
+1. Read current architecture and code; write a concise evidence-based reproduction/repair plan in docs/recovery-01-plan.md. Reproduce provider failure or actual ETF data fetch with bounded requests using real upstreams. Identify available genuine provider ETF endpoints and returned schema, units and adjustment behavior. If no viable adapter can be verified, report blocker instead of inventing bars.
+2. Write failing tests for actual ETF provider response shapes, unavailable provider, timeout, canonical identity and truthful provenance. Implement smallest correct adapter/failure handling change in worker and backend if needed; do not redesign UI during this task. All network requests bounded. Explicit final failure and source capabilities must be accurate. Do not silently substitute synthetic fixtures for live data; label synthetic test fixtures.
+3. Test159399 exact requested range and supported stock/index/ETF comparison cases; dates after available trading session may legitimately have no bar, report coverage truthfully. Report exact row counts/start/end/source/columns/units and runtime. Exercise fetch -> persisted isolated dataset -> preview contract if feasible without touching production. Do not automatically retry or mutate user's failed dataset.
+4. Run relevant worker tests and backend tests if changed. Preserve baseline features. Do not spend entire task fixing unrelated code. No deployment or production image replacement. Isolated image tag allowed if needed.
+5. Handoff docs/recovery-01-results.md with exact commands/results, remaining blockers and list of changed files. End task; parent independently verifies.
+
+Broader release gate is docs/skill-assisted-development.md. This task alone cannot declare whole product complete. Frontend redesign with reviewed domain skills and full browser/visual acceptance follows separately. Context budget approx256K; inspect actual compaction evidence if session grows, do not claim configured thresholds prove compaction occurred.