gcf-aif-ext 0.7.0 → 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/README.md CHANGED
@@ -50,6 +50,10 @@ Updating preserves `gcf/`, `cnlp.config.json` and the pre-commit hook. Run `ai-f
50
50
 
51
51
  On Windows, run `extension add` and `extension update` from PowerShell or cmd, not Git Bash: the installer unpacks with `tar`, and Git Bash's GNU tar reads `C:\…` as a remote host (`Cannot connect to C: resolve failed`). The Windows `tar.exe` handles it.
52
52
 
53
+ ### 0.7.1
54
+
55
+ - `gcf board --json`: a ready item's worktree with no run lock and no session mark is a run that stopped (a timeout, a stop, a crash), not a run: the item reads `running: false`, `resumable: true`, and keeps its moves; its next run resumes the worktree.
56
+
53
57
  ### 0.7.0
54
58
 
55
59
  - `priority:` on an item: a rank, lower runs sooner. `ai-factory gcf prioritize <id> <id> …` ranks items in that order in one commit; `item new --priority <n>`. `gcf board --json` lists ranked items first and carries `priority`.
package/extension.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/lee-to/ai-factory/2.x/schemas/extension.schema.json",
3
3
  "name": "gcf-aif-ext",
4
- "version": "0.7.0",
4
+ "version": "0.7.1",
5
5
  "description": "Game Context Framework for AI Factory",
6
6
  "skills": [
7
7
  "skills/gcf-init",
package/lib/board.js CHANGED
@@ -141,12 +141,12 @@ async function itemOf(projectDir, c, verified) {
141
141
  const id = String(c.data.id);
142
142
  // A trailer counts only while the item waits on main for its integrate.
143
143
  const ready = c.data.status === 'ready' && verified.has(id);
144
- // `running` and `verify` are not stored (§4): a live harness run, or a worktree of a ready
145
- // item, is a run; a trailer is a passed DoD.
146
- const running =
147
- runHolder(projectDir, id) !== null ||
148
- sessionActive(projectDir, id) ||
149
- (c.data.status === 'ready' && !ready && existsSync(worktreeOf(projectDir, id)));
144
+ // `running` and `verify` are not stored (§4): a live harness run lock or a fresh session mark
145
+ // is a run; a trailer is a passed DoD. A worktree with neither is a run that stopped (a
146
+ // timeout, a stop, a crash): the item is ready, and its next run resumes that worktree.
147
+ const running = runHolder(projectDir, id) !== null || sessionActive(projectDir, id);
148
+ const resumable =
149
+ !running && c.data.status === 'ready' && !ready && existsSync(worktreeOf(projectDir, id));
150
150
 
151
151
  return {
152
152
  id,
@@ -158,6 +158,7 @@ async function itemOf(projectDir, c, verified) {
158
158
  ...(c.data.severity ? { severity: c.data.severity } : {}),
159
159
  ...(c.data.blocked ? { blocked: c.data.blocked } : {}),
160
160
  running,
161
+ resumable,
161
162
  verified: ready,
162
163
  // What a board may offer (§4.1): nothing while a run drives the item.
163
164
  moves: running ? [] : movesOf(c.data),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gcf-aif-ext",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Game Context Framework for AI Factory",
5
5
  "type": "module",
6
6
  "license": "MIT",