Skip to content

Commit 69c9f9a

Browse files
GoldVelenclaude
andcommitted
docs: sync README and CHANGELOG for v0.3.0
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent 4886a09 commit 69c9f9a

2 files changed

Lines changed: 70 additions & 21 deletions

File tree

CHANGELOG.md

Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,47 @@
11
# Changelog
22

3-
## Unreleased
3+
## v0.3.0
44

5-
### Bug Fixes
5+
### Features
66

7-
- enforce strict plan-to-implementation pipeline discipline (2026-05-24)
8-
- empty PID file falsely detected as running (2026-05-24)
7+
- auto fallback with degraded backend tracking
8+
- TUI dashboard (real-time health, stats, logs)
9+
- Web management UI at /web
10+
- stats/health monitoring (cmr stats, cmr health)
11+
- pipeline progress output, per-stage timeout, and Ctrl+C checkpoint/resume
12+
- multi-input pipeline modes (interactive, --file, --stdin, args)
13+
- setup guard prompts for setup if config missing
914

10-
### Features
15+
### Bug Fixes
1116

12-
- improve CLI daemon, add setup and pipeline commands (2026-05-24)
13-
- add pipeline engine for auto model dispatch (2026-05-24)
14-
- multi-backend routing with modelPattern, enhanced logging (2026-05-24)
15-
- add config validation and hot reload (2026-05-24)
17+
- correct public/index.html path resolution in web route
18+
- dashboard non-TTY guard
19+
- pipeline SIGINT now aborts mid-stage via AbortSignal
1620

1721
### Documentation
1822

19-
- update README and package.json for v0.2.0 (2026-05-24)
20-
- bilingual README (EN/CN) (2026-05-24)
23+
- README v0.3.0 features section
24+
- architecture diagram in README
25+
- bilingual updates (EN/CN)
2126

22-
### Tests
27+
## v0.2.0
2328

24-
- add validator, watcher, and integration tests (2026-05-24)
29+
### Features
2530

26-
## v0.1.0
31+
- pipeline engine for auto model dispatch
32+
- multi-backend routing with modelPattern
33+
- config validation and hot reload
34+
- CLI daemon, setup and pipeline commands
2735

28-
### Features
36+
### Bug Fixes
37+
38+
- empty PID file falsely detected as running
39+
- strict plan-to-implementation pipeline discipline
2940

30-
- initial release (2026-05-24)
41+
### Documentation
42+
43+
- bilingual README (EN/CN)
3144

32-
### Chores
45+
## v0.1.0
3346

34-
- init project skeleton (2026-05-24)
47+
- initial release

README.md

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ cmr status # Verify it's running
4646

4747
If no config exists, `cmr start` and other commands will prompt you to run `cmr setup` first.
4848

49+
After starting, visit `http://127.0.0.1:3457/web` for the web management UI.
50+
4951
## Install / 安装
5052

5153
```bash
@@ -177,7 +179,7 @@ cmr stats # Check failure counts and degraded status
177179

178180
### Real-time Dashboard / 实时面板
179181

180-
**`cmr dashboard`** provides a live terminal dashboard with backend health, request stats, and recent logs — all updating every second. Press `q` to quit.
182+
**`cmr dashboard`** provides a live terminal dashboard with backend health, request stats, and recent logs — all updating every second. Press `q` to quit. Requires an interactive terminal at least 80 columns wide.
181183

182184
### Web Management UI
183185

@@ -187,6 +189,8 @@ Visit `http://127.0.0.1:3457/web` for a browser-based management interface:
187189
- Run pipeline tasks
188190
- Watch live logs
189191

192+
> **Security note**: Web UI binds to localhost only. Do not expose port 3457 to public networks.
193+
190194
### Pipeline Enhancements
191195

192196
- **Multi-input modes**: `cmr run` (interactive), `cmr run <task>`, `cmr run --file task.txt`, `echo "task" | cmr run --stdin`
@@ -222,19 +226,51 @@ Edit the `aliases` section in your config / 编辑配置中的 `aliases` 字段
222226

223227
## Upgrade from v0.1.x / 从 v0.1.x 升级
224228

225-
cmr v0.2.0 is fully backward-compatible with your existing `config.json`. On first load:
229+
cmr v0.3.0 is fully backward-compatible with v0.1.x and v0.2.x configs. On first load:
226230

227231
1. The old `backends` format (with `url` + `apiKey` only) is auto-migrated to the new format with default `path`, `modelPattern`, and `sanitizer` values
228232
2. Environment variables `CMR_DEEPSEEK_KEY` and `CMR_CLAUDE_KEY` still work
229233
3. Logging now displays backend URL hostnames instead of hardcoded service names
230234
4. The hot reload watcher is automatically active — no configuration needed
231235

236+
## Architecture / 架构
237+
238+
```
239+
src/
240+
├── server.ts HTTP server with retry loop & fallback
241+
├── router.ts Backend selection (modelPattern + degraded filter)
242+
├── pipeline.ts Multi-stage model orchestration
243+
├── config.ts Config load + hot reload + env override
244+
├── watcher.ts fs.watch on config.json
245+
├── validator.ts Config schema validation
246+
├── sanitize.ts DeepSeek request sanitizer
247+
├── stats/ Per-backend metrics (immutable store)
248+
│ ├── stats-store.ts State + recordRequest/recordFailure/isDegraded
249+
│ ├── stats-middleware.ts res.writeHead/end interception
250+
│ └── stats-types.ts
251+
├── server/routes/ HTTP endpoints
252+
│ ├── stats.ts GET /stats
253+
│ ├── logs.ts GET /logs
254+
│ ├── web.ts GET /web (serves public/index.html)
255+
│ ├── api-config.ts GET/POST /api/config
256+
│ ├── api-run.ts POST /api/run, GET /api/run/:id
257+
│ └── api-logs.ts GET /api/logs
258+
├── commands/ CLI commands (used by bin/cmr.js)
259+
│ ├── stats.ts
260+
│ └── health.ts
261+
└── utils/
262+
├── http-client.ts Backend reachability check
263+
└── changelog-generator.ts
264+
```
265+
266+
Zero runtime dependencies — only Node.js built-ins.
267+
232268
## Tech / 技术栈
233269

234270
- **Runtime**: Node.js ≥ 18 (ESM)
235271
- **Language**: TypeScript (strict mode)
236272
- **Dependencies**: 0 runtime dependencies
237-
- **Test**: Node.js built-in test runner, 75 tests across 23 suites
273+
- **Test**: Node.js built-in test runner, 88 tests across 27 suites
238274
- **Dist**: npm package with `cmr` CLI
239275

240276
## License / 许可

0 commit comments

Comments
 (0)