kiro-spec-engine 1.47.1 → 1.47.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -8,6 +8,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8
8
  ## [Unreleased]
9
9
 
10
10
  ### Added
11
+ - **Controller checkpoint resume**: `close-loop-controller` now supports `--controller-resume <latest|id|file>` plus persisted controller session snapshots (`.kiro/auto/close-loop-controller-sessions`) with retention controls (`--controller-session-id`, `--controller-session-keep`, `--controller-session-older-than-days`, `--no-controller-session`).
12
+ - **Controller concurrency lease lock**: Added queue lease lock controls (`--controller-lock-file`, `--controller-lock-ttl-seconds`, `--no-controller-lock`) to prevent concurrent queue corruption and allow stale-lock takeover under bounded TTL.
13
+ - **Persistent close-loop queue controller**: Added `kse auto close-loop-controller [queue-file]` with queue drain/poll runtime (`--queue-format`, `--dequeue-limit`, `--wait-on-empty`, `--poll-seconds`, runtime budgets, done/failed archives) so broad goals can be continuously executed through `close-loop-program` without manual re-invocation.
11
14
  - **KPI sample generator command**: Added `kse value metrics sample` to generate a ready-to-use KPI input JSON scaffold (`kpi-input.json`) for first-time observability runs.
12
15
  - **Value observability documentation track**: Added dedicated EN/ZH guides for KPI snapshot/baseline/trend workflow (`docs/value-observability-guide.md`, `docs/zh/value-observability-guide.md`) and wired entry links from README + docs indexes for faster discovery of measurable delivery capabilities.
13
16
  - **Release communication assets**: Added bilingual v1.46.2 release notes (`docs/releases/v1.46.2.md`, `docs/zh/releases/v1.46.2.md`) and a reusable pre-release checklist (`docs/release-checklist.md`).
@@ -88,6 +91,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
91
  - **Live orchestration status streaming**: Added event/interval-driven status persistence callback support in `runOrchestration()` and wired `auto close-loop` live progress output (`--no-stream` to disable).
89
92
 
90
93
  ### Changed
94
+ - **Controller queue hygiene default**: `close-loop-controller` now deduplicates duplicate broad goals by default (`--no-controller-dedupe` to preserve raw duplicates), and summary telemetry includes dedupe/lock/session metadata.
91
95
  - **Positioning and onboarding messaging**: Strengthened EN/ZH README and quick-start docs with explicit kse advantage matrix, 90-second value proof, and KPI observability positioning to improve first-contact clarity.
92
96
  - **CLI first-screen positioning text**: Updated `kse --help` top description in EN/ZH locales to reflect current core strengths: Spec workflow, orchestration, and KPI observability.
93
97
  - **Offline onboarding consistency**: Refreshed `START_HERE.txt`, `INSTALL_OFFLINE.txt`, and `docs/OFFLINE_INSTALL.md` to v1.46.2 guidance and aligned quick-start prerequisites with current runtime requirement (Node.js >= 16).
@@ -100,6 +104,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
100
104
  - **Autonomous operator UX**: Expanded docs with semantic decomposition and live stream behavior for close-loop command usage.
101
105
 
102
106
  ### Fixed
107
+ - **Controller summary semantics**: `close-loop-controller` now reports final `pending_goals` from the persisted queue snapshot and only marks `cycle-limit-reached` as exhausted when pending work remains (or empty-polling mode explicitly consumes cycle budget).
103
108
  - **npm package hygiene**: Excluded transient Python bytecode artifacts (`__pycache__`, `*.pyc/pyo/pyd`) from published package contents to reduce package noise and size.
104
109
  - **Documentation contact placeholders**: Replaced `yourusername` placeholder repository links in onboarding docs with the canonical project URL and removed stale example email contact.
105
110
  - **Jest force-exit dependency**: Removed `forceExit` from `jest.config.js` and `jest.config.ci.js`; test scripts now complete without explicit force-exit configuration.
package/README.md CHANGED
@@ -57,6 +57,7 @@ graph LR
57
57
  | Multi-agent scale-out | DAG orchestration (`orchestrate run/status/stop`) | Parallel delivery without manual terminal juggling |
58
58
  | Auto portfolio decomposition | Master/Sub spec split + dependency wiring | Complex goals become executable parallel plans automatically |
59
59
  | Program self-healing closure | `auto close-loop-program` auto recovery + learned remediation memory | Failed/partial runs continue autonomously until bounded convergence |
