@guanlin4924/devflow-pi 0.1.103 → 0.1.104

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
@@ -11,7 +11,7 @@ Devflow Pi 是一个面向项目研发交付的独立 OMP 产品入口,内置
11
11
  安装与启动:
12
12
 
13
13
  ```bash
14
- npm install -g @guanlin4924/devflow-pi@0.1.103
14
+ npm install -g @guanlin4924/devflow-pi@0.1.104
15
15
  cd /path/to/your-project
16
16
  devflow-pi init
17
17
  devflow-pi doctor
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@guanlin4924/devflow-pi",
3
- "version": "0.1.103",
3
+ "version": "0.1.104",
4
4
  "type": "module",
5
5
  "description": "Devflow 专项研发 Pi,基于固定版本 OMP Runtime 组装研发状态机、代码智能、设计、实现与质量门禁。",
6
6
  "license": "UNLICENSED",
@@ -176,6 +176,9 @@ def preflight(root: Path, feature: str, step: str, contract_path: str,
176
176
  elif producer == "existing":
177
177
  if not input_present(path):
178
178
  issues.append({"code": "MISSING_INPUT_FACT", "index": index, "path": relative})
179
+ elif path.is_dir():
180
+ # A rendered directory has no single-file fingerprint.
181
+ evidence.append({"kind": "input_collection", "path": relative})
179
182
  elif obligation.get("sha256") is not None and obligation.get("sha256") != sha256(path):
180
183
  issues.append({"code": "STALE_INPUT_FACT", "index": index, "path": relative})
181
184
  else:
@@ -40,7 +40,13 @@ def read_handoff(root: Path, relative: str, evidence: list[dict], issues: list[d
40
40
  except ValueError:
41
41
  issues.append({"code": "PREVIOUS_OUTPUT_MISSING", "path": output_relative})
42
42
  continue
43
- if not output_path.is_file():
43
+ if output_path.is_dir() and item.get("sha256") is None:
44
+ # Directory outputs (e.g. wireframes/screens) are recorded without a hash.
45
+ if review_preflight.input_present(output_path):
46
+ evidence.append({"kind": "previous_output_collection", "path": output_relative})
47
+ else:
48
+ issues.append({"code": "PREVIOUS_OUTPUT_MISSING", "path": output_relative})
49
+ elif not output_path.is_file():
44
50
  issues.append({"code": "PREVIOUS_OUTPUT_MISSING", "path": output_relative})
45
51
  elif item.get("sha256") != review_preflight.sha256(output_path):
46
52
  issues.append({"code": "PREVIOUS_OUTPUT_CHANGED", "path": output_relative})
package/src/constants.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export const PRODUCT_NAME = "Devflow Pi";
2
- export const PRODUCT_VERSION = "0.1.103";
2
+ export const PRODUCT_VERSION = "0.1.104";
3
3
  export const PROJECT_SCHEMA_VERSION = 1;
4
4
  export const OMP_RUNTIME_VERSION = "17.2.7";
5
5