- 添加 feature_list.json: 6个功能,5个已完成 - 添加 PROGRESS.md: 进度跟踪文件 - 添加 init.sh: 一键启动开发环境 - 添加 scripts/health-check.sh: 健康检查脚本 - 添加 scripts/e2e-test.sh: 端到端测试脚本 - 添加 .gitignore: 忽略不需要的文件 - 更新 README.md: 添加 PERDAS 增强版使用说明 核心特点: - 强制增量开发(每次一个功能) - 强制端到端测试 - 强制截图证据 - 状态持久化 - 清晰的交接机制 遵循 Anthropic 长期运行代理研究最佳实践
197 lines
5.7 KiB
JSON
197 lines
5.7 KiB
JSON
{
|
||
"project_name": "stock-tool",
|
||
"version": "1.0.0",
|
||
"created_at": "2026-02-18T19:06:35Z",
|
||
"last_updated": "2026-02-18T19:30:00Z",
|
||
"features": [
|
||
{
|
||
"id": "feat-001",
|
||
"title": "股票列表展示",
|
||
"description": "在网页上展示所有股票的基本信息,包括代码、名称、价格、涨跌幅、市值、PE、ROE、负债率等指标",
|
||
"status": "completed",
|
||
"priority": "critical",
|
||
"steps": [
|
||
{
|
||
"action": "navigate",
|
||
"target": "http://localhost:8080",
|
||
"description": "打开股票分析工具主页"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": ".stock-list",
|
||
"description": "验证股票列表容器存在"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": ".stock-card",
|
||
"description": "验证至少有一个股票卡片"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-001-stock-list-display.png",
|
||
"description": "截图保存股票列表展示界面"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "feat-002",
|
||
"title": "股票搜索功能",
|
||
"description": "支持按股票代码或公司名称搜索股票,搜索后自动跳转到对应股票详情页",
|
||
"status": "completed",
|
||
"priority": "critical",
|
||
"steps": [
|
||
{
|
||
"action": "type",
|
||
"selector": "#searchInput",
|
||
"text": "AAPL",
|
||
"description": "在搜索框输入股票代码"
|
||
},
|
||
{
|
||
"action": "click",
|
||
"selector": "button[onclick=\"searchStocks()\"]",
|
||
"description": "点击搜索按钮"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "#detailView",
|
||
"description": "验证跳转到股票详情页"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "#detailSymbol",
|
||
"_{text}": "AAPL",
|
||
"description": "验证显示正确的股票代码"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-002-stock-search.png",
|
||
"description": "截图保存搜索功能"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "feat-003",
|
||
"title": "K线图展示",
|
||
"description": "在详情页展示100天历史K线图(蜡烛图),显示开盘价、最高价、最低价、收盘价、成交量",
|
||
"status": "completed",
|
||
"priority": "high",
|
||
"steps": [
|
||
{
|
||
"action": "navigate",
|
||
"target": "http://localhost:8080",
|
||
"description": "打开主页"
|
||
},
|
||
{
|
||
"action": "click",
|
||
"selector": ".stock-card:first-child",
|
||
"description": "点击第一个股票卡片"
|
||
},
|
||
{
|
||
"action": "wait",
|
||
"selector": "#klineTab",
|
||
"description": "等待K线图标签显示"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "canvas#klineChart",
|
||
"description": "验证K线图画布存在"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-003-kline-chart.png",
|
||
"description": "截图保存K线图"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "feat-004",
|
||
"title": "技术指标展示",
|
||
"description": "展示RSI、MACD、均线系统等技术指标,使用简单的CSS图表绘制",
|
||
"status": "completed",
|
||
"priority": "high",
|
||
"steps": [
|
||
{
|
||
"action": "click",
|
||
"selector": "#indicatorsTab",
|
||
"description": "点击技术指标标签"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "canvas#indicatorsChart",
|
||
"description": "验证技术指标图表存在"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-004-technical-indicators.png",
|
||
"description": "截图保存技术指标"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "feat-005",
|
||
"title": "基本面数据展示",
|
||
"description": "展示收入、利润、ROE、负债权益比等财务数据",
|
||
"status": "completed",
|
||
"priority": "normal",
|
||
"steps": [
|
||
{
|
||
"action": "click",
|
||
"selector": "#financialsTab",
|
||
"description": "点击基本面标签"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "table.data-table",
|
||
"description": "验证表格存在"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-005-financials-data.png",
|
||
"description": "截图保存基本面数据"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "feat-006",
|
||
"title": "数据刷新功能",
|
||
"description": "提供一键刷新按钮,重新从API获取最新数据并更新数据库",
|
||
"status": "in_progress",
|
||
"priority": "normal",
|
||
"steps": [
|
||
{
|
||
"action": "navigate",
|
||
"target": "http://localhost:8080",
|
||
"description": "打开主页"
|
||
},
|
||
{
|
||
"action": "click",
|
||
"selector": ".stock-card:first-child",
|
||
"description": "点击第一个股票"
|
||
},
|
||
{
|
||
"action": "click",
|
||
"selector": ".refresh-btn",
|
||
"description": "点击刷新按钮"
|
||
},
|
||
{
|
||
"action": "verify",
|
||
"selector": "#loading",
|
||
"description": "验证加载状态显示"
|
||
},
|
||
{
|
||
"action": "screenshot",
|
||
"path": "tests/screenshots/feat-006-refresh-function.png",
|
||
"description": "截图保存刷新功能"
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"summary": {
|
||
"total": 6,
|
||
"completed": 5,
|
||
"in_progress": 1,
|
||
"pending": 0,
|
||
"failed": 0
|
||
}
|
||
}
|