60
+ | Queue-driven autonomous runtime | `auto close-loop-controller` persistent queue drain | Program-scale backlogs continue without manual re-triggering |
60
61
  | Autonomous convergence governance | Program gate (`min-success-rate` + `max-risk-level`) + audit JSON output | Program completion is policy-verified and traceable |
61
62
  | Measurable outcomes | KPI automation (`value metrics snapshot/baseline/trend`) | Delivery quality can be tracked week-over-week |
62
63
  | Tool-agnostic adoption | Works across Claude/Cursor/Windsurf/Copilot/Kiro | No lock-in to a single AI IDE |
@@ -532,6 +533,8 @@ kse create-spec <name> # Legacy: create empty Spec folder only
532
533
  kse auto close-loop "<goal>" # Auto split goal into master/sub specs and execute to closure
533
534
  kse auto close-loop "<goal>" --dry-run --json # Preview decomposition plan only
534
535
  kse auto close-loop-program "<goal>" --program-govern-until-stable --program-govern-use-action 1 --json # Program-level recovery + governance with remediation action execution
536
+ kse auto close-loop-controller .kiro/auto/program-queue.lines --wait-on-empty --dequeue-limit 2 --json # Queue-driven autonomous controller for broad-goal backlogs
537
+ kse auto close-loop-controller --controller-resume latest --json # Resume autonomous controller from latest persisted checkpoint
535
538
 
536
539
  # Spec workflow (recommended)
537
540
  kse spec bootstrap --name <spec> --non-interactive # Generate requirements/design/tasks draft
@@ -736,6 +739,6 @@ A deep conversation about AI development trends, Neo-Confucian philosophy, and s
736
739
 
737
740
  ---
738
741
 
739
- **Version**: 1.46.2
740
- **Last Updated**: 2026-02-14
742
+ **Version**: 1.47.3
743
+ **Last Updated**: 2026-02-15
741
744
 
package/README.zh.md CHANGED
@@ -55,6 +55,7 @@ graph LR
55
55
  | 多 Agent 扩展 | DAG 编排(`orchestrate run/status/stop`) | 并行交付,不再手工开多终端 |
56
56
  | 自动主从拆分 | 目标自动拆成 Master/Sub Spec 并建立依赖 | 复杂需求自动转成可并行执行计划 |
57
57
  | 程序级自愈闭环 | `auto close-loop-program` 自动恢复 + 策略记忆 | 失败/部分失败会自动续跑,直到有界收敛 |
58
+ | 队列驱动自治执行 | `auto close-loop-controller` 持续消费目标队列 | 程序级积压目标无需人工反复触发 |
58
59
  | 自治收敛治理 | Program Gate(最小成功率 + 最大风险)+ 审计 JSON 导出 | 完成结果可按策略验收且全程可追溯 |
59
60
  | 结果可量化 | KPI 自动化(`value metrics snapshot/baseline/trend`) | 周度趋势可追踪、可审计 |
60
61
  | 工具无锁定 | 兼容 Claude/Cursor/Windsurf/Copilot/Kiro | 团队可保留现有 AI 工具链 |
@@ -449,6 +450,8 @@ kse create-spec <name> # 兼容旧版:仅创建空 Spec 目录
449
450
  kse auto close-loop "<目标>" # 自动拆分 Master/Sub Spec 并推进到完成态
450
451
  kse auto close-loop "<目标>" --dry-run --json # 仅预览拆分与依赖计划
451
452
  kse auto close-loop-program "<目标>" --program-govern-until-stable --program-govern-use-action 1 --json # 程序级自动恢复 + 治理循环(含 remediation action 执行)直到稳定
453
+ kse auto close-loop-controller .kiro/auto/program-queue.lines --wait-on-empty --dequeue-limit 2 --json # 队列驱动自治控制器,持续处理广义目标积压
454
+ kse auto close-loop-controller --controller-resume latest --json # 从最近一次 controller 检查点恢复自治推进
452
455
 
453
456
  # Spec 工作流(推荐)
454
457
  kse spec bootstrap --name <spec> --non-interactive # 生成 requirements/design/tasks 初稿
@@ -600,7 +603,7 @@ kse spec bootstrap --name 01-00-my-first-feature --non-interactive
600
603
 
601
604
  ---
602
605
 
