guardian-framework 0.1.124 → 0.1.125

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
@@ -3202,7 +3202,7 @@ __export(exports_package, {
3202
3202
  bin: () => bin,
3203
3203
  author: () => author
3204
3204
  });
3205
- var name = "guardian-framework", version = "0.1.124", 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;
3205
+ var name = "guardian-framework", version = "0.1.125", 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;
3206
3206
  var init_package = __esm(() => {
3207
3207
  exports = {
3208
3208
  ".": {
package/dist/exports.js CHANGED
@@ -1987,7 +1987,7 @@ __export(exports_package, {
1987
1987
  bin: () => bin,
1988
1988
  author: () => author
1989
1989
  });
1990
- var name = "guardian-framework", version = "0.1.124", 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;
1990
+ var name = "guardian-framework", version = "0.1.125", 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;
1991
1991
  var init_package = __esm(() => {
1992
1992
  exports = {
1993
1993
  ".": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "guardian-framework",
3
- "version": "0.1.124",
3
+ "version": "0.1.125",
4
4
  "description": "Token-optimized agentic framework scaffolder with pi-first architecture",
5
5
  "type": "module",
6
6
  "main": "dist/exports.js",
@@ -1348,6 +1348,15 @@ export default function (pi: ExtensionAPI) {
1348
1348
  "8. **Ubiquitous Language** — Terms for this context from `.pi/domain/ubiquitous-language.md`",
1349
1349
  "9. **Dependencies** — Depends On + Used By",
1350
1350
  "10. **Implementation Sequence** — Ordered build list",
1351
+ "11. **Patterns & OOP Mapping** — for every tactical aggregate and application",
1352
+ " service, state the design pattern(s) it uses + a one-line rationale:",
1353
+ " Strategy (when a rule/algorithm has 2+ variants — fee/tax/gate policies),",
1354
+ " Factory (ONLY for complex aggregate creation), Specification (combinable",
1355
+ " business rules), Observer/domain events (cross-aggregate flows), record/DTO",
1356
+ " & value objects (immutables, @Embeddable). OOP: no anemic aggregates, no",
1357
+ " setters on roots, tell-don't-ask, CQS. Do NOT abstract speculatively — only",
1358
+ " introduce an interface/strategy when 2+ variants are known (curriculum rule).",
1359
+ " Ensure code stubs reflect the chosen patterns.",
1351
1360
  "",
1352
1361
  "### STEP 4: Generate Implementation Roadmap",
1353
1362
  "",
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2026-09-05T10:44:17Z",
2
+ "timestamp": "2026-09-05T10:50:53Z",
3
3
  "mode": "all",
4
4
  "stages_run": [],
5
5
  "summary": {
@@ -92,6 +92,12 @@ commands are per-language; hard gates (deterministic) live in
92
92
  service with no production caller outside its own module and outside tests
93
93
  is dead code: report it and require the Runtime-Integration issue. Evidence:
94
94
  `grep -rn "<ServiceName>" <src> | grep -v tests` per language.
95
+ - **R6 patterns & OOP appropriateness** — for each implemented aggregate/application
96
+ service, confirm the chosen pattern is justified: if/switch on type in
97
+ app/domain suggests Strategy (only when ≥2 known variants), complex creation
98
+ without a Factory, anemic aggregates (no behavior methods), setters on roots,
99
+ tell-don't-ask/CQS violations. Warn on speculative abstraction too (single
100
+ variant behind an interface). Evidence: `file:line` + the pattern rationale.
95
101
 
96
102
  ## Output
97
103
  Use format from `.pi/context/output-formats.md` → "Validation Report"