aienvmp 0.1.60 → 0.1.61

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/BUGFIXES.md CHANGED
@@ -4,6 +4,12 @@ Short record of bugs, fixes, and follow-up checks.
4
4
 
5
5
  ## 2026-07-08
6
6
 
7
+ ### GitHub Action hid strict-plan guidance inside artifacts
8
+
9
+ - Issue: the Action produced `doctor.json` and `summary.md`, but the recommended local/CI strict commands were not visible as a dedicated Step Summary block.
10
+ - Fix: the Action now appends an `aienvmp strict plan` section sourced from advisory doctor metadata, using a temporary payload when `write-doctor-json` is disabled.
11
+ - Verification: Action regression tests check the strict-plan block, `strictPlan` source, CI command, and temporary-file fallback.
12
+
7
13
  ### CLI version was hardcoded
8
14
 
9
15
  - Issue: `npm run smoke` printed `0.1.0` after the package version changed.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.61
4
+
5
+ - Added an `aienvmp strict plan` block to the GitHub Action Step Summary.
6
+ - Reused advisory `doctor --json` data so CI can show local and strict commands without forcing failure.
7
+ - Preserved `write-doctor-json: false` by using a temporary advisory doctor payload when only the summary needs strict guidance.
8
+ - Documented the Action Step Summary strict-plan surface in the README.
9
+ - Added regression coverage for the Action strict-plan summary contract.
10
+
3
11
  ## 0.1.60
4
12
 
5
13
  - Added `enforcement.strictPlan` to help AI agents and CI choose the narrowest explicit strict scope.
package/README.md CHANGED
@@ -98,7 +98,7 @@ aienvmp doctor --strict security|policy|coordination|all
98
98
  ## CI
99
99
 
100
100
  The GitHub Action writes status, summary, schema, doctor, plan, SBOM, and dashboard artifacts. `strict: "off"` reports warnings without failing the job.
101
- Use `doctor --json` or `context --json` to read `strictPlan` and choose the narrowest CI strict scope.
101
+ The Step Summary includes an `aienvmp strict plan` block so humans and AI agents can pick the narrowest CI strict scope without parsing the full artifacts.
102
102
 
103
103
  ```yaml
104
104
  - uses: soovwv/aienvmp@main
package/action.yml CHANGED
@@ -91,6 +91,38 @@ runs:
91
91
  fi
92
92
  fi
93
93
 
94
+ - name: Append strict plan summary
95
+ shell: bash
96
+ run: |
97
+ if [ "${{ inputs.write-summary }}" = "true" ] && [ -n "$GITHUB_STEP_SUMMARY" ]; then
98
+ mkdir -p "${{ inputs.directory }}/.aienvmp"
99
+ plan_source="${{ inputs.directory }}/.aienvmp/doctor.json"
100
+ if [ ! -f "$plan_source" ]; then
101
+ plan_source="$(mktemp)"
102
+ node "$GITHUB_ACTION_PATH/bin/aienvmp.js" doctor --dir "${{ inputs.directory }}" --json > "$plan_source"
103
+ fi
104
+ node - "$plan_source" "$GITHUB_STEP_SUMMARY" <<'NODE'
105
+ const fs = require("node:fs");
106
+
107
+ const [doctorPath, summaryPath] = process.argv.slice(2);
108
+ const doctor = JSON.parse(fs.readFileSync(doctorPath, "utf8"));
109
+ const plan = doctor.enforcement?.strictPlan || {};
110
+ const local = plan.localDefault || "aienvmp doctor --json";
111
+ const ci = plan.ciCommand || "aienvmp doctor --strict all --json";
112
+ const rule = plan.rule || "Strict failure is explicit only.";
113
+
114
+ fs.appendFileSync(summaryPath, [
115
+ "",
116
+ "## aienvmp strict plan",
117
+ "",
118
+ `- local: \`${local}\``,
119
+ `- ci: \`${ci}\``,
120
+ `- rule: ${rule}`,
121
+ ""
122
+ ].join("\n"));
123
+ NODE
124
+ fi
125
+
94
126
  - name: Doctor
95
127
  shell: bash
96
128
  run: |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aienvmp",
3
- "version": "0.1.60",
3
+ "version": "0.1.61",
4
4
  "description": "AI-first environment maps and lightweight runtime SBOMs for shared development machines.",
5
5
  "type": "module",
6
6
  "bin": {