603
- **版本**:1.46.2
604
- **最后更新**:2026-02-14
606
+ **版本**:1.47.3
607
+ **最后更新**:2026-02-15
605
608
 
606
609
 
@@ -87,6 +87,24 @@ kse auto close-loop-program \
87
87
  --program-audit-out .kiro/reports/close-loop-program-audit.json \
88
88
  --json
89
89
 
90
+ # Controller command: drain queue goals with autonomous close-loop-program runtime
91
+ kse auto close-loop-controller .kiro/auto/program-queue.lines \
92
+ --dequeue-limit 2 \
93
+ --max-cycles 20 \
94
+ --controller-done-file .kiro/auto/program-done.lines \
95
+ --controller-failed-file .kiro/auto/program-failed.lines \
96
+ --json
97
+
98
+ # Persistent controller mode: keep polling queue and execute new goals automatically
99
+ kse auto close-loop-controller .kiro/auto/program-queue.lines \
100
+ --wait-on-empty \
101
+ --poll-seconds 30 \
102
+ --max-cycles 1000 \
103
+ --max-minutes 240
104
+
105
+ # Resume from latest persisted controller session
106
+ kse auto close-loop-controller --controller-resume latest --json
107
+
90
108
  # Recovery command: consume diagnostics and auto-recover unresolved goals
91
109
  kse auto close-loop-recover latest --json
92
110
  kse auto close-loop-recover .kiro/auto/close-loop-batch-summaries/batch-20260215090000.json \
@@ -282,6 +300,23 @@ Close-loop program command:
282
300
  - Summary also includes `program_diagnostics` (`failure_clusters`, `remediation_actions`) to drive automatic follow-up and convergence recovery.
283
301
  - Summary includes `program_coordination` (master/sub topology, unresolved goal indexes, scheduler telemetry) and `auto_recovery` metadata.
284
302
 
303
+ Close-loop controller command:
304
+ - Command: `kse auto close-loop-controller [queue-file]`
305
+ - Runs a queue-driven autonomous loop: dequeue broad goals, execute each by `close-loop-program`, persist remaining queue, and continue until stop condition.
306
+ - Queue file defaults to `.kiro/auto/close-loop-controller-goals.lines`; supports `auto|json|lines` parsing via `--queue-format`.
307
+ - `--controller-resume <session-or-file>` resumes queue/controller context from persisted controller session (`latest`, session id, or file path).
308
+ - Duplicate broad goals are deduped by default; use `--no-controller-dedupe` to preserve raw queue duplicates.
309
+ - `--dequeue-limit <n>` controls how many queued goals are consumed in one cycle (`1-100`, default `1`).
310
+ - `--wait-on-empty` + `--poll-seconds <n>` enables long-running poll mode for continuously appended program queues.
311
+ - `--max-cycles <n>` + `--max-minutes <n>` bound controller runtime to prevent unbounded loops.
312
+ - Controller lease lock is enabled by default to prevent concurrent queue corruption (`--controller-lock-file`, `--controller-lock-ttl-seconds`, `--no-controller-lock`).
313
+ - `--stop-on-goal-failure` stops controller immediately on the first failed dequeued goal.
314
+ - `--controller-done-file` / `--controller-failed-file` append per-goal archive lines for downstream ops and replay.
315
+ - Controller summaries are persisted by default (`.kiro/auto/close-loop-controller-sessions`); use `--controller-session-id`, `--controller-session-keep`, `--controller-session-older-than-days`, `--no-controller-session` as needed.
316
+ - `--controller-print-program-summary` prints each nested program summary in realtime during controller execution.
317
+ - Supports full program governance/gate/recovery policy controls (`--program-*`, `--batch-*`, `--continue-on-error`, `--recovery-memory-scope`, `--dry-run`, `--json`).
318
+ - Output summary includes `history`, `results`, final `pending_goals`, `stop_reason`, `exhausted`, dedupe/lock/session, and resume-source telemetry.
319
+
285
320
  Close-loop recovery command:
286
321
  - Command: `kse auto close-loop-recover [summary]` (defaults to `latest` if summary is omitted).
287
322
  - Loads unresolved goals from a prior summary and applies selected remediation strategy patch automatically.
@@ -2,7 +2,7 @@
2
2
 
3
3
  > Quick reference for all kse commands
4
4
 
5
- **Version**: 1.46.2
5
+ **Version**: 1.47.3
6
6
  **Last Updated**: 2026-02-15
7
7
 
