rhachet-roles-ehmpathy 1.7.0 → 1.9.0

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.
Files changed (58) hide show
  1. package/dist/contract/commands/codegenBriefOptions.js +1 -1
  2. package/dist/contract/commands/codegenBriefOptions.js.map +1 -1
  3. package/dist/logic/roles/architect/.briefs/criteria.given_when_then.[seed].v3.md +87 -0
  4. package/dist/logic/roles/architect/.briefs/practices/prefer.env_access.prep_over_dev.md +12 -0
  5. package/dist/logic/roles/architect/getArchitectRole.d.ts +2 -0
  6. package/dist/logic/roles/architect/getArchitectRole.js +27 -0
  7. package/dist/logic/roles/architect/getArchitectRole.js.map +1 -0
  8. package/dist/logic/roles/bhrain/getBhrainRole.js +19 -14
  9. package/dist/logic/roles/bhrain/getBhrainRole.js.map +1 -1
  10. package/dist/logic/roles/ecologist/getEcologistRole.js +12 -7
  11. package/dist/logic/roles/ecologist/getEcologistRole.js.map +1 -1
  12. package/dist/logic/roles/getRoleRegistry.js +2 -0
  13. package/dist/logic/roles/getRoleRegistry.js.map +1 -1
  14. package/dist/logic/roles/mechanic/.briefs/architecture/directional-dependencies.md +49 -40
  15. package/dist/logic/roles/mechanic/.briefs/criteria.practices/never.term.script.md +7 -0
  16. package/dist/logic/roles/mechanic/.briefs/criteria.practices/prefer.emojis.chill_nature.md +24 -0
  17. package/dist/logic/roles/mechanic/.briefs/criteria.practices/prefer.jq.over_alt.[demo].md +29 -0
  18. package/dist/logic/roles/mechanic/.briefs/criteria.practices/prefer.terraform.[criteria].md +4 -0
  19. package/dist/logic/roles/mechanic/.briefs/criteria.practices/prefer.terraform.[seed].md +17 -0
  20. package/dist/logic/roles/mechanic/.briefs/criteria.practices/require.dependency.pinned_versions.md +3 -0
  21. package/dist/logic/roles/mechanic/.briefs/criteria.practices/require.idempotency.md +33 -0
  22. package/dist/logic/roles/mechanic/.briefs/criteria.practices/require.knowledge.externalized.md +17 -0
  23. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.contract.inputs.nameargs/bad-practice/forbid.positional-args.md +43 -0
  24. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.contract.inputs.nameargs/best-practice/require.namedargs.md +6 -0
  25. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.declarative/.readme.md +0 -0
  26. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.declarative/best-practice/declastruct.[demo].md +485 -0
  27. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.domain.objects/bad-practices/blocker.has.attributes.nullable.md +13 -0
  28. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.domain.objects/bad-practices/blocker.has.attributes.undefined.md +15 -0
  29. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.domain.objects/bad-practices/blocker.refs.immuatble.md +9 -0
  30. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.domain.objects/best-practice/ref.package.domain-objects.[readme].md +585 -0
  31. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.domain.operations/best-practice/require.sync.names.md +14 -0
  32. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.errors.failfast/bad-practices/forbid.hide_errors.md +13 -0
  33. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.errors.failfast/best-practice/require.fail_fast.[demo].shell.md +17 -0
  34. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.errors.failfast/best-practice/require.fail_fast.md +28 -0
  35. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.repo.structure/best-practice/directional-dependencies.md +82 -0
  36. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.repo.structure/best-practice/dot-test-and-dot-temp.md +20 -0
  37. package/dist/logic/roles/mechanic/.briefs/patterns/code.prod.typescript.utils/best-practice/ref.package.as-command.[tips].md +7 -0
  38. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.acceptance/best-practice/blackbox.md +5 -0
  39. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.run.[lesson].md +18 -0
  40. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.use.[lesson].md +20 -0
  41. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.write.[lesson].md +3 -0
  42. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.write.[lesson].on_scope.for_integ.md +8 -0
  43. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.write.[lesson].on_scope.for_units.md +9 -0
  44. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/howto.write.bdd.[lesson].md +280 -0
  45. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/prefer.datadriven.md +41 -0
  46. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/ref.test-fns.[readme].md +185 -0
  47. package/dist/logic/roles/mechanic/.briefs/patterns/code.test.howto/best-practice/whento.snapshots.[lesson].md +23 -0
  48. package/dist/logic/roles/mechanic/.briefs/patterns/lang.terms/.readme.md +1 -0
  49. package/dist/logic/roles/mechanic/.briefs/patterns/lang.terms/domain=practices.terms=forbid_prefer_desire_require.md +13 -0
  50. package/dist/logic/roles/mechanic/.briefs/patterns/lang.terms/domain=software.terms=prodcode_vs_testcode.md +7 -0
  51. package/dist/logic/roles/mechanic/.briefs/patterns/lang.tones/.readme.md +3 -0
  52. package/dist/logic/roles/mechanic/.briefs/patterns/lang.tones/prefer.chill-nature.md +0 -0
  53. package/dist/logic/roles/mechanic/.briefs/patterns/lang.tones/prefer.lowercase.md +0 -0
  54. package/dist/logic/roles/mechanic/getMechanicRole.js +7 -2
  55. package/dist/logic/roles/mechanic/getMechanicRole.js.map +1 -1
  56. package/dist/logic/roles/terminal.commander/getCommanderRole.js +7 -2
  57. package/dist/logic/roles/terminal.commander/getCommanderRole.js.map +1 -1
  58. package/package.json +2 -2
@@ -0,0 +1,23 @@
1
+ use snapshots whenever output artifacts are created
2
+
3
+ why?
4
+ - makes it easier to review in prs what is actually being produced
5
+ - e.g., visual spotcheck, make sure it looks good
6
+ - especially important when the output is userfacing (e.g., codegen, comms, etc)
7
+
8
+ - makes it easier to detect exactly what the impact of a change is
9
+ - most of the time its intended and the snapshot can just be updated
10
+ - sometimes though, the snapshot diff exposes critical differences that are blockers or nitpicks that need to be addressed
11
+
12
+
13
+ ---
14
+
15
+ critical:
16
+
17
+ use both
18
+ - a snapshot
19
+ - AND
20
+ - explicit assertions before the snapshot
21
+
22
+ snapshot is for observability in code reviews and aesthetic verification
23
+ assertions are for functional verification
@@ -0,0 +1 @@
1
+ practices on which terms to use to promote a ubiquitous language go here
@@ -0,0 +1,13 @@
1
+ these are the terms we use to describe how to use practices
2
+
3
+ forbid = search to ensure this was not done
4
+ - it's a bad practice
5
+ - it's a BLOCKER if detected
6
+
7
+ prefer = search for opportunities to do this
8
+ - it's a best practice, but not mandatory
9
+ - it's a NITPICK if detected
10
+
11
+ require = search for opportunities to do this
12
+ - it's a best practice, and is mandatory
13
+ - it's a BLOCKER if detected
@@ -0,0 +1,7 @@
1
+ prodcode = the product's code
2
+ - the code that produces the behavior users experience
3
+ - the code that gets shipped to production
4
+
5
+ testcode = the builder's code
6
+ - the code that verifies the behaviors users experience
7
+ - the code that runs at build time to protect production
@@ -0,0 +1,3 @@
1
+ briefs on what tones to use in writing goes here
2
+
3
+ tones impact how things are thought about, so they are important to curate
@@ -18,7 +18,12 @@ exports.ROLE_MECHANIC = rhachet_1.Role.build({
18
18
  Used to write and revise the actual logic that runs the system.
19
19
  `.trim(),
20
20
  traits: [],
21
- skills: [loopWrite_skill_1.SKILL_WRITE, getSkillCodePropose_1.SKILL_CODE_PROPOSE],
22
- briefs: { dir: __dirname + '/.briefs' },
21
+ skills: {
22
+ dirs: [{ uri: __dirname + '/.skills' }],
23
+ refs: [loopWrite_skill_1.SKILL_WRITE, getSkillCodePropose_1.SKILL_CODE_PROPOSE],
24
+ },
25
+ briefs: {
26
+ dirs: [{ uri: __dirname + '/.briefs' }],
27
+ },
23
28
  });
24
29
  //# sourceMappingURL=getMechanicRole.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getMechanicRole.js","sourceRoot":"","sources":["../../../../src/logic/roles/mechanic/getMechanicRole.ts"],"names":[],"mappings":";;;AAAA,qCAA+B;AAE/B,sEAAkE;AAClE,6DAAsD;AAEzC,QAAA,aAAa,GAAG,cAAI,CAAC,KAAK,CAAC;IACtC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;;;;;;;;GAQP,CAAC,IAAI,EAAE;IACR,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,CAAC,6BAAW,EAAE,wCAAkB,CAAC;IACzC,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,EAAE;CACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"getMechanicRole.js","sourceRoot":"","sources":["../../../../src/logic/roles/mechanic/getMechanicRole.ts"],"names":[],"mappings":";;;AAAA,qCAA+B;AAE/B,sEAAkE;AAClE,6DAAsD;AAEzC,QAAA,aAAa,GAAG,cAAI,CAAC,KAAK,CAAC;IACtC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE;;;;;;;;GAQP,CAAC,IAAI,EAAE;IACR,MAAM,EAAE,EAAE;IACV,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,EAAE,CAAC;QACvC,IAAI,EAAE,CAAC,6BAAW,EAAE,wCAAkB,CAAC;KACxC;IACD,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,EAAE,CAAC;KACxC;CACF,CAAC,CAAC"}
@@ -30,7 +30,12 @@ a helpful terminal commander, at your service
30
30
  brief: (0, getMechanicBrief_1.getMechanicBrief)('style.words.lowercase.md'),
31
31
  }),
32
32
  ],
33
- skills: [stepPlanCommand_skill_1.SKILL_COMMAND_PLAN, stepExecCommand_skill_1.SKILL_COMMAND_EXEC],
34
- briefs: { dir: __dirname + '/.briefs' },
33
+ skills: {
34
+ dirs: [],
35
+ refs: [stepPlanCommand_skill_1.SKILL_COMMAND_PLAN, stepExecCommand_skill_1.SKILL_COMMAND_EXEC],
36
+ },
37
+ briefs: {
38
+ dirs: [{ uri: __dirname + '/.briefs' }],
39
+ },
35
40
  });
36
41
  //# sourceMappingURL=getCommanderRole.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCommanderRole.js","sourceRoot":"","sources":["../../../../src/logic/roles/terminal.commander/getCommanderRole.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,6DAA0D;AAC1D,mEAAgE;AAChE,gFAA0E;AAC1E,gFAA0E;AAE7D,QAAA,cAAc,GAAG,cAAI,CAAC,KAAK,CAAC;IACvC,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,sBAAsB;IAC/B,MAAM,EAAE;;;;;;;GAOP,CAAC,IAAI,EAAE;IACR,MAAM,EAAE;QACN,mBAAS,CAAC,KAAK,CAAC;YACd,IAAI,EAAE,KAAK;YACX,MAAM,EAAE,iDAAiD;YACzD,KAAK,EAAE,IAAA,+BAAc,EAAC,cAAc,CAAC;SACtC,CAAC;QACF,mBAAS,CAAC,KAAK,CAAC;YACd,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,8CAA8C;YACtD,KAAK,EAAE,IAAA,mCAAgB,EAAC,0BAA0B,CAAC;SACpD,CAAC;KACH;IACD,MAAM,EAAE,CAAC,0CAAkB,EAAE,0CAAkB,CAAC;IAChD,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,EAAE;CACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"getCommanderRole.js","sourceRoot":"","sources":["../../../../src/logic/roles/terminal.commander/getCommanderRole.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,6DAA0D;AAC1D,mEAAgE;AAChE,gFAA0E;AAC1E,gFAA0E;AAE7D,QAAA,cAAc,GAAG,cAAI,CAAC,KAAK,CAAC;IACvC,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,sBAAsB;IAC/B,MAAM,EAAE;;;;;;;GAOP,CAAC,IAAI,EAAE;IACR,MAAM,EAAE;QACN,mBAAS,CAAC,KAAK,CAAC;YACd,IAAI,EAAE,KAAK;YACX,MAAM,EAAE,iDAAiD;YACzD,KAAK,EAAE,IAAA,+BAAc,EAAC,cAAc,CAAC;SACtC,CAAC;QACF,mBAAS,CAAC,KAAK,CAAC;YACd,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,8CAA8C;YACtD,KAAK,EAAE,IAAA,mCAAgB,EAAC,0BAA0B,CAAC;SACpD,CAAC;KACH;IACD,MAAM,EAAE;QACN,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,CAAC,0CAAkB,EAAE,0CAAkB,CAAC;KAC/C;IACD,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,EAAE,CAAC;KACxC;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "rhachet-roles-ehmpathy",
3
3
  "author": "ehmpathy",
4
4
  "description": "empathetic software construction roles and skills, via rhachet",
5
- "version": "1.7.0",
5
+ "version": "1.9.0",
6
6
  "repository": "ehmpathy/rhachet-roles-ehmpathy",
7
7
  "homepage": "https://github.com/ehmpathy/rhachet-roles-ehmpathy",
8
8
  "keywords": [
@@ -57,7 +57,7 @@
57
57
  "helpful-errors": "1.3.8",
58
58
  "inquirer": "12.7.0",
59
59
  "openai": "5.8.2",
60
- "rhachet": "1.10.0",
60
+ "rhachet": "1.12.1",
61
61
  "rhachet-artifact": "1.0.0",
62
62
  "rhachet-artifact-git": "1.1.0",
63
63
  "serde-fns": "1.2.0",