guardian-framework 0.1.27 → 0.1.28

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/dist/cli.js CHANGED
@@ -1335,7 +1335,7 @@ __export(exports_package, {
1335
1335
  bin: () => bin,
1336
1336
  author: () => author
1337
1337
  });
1338
- var name = "guardian-framework", version = "0.1.27", description = "Token-optimized agentic framework scaffolder with pi-first architecture", type = "module", main = "dist/exports.js", exports, types = "dist/exports.d.ts", bin, files, engines, scripts, publishConfig, pi, repository, homepage = "https://github.com/arman-jalili/guardian-framework#readme", bugs, dependencies, devDependencies, keywords, author = "Arman Wolkensteiner-Jalili", license = "MIT", package_default;
1338
+ var name = "guardian-framework", version = "0.1.28", description = "Token-optimized agentic framework scaffolder with pi-first architecture", type = "module", main = "dist/exports.js", exports, types = "dist/exports.d.ts", bin, files, engines, scripts, publishConfig, pi, repository, homepage = "https://github.com/arman-jalili/guardian-framework#readme", bugs, dependencies, devDependencies, keywords, author = "Arman Wolkensteiner-Jalili", license = "MIT", package_default;
1339
1339
  var init_package = __esm(() => {
1340
1340
  exports = {
1341
1341
  ".": {
package/dist/exports.js CHANGED
@@ -995,7 +995,7 @@ __export(exports_package, {
995
995
  bin: () => bin,
996
996
  author: () => author
997
997
  });
998
- var name = "guardian-framework", version = "0.1.27", description = "Token-optimized agentic framework scaffolder with pi-first architecture", type = "module", main = "dist/exports.js", exports, types = "dist/exports.d.ts", bin, files, engines, scripts, publishConfig, pi, repository, homepage = "https://github.com/arman-jalili/guardian-framework#readme", bugs, dependencies, devDependencies, keywords, author = "Arman Wolkensteiner-Jalili", license = "MIT", package_default;
998
+ var name = "guardian-framework", version = "0.1.28", description = "Token-optimized agentic framework scaffolder with pi-first architecture", type = "module", main = "dist/exports.js", exports, types = "dist/exports.d.ts", bin, files, engines, scripts, publishConfig, pi, repository, homepage = "https://github.com/arman-jalili/guardian-framework#readme", bugs, dependencies, devDependencies, keywords, author = "Arman Wolkensteiner-Jalili", license = "MIT", package_default;
999
999
  var init_package = __esm(() => {
1000
1000
  exports = {
1001
1001
  ".": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "guardian-framework",
3
- "version": "0.1.27",
3
+ "version": "0.1.28",
4
4
  "description": "Token-optimized agentic framework scaffolder with pi-first architecture",
5
5
  "type": "module",
6
6
  "main": "dist/exports.js",
@@ -456,6 +456,35 @@ class PipelineManager {
456
456
 
457
457
  if (this.state.currentItemIndex >= this.state.items.length) {
458
458
  this.state.status = "done";
459
+
460
+ // Auto-advance roadmap when module epic completes
461
+ const roadmapFile = join(this.cwd, ".pi/.guardian-roadmap-state.json");
462
+ if (existsSync(roadmapFile)) {
463
+ try {
464
+ const roadmap = JSON.parse(readFileSync(roadmapFile, "utf-8"));
465
+ const epicName = this.state.name;
466
+ const currentPhase = roadmap.phases?.[roadmap.currentPhaseIndex];
467
+ if (currentPhase && epicName) {
468
+ // Mark module as completed
469
+ const completed = new Set(currentPhase.completedModules || []);
470
+ completed.add(epicName);
471
+ currentPhase.completedModules = Array.from(completed);
472
+
473
+ // Check if all modules done → mark phase done
474
+ const allDone = currentPhase.modules.every(
475
+ (m: { name: string }) => completed.has(m.name),
476
+ );
477
+ if (allDone) {
478
+ currentPhase.status = "done";
479
+ }
480
+
481
+ roadmap.updatedAt = new Date().toISOString();
482
+ writeFileSync(roadmapFile, JSON.stringify(roadmap, null, 2));
483
+ }
484
+ } catch (err) {
485
+ // Silently fail — roadmap update is best-effort
486
+ }
487
+ }
459
488
  }
460
489
  }
461
490
 
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2026-07-03T11:06:29Z",
2
+ "timestamp": "2026-07-03T12:38:11Z",
3
3
  "mode": "all",
4
4
  "stages_run": [],
5
5
  "summary": {