8
8
  ---
@@ -344,6 +344,24 @@ kse auto close-loop-program \
344
344
  --program-audit-out .kiro/reports/close-loop-program-audit.json \
345
345
  --json
346
346
 
347
+ # Controller command: drain queued broad goals with close-loop-program runtime
348
+ kse auto close-loop-controller .kiro/auto/program-queue.lines \
349
+ --dequeue-limit 2 \
350
+ --max-cycles 20 \
351
+ --controller-done-file .kiro/auto/program-done.lines \
352
+ --controller-failed-file .kiro/auto/program-failed.lines \
353
+ --json
354
+
355
+ # Persistent controller mode: keep polling queue and execute new goals automatically
356
+ kse auto close-loop-controller .kiro/auto/program-queue.lines \
357
+ --wait-on-empty \
358
+ --poll-seconds 30 \
359
+ --max-cycles 1000 \
360
+ --max-minutes 240
361
+
362
+ # Resume from latest persisted controller session
363
+ kse auto close-loop-controller --controller-resume latest --json
364
+
347
365
  # Recovery command: replay unresolved goals from summary using remediation action strategy
348
366
  kse auto close-loop-recover latest --json
349
367
  kse auto close-loop-recover .kiro/auto/close-loop-batch-summaries/batch-20260215090000.json \
@@ -548,6 +566,29 @@ Close-loop program (`kse auto close-loop-program "<goal>"`) options:
548
566
  - Program summary includes `program_diagnostics` with `failure_clusters` and `remediation_actions` (prioritized follow-up commands for convergence).
549
567
  - Program summary includes `program_coordination` (master/sub topology, unresolved goal indexes, scheduler snapshot) and `auto_recovery` metadata.
550
568
 
569
+ Close-loop controller (`kse auto close-loop-controller [queue-file]`) options:
570
+ - `queue-file`: optional queue file path (default `.kiro/auto/close-loop-controller-goals.lines`)
571
+ - `--controller-resume <session-or-file>`: resume from persisted controller session (`latest`, session id, or file path)
572
+ - `--queue-format <auto|json|lines>`: queue parser mode (default `auto`)
573
+ - `--no-controller-dedupe`: disable duplicate broad-goal deduplication (default dedupe enabled)
574
+ - `--dequeue-limit <n>`: consume up to `n` goals per controller cycle (`1-100`, default `1`)
575
+ - `--wait-on-empty`: keep polling when queue is empty instead of stopping
576
+ - `--poll-seconds <n>`: polling interval for `--wait-on-empty` (`1-3600`, default `30`)
577
+ - `--max-cycles <n>`: max controller cycles (`1-100000`, default `1000`)
578
+ - `--max-minutes <n>`: elapsed-time budget in minutes (`1-10080`, default `120`)
579
+ - `--controller-lock-file <path>`: explicit lease lock file (default `<queue-file>.lock`)
580
+ - `--controller-lock-ttl-seconds <n>`: stale lock takeover threshold (`10-86400`, default `1800`)
581
+ - `--no-controller-lock`: disable controller lease lock (unsafe for concurrent controllers)
582
+ - `--stop-on-goal-failure`: stop immediately when one dequeued goal fails
583
+ - `--controller-session-id <id>`: set explicit persisted controller session id
584
+ - `--controller-session-keep <n>` / `--controller-session-older-than-days <n>`: retention policy for persisted controller sessions
585
+ - `--no-controller-session`: disable controller session persistence
586
+ - `--controller-out <path>`: write controller summary JSON
587
+ - `--controller-done-file <path>` / `--controller-failed-file <path>`: append completed/failed goals into line archives
588
+ - `--controller-print-program-summary`: print each nested `close-loop-program` summary during controller execution
589
+ - Supports program execution controls (`--program-*`, `--batch-*`, `--continue-on-error`, `--recovery-memory-scope`, `--dry-run`, `--json`) and runs each dequeued queue goal through full autonomous program flow.
590
+ - Summary includes controller telemetry (`history`, `results`, final `pending_goals`, `stop_reason`, `exhausted`, dedupe/lock/session metadata) plus optional done/failed archive file paths.
591
+
551
592
  Close-loop recovery (`kse auto close-loop-recover [summary]`) options:
552
593
  - `summary`: optional summary file path; defaults to `latest` persisted batch summary
553
594
  - `--use-action <n>`: choose remediation action index from diagnostics (`1` by default)