easy-coding-harness 0.5.2-beta.0 → 0.6.0

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.
@@ -33,16 +33,20 @@ First run `/ec-init`; daily work goes through `/ec-workflow`.
33
33
 
34
34
  ## Workflow discipline
35
35
 
36
- - Stages do not skip. WAITING_CONFIRM is a real gate implement only after the user confirms
37
- the plan and test strategy (unless `behavior.auto_mode` is on and the user asked for it).
36
+ - Stages do not skip. Every legal stage edge uses `pending_transition` and requires explicit
37
+ user confirmation by default. At each boundary, use the agent's native user-choice tool
38
+ whenever available to offer: confirm target stage, hand off to another agent, or its
39
+ free-form Other input. Plain-text numbered choices are fallback only. `auto_mode` only
40
+ waives prompts when configured and explicitly requested by the user; it never changes scope
41
+ or delivery form.
38
42
  - ANALYSIS must follow template-first: read `.easy-coding/templates/dev-spec-skeleton.md` then
39
43
  write its exact content to the task's dev-spec.md as the FIRST tool calls, then fill sections
40
44
  incrementally via edits. Reply to the user with the complete dev-spec.md content — never a
41
45
  summary table or custom format.
42
46
  - VERIFICATION is a hard gate: lint + typecheck + test must pass on fresh evidence, and
43
47
  coverage must match the test strategy, before a task can complete.
44
- - Archive (memory flow) runs only after explicit user acceptance — an unaccepted task's
45
- memory is dirty data.
48
+ - MEMORY combines short-memory creation and the conditional long-memory gate. Archive runs
49
+ only after explicit user acceptance — an unaccepted task's memory is dirty data.
46
50
  - NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.
47
51
  - All cross-platform modules (skills, hooks, references) must use universal agent protocols.
48
52
  Do not rely on any specific agent's proprietary conventions unless the module is explicitly
@@ -52,8 +56,8 @@ First run `/ec-init`; daily work goes through `/ec-workflow`.
52
56
  ## Runtime contract
53
57
 
54
58
  - Workflow state operations go through `{{platform_config_dir}}/hooks/easy_coding_state.py`;
55
- do not hand-edit session files, `current_task`, task `status`, `stage_history`, or
56
- `last_agent`.
59
+ do not hand-edit session files, `current_task`, task `status`, `stage_history`,
60
+ `pending_transition`, `memory_progress`, or `last_agent`.
57
61
  - The hook injects `[easy-coding:session-file:P]`; pass that path to the state script with
58
62
  `--session-file <P>` when changing the current task or stage.
59
63
  - Workflow session files live at `{{workflow_state_path}}`; the CLI only installs files and
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  memory_schema: 2
3
3
  id: SM-YYYYMMDD-001
4
+ source_task: MM-DD-task-slug
4
5
  date: YYYY-MM-DD
5
6
  task_type: feature | bugfix | refactor | perf | doc | workflow
6
7
  project_mode: startup | iteration
@@ -20,6 +21,7 @@ target_long: BUSINESS | TECHNICAL | BOTH | NONE
20
21
 
21
22
  > This template defines the format for files under `.easy-coding/memory/short/`.
22
23
  > File naming convention: `{NNN}_{YYYYMMDD}_{smart_name}.md`
24
+ > `source_task` must exactly match the current workflow task id from `task.json`.
23
25
  > Short memories are immutable after creation — they serve as a sliding window of recent
24
26
  > details and a buffer for long-term distillation candidates.
25
27
  > When short memories reach the threshold (default 10), the newest 5 are kept as recent