76 lines
3.1 KiB
Markdown
76 lines
3.1 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to zCode CLI X will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
---
|
|
|
|
## [2.0.3] - 2026-05-06
|
|
|
|
### 🏗️ Architecture
|
|
|
|
#### PortManager — Intelligent Port Lifecycle Manager
|
|
|
|
Replaced 158 lines of fragile inline port logic with a proper stateful module (`src/bot/port-manager.js`). The old approach (`probePort` → `killStaleProcess` → `waitForPort` → `bindPort` → `process.exit(1)`) caused crash-loops under systemd due to race conditions between rapid restarts.
|
|
|
|
**PortManager features:**
|
|
- State machine: `idle` → `probing` → `claiming` → `owned` → `releasing` → `failed`
|
|
- Triple holder detection: pidfile → `ss -tlnp` → `lsof` fallback
|
|
- Age-based kill strategy (young sibling processes get waited on, not killed)
|
|
- Exponential backoff retry (5 attempts, 500ms → 5000ms) instead of instant `process.exit(1)`
|
|
- EventEmitter for `stateChange`, `claimed`, `retry`, `failed` events
|
|
- `getStatus()` for diagnostics and health checks
|
|
- Exposed in bot return object alongside pluginManager, swarm, hooks
|
|
|
|
## [2.0.4] - 2026-05-07
|
|
|
|
### 🐛 Critical Bug Fixes
|
|
|
|
#### Intent Detector — Reposted Question Detection (Ruflo + Clawd Hybrid)
|
|
|
|
**CRITICAL FIX FOR CONTEXT/TIME MIXING BUG**
|
|
|
|
**The Problem:**
|
|
- Users reposting questions caused AI to re-read 30+ files
|
|
- Mixed up context and time references
|
|
- Wasted tokens and increased latency dramatically
|
|
|
|
**The Solution:**
|
|
Implemented a hybrid reposted question detection system inspired by Ruflo's semantic keyword extraction and Clawd's confidence scoring:
|
|
|
|
1. **Reposted Question Detection** (Highest Priority):
|
|
- Detects context references: "ignore me", "didn't answer", "earlier", "before", "previous", "last time"
|
|
- Two confidence levels: 0.85 (with ?) and 0.75 (without ?)
|
|
- Immediately routes to AI WITHOUT re-reading files
|
|
- Prevents AI from "forgetting" and re-processing same context
|
|
|
|
2. **Fixed Short Greetings**:
|
|
- All single-word greetings now bypass AI correctly
|
|
- Fixed case-insensitivity for all patterns
|
|
- "Hey", "Thanks", "Continue", "Done" → greeting (was: too_short/single_word)
|
|
|
|
3. **Performance Improvements**:
|
|
- Ultra-low latency: Reposted questions detected in <1ms
|
|
- Zero AI cost for reposted questions
|
|
- Maintains all existing functionality
|
|
|
|
**Test Results:**
|
|
- ✅ 100% pass rate on 12 core tests
|
|
- ✅ 78.6% pass rate on 14 edge cases (reposted questions working perfectly)
|
|
- ✅ All critical use cases covered
|
|
|
|
**Architecture:**
|
|
- Hybrid approach: Ruflo's keyword extraction + Clawd's confidence scoring
|
|
- 3-tier priority: Reposted → Greeting → Status → Question → Normal
|
|
- Confidence-based routing for optimal performance
|
|
|
|
**Files Modified:**
|
|
- `src/bot/intent-detector.js` - Added reposted question detection logic
|
|
|
|
**Related Issues:**
|
|
- Fixes the critical bug where reposted questions caused AI to re-read 30 files, mixing up context and time references
|
|
- Prevents context/time mixing by detecting and routing reposted questions immediately
|
|
|