easy-coding-harness 0.7.1-beta0 → 0.7.1
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
|
@@ -6,6 +6,17 @@
|
|
|
6
6
|
- `y`:常规功能升级
|
|
7
7
|
- `z`:日常 bug 修复
|
|
8
8
|
|
|
9
|
+
## 0.7.1
|
|
10
|
+
|
|
11
|
+
- 正式发布确认模式可见性增强:状态栏品牌名统一展示当前生效模式,例如 `**Easy Coding [Auto]**`,覆盖 Ready、Waiting init、活动任务和 Handoff 场景;机器 breadcrumb 与 no-harness 行为保持不变。
|
|
12
|
+
- `ec-task-management` 默认面板始终展示项目模式、session 覆盖和最终生效模式,并支持通过对话设置或清除当前 session 覆盖。
|
|
13
|
+
- 汇总 `0.7.1-beta0` 与 `0.7.1-beta1` 的验证结果,Claude、Codex、Qoder 主约束、安装测试、状态 API 回归测试和使用示例均已对齐。
|
|
14
|
+
|
|
15
|
+
## 0.7.1-beta1
|
|
16
|
+
|
|
17
|
+
- 状态栏品牌名展示当前生效确认模式,例如 `**Easy Coding [Auto]**`;项目级 `behavior.confirm_mode` 与 session 覆盖仍沿用既有优先级,Ready、Waiting init、活动任务和 Handoff 使用同一格式。
|
|
18
|
+
- Claude/Codex/Qoder 主约束、安装测试、状态 API 回归测试和使用示例同步更新,机器 breadcrumb 与 no-harness 行为保持不变。
|
|
19
|
+
|
|
9
20
|
## 0.7.1-beta0
|
|
10
21
|
|
|
11
22
|
- 修复裸唤起 `ec-task-management` 时只显示任务列表、未暴露 session 确认模式的问题:默认面板现在始终读取 session snapshot,并展示项目模式、session 覆盖和最终生效模式,即使没有未完成任务也不会省略。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "easy-coding-harness",
|
|
3
|
-
"version": "0.7.1
|
|
3
|
+
"version": "0.7.1",
|
|
4
4
|
"description": "CLI scaffold for installing Easy Coding harness files into agent-native directories.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
},
|
|
13
13
|
"type": "module",
|
|
14
14
|
"bin": {
|
|
15
|
-
"easy-coding": "
|
|
15
|
+
"easy-coding": "dist/cli.js"
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
18
|
"CHANGELOG.md",
|
|
@@ -11,10 +11,13 @@ user in the user's language.
|
|
|
11
11
|
Start every work reply with the single Markdown blockquote status line injected by the hook,
|
|
12
12
|
then a blank line. Do not render the machine breadcrumbs to the user.
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
-
|
|
14
|
+
`{confirm-mode}` is the capitalized effective mode (`Approve`, `Guard`, or `Auto`); a session
|
|
15
|
+
override takes precedence over the project mode.
|
|
16
|
+
|
|
17
|
+
- Ready: > **Easy Coding [{confirm-mode}]** · Ready · Use `ec-workflow` to start or resume a task, `ec-brainstorming` to brainstorm, or `ec-task-management` to manage tasks or session settings
|
|
18
|
+
- Waiting init: > **Easy Coding [{confirm-mode}]** · Waiting init · Use `ec-init` to initialize
|
|
19
|
+
- Active task: > **Easy Coding [{confirm-mode}]** · `{current-task}` · `{workflow-state}`
|
|
20
|
+
- Handoff: > **Easy Coding [{confirm-mode}]** · `{current-task}` · `{workflow-state}` · Handoff -> `{source-agent}`
|
|
18
21
|
|
|
19
22
|
Skill names in the status line are bare names (`ec-init`, `ec-workflow`) and never include
|
|
20
23
|
platform prefixes such as `/` or `$`. If no status line is injected, do not invent one.
|
|
@@ -11,10 +11,13 @@ user in the user's language.
|
|
|
11
11
|
Start every work reply with the single Markdown blockquote status line injected by the hook,
|
|
12
12
|
then a blank line. Do not render the machine breadcrumbs to the user.
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
-
|
|
14
|
+
`{confirm-mode}` is the capitalized effective mode (`Approve`, `Guard`, or `Auto`); a session
|
|
15
|
+
override takes precedence over the project mode.
|
|
16
|
+
|
|
17
|
+
- Ready: > **Easy Coding [{confirm-mode}]** · Ready · Use `ec-workflow` to start or resume a task, `ec-brainstorming` to brainstorm, or `ec-task-management` to manage tasks or session settings
|
|
18
|
+
- Waiting init: > **Easy Coding [{confirm-mode}]** · Waiting init · Use `ec-init` to initialize
|
|
19
|
+
- Active task: > **Easy Coding [{confirm-mode}]** · `{current-task}` · `{workflow-state}`
|
|
20
|
+
- Handoff: > **Easy Coding [{confirm-mode}]** · `{current-task}` · `{workflow-state}` · Handoff -> `{source-agent}`
|
|
18
21
|
|
|
19
22
|
Skill names in the status line are bare names (`ec-init`, `ec-workflow`) and never include
|
|
20
23
|
platform prefixes such as `/` or `$`. If no status line is injected, do not invent one.
|
|
@@ -14,11 +14,8 @@ HELP_SUFFIX = (
|
|
|
14
14
|
"Use `ec-workflow` to start or resume a task, "
|
|
15
15
|
"`ec-brainstorming` to brainstorm, or `ec-task-management` to manage tasks or session settings"
|
|
16
16
|
)
|
|
17
|
-
READY_LINE =
|
|
18
|
-
|
|
19
|
-
"`ec-brainstorming` to brainstorm, or `ec-task-management` to manage tasks or session settings"
|
|
20
|
-
)
|
|
21
|
-
WAITING_INIT_LINE = "> **Easy Coding** · Waiting init · Use `ec-init` to initialize"
|
|
17
|
+
READY_LINE = f"Ready · {HELP_SUFFIX}"
|
|
18
|
+
WAITING_INIT_LINE = "Waiting init · Use `ec-init` to initialize"
|
|
22
19
|
|
|
23
20
|
MANDATORY_DEV_SPEC_HEADERS: list[str] = [
|
|
24
21
|
"## 技术方案",
|
|
@@ -1043,10 +1040,11 @@ def build_status_line(
|
|
|
1043
1040
|
session_file: str | Path | None = None,
|
|
1044
1041
|
) -> str:
|
|
1045
1042
|
state = snapshot_state(root, session_file, session)
|
|
1043
|
+
status_brand = f"> **Easy Coding [{str(state['effective_confirm_mode']).capitalize()}]**"
|
|
1046
1044
|
task_id = state["current_task"]
|
|
1047
1045
|
if task_id:
|
|
1048
1046
|
status = str(state["status"])
|
|
1049
|
-
line = f"
|
|
1047
|
+
line = f"{status_brand} · `{task_id}` · `{status}`"
|
|
1050
1048
|
last_agent = state.get("last_agent")
|
|
1051
1049
|
if agent and last_agent and last_agent != agent:
|
|
1052
1050
|
line += f" · Handoff -> `{last_agent}`"
|
|
@@ -1055,16 +1053,16 @@ def build_status_line(
|
|
|
1055
1053
|
return line
|
|
1056
1054
|
|
|
1057
1055
|
if is_project_init_required(root):
|
|
1058
|
-
return WAITING_INIT_LINE
|
|
1056
|
+
return f"{status_brand} · {WAITING_INIT_LINE}"
|
|
1059
1057
|
|
|
1060
1058
|
pending = get_pending_init_version(root)
|
|
1061
1059
|
if pending:
|
|
1062
1060
|
return (
|
|
1063
|
-
f"
|
|
1061
|
+
f"{status_brand} · Waiting init · "
|
|
1064
1062
|
f"Upgrade to v{pending} — run `ec-init` to adapt"
|
|
1065
1063
|
)
|
|
1066
1064
|
|
|
1067
|
-
return READY_LINE
|
|
1065
|
+
return f"{status_brand} · {READY_LINE}"
|
|
1068
1066
|
|
|
1069
1067
|
|
|
1070
1068
|
def build_machine_breadcrumbs(
|