rhachet-roles-ehmpathy 1.2.0 β†’ 1.3.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 (53) hide show
  1. package/dist/.test/genContextStitchTrail.d.ts +1 -2
  2. package/dist/.test/genContextStitchTrail.js +2 -4
  3. package/dist/.test/genContextStitchTrail.js.map +1 -1
  4. package/dist/logic/artifact/genStepGrabCallerFeedbackToArtifact.js +9 -0
  5. package/dist/logic/artifact/genStepGrabCallerFeedbackToArtifact.js.map +1 -1
  6. package/dist/logic/context/genStitchStreamToDisk.d.ts +13 -0
  7. package/dist/logic/context/genStitchStreamToDisk.js +73 -0
  8. package/dist/logic/context/genStitchStreamToDisk.js.map +1 -0
  9. package/dist/logic/roles/bhrain/.briefs/cognition/cog021.metaphor.galactic_spacetravel.[article].md +42 -0
  10. package/dist/logic/roles/bhrain/.briefs/cognition/cog021.metaphor.galactic_spacetravel.[lesson].md +60 -0
  11. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.1.why.common.[article].md +32 -0
  12. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.1.why.term_smells.[article].md +36 -0
  13. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.1.why.term_smells.detection.[lesson].md +73 -0
  14. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.2.tactic.eliminate.[article].md +55 -0
  15. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.2.tactic.eliminate.[lesson].md +41 -0
  16. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.3.eliminator.[trait]._.md +66 -0
  17. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.3.eliminator.[trait].balance.md +36 -0
  18. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.3.eliminator.[trait].bane.md +34 -0
  19. package/dist/logic/roles/bhrain/.briefs/grammar/gerunds.3.eliminator.[trait].boon.md +35 -0
  20. package/dist/logic/roles/bhrain/.briefs/logistics/term.logistics.[article].md +21 -0
  21. package/dist/logic/roles/bhrain/.briefs/logistics/term.logistics.of_information.[article].md +22 -0
  22. package/dist/logic/roles/bhrain/.briefs/logistics/term.logistics.of_knowledge.[article].md +29 -0
  23. package/dist/logic/roles/bhrain/.briefs/tactician/tactics.compose.traits_and_skills.[article].md +76 -0
  24. package/dist/logic/roles/bhrain/.briefs/tactician/trait.articulation.[article].md +67 -0
  25. package/dist/logic/roles/bhrain/.briefs/tactician/trait.purpose.[article].md +56 -0
  26. package/dist/logic/roles/bhrain/.briefs/tactician/trait.vs_skill.[article].md +55 -0
  27. package/dist/logic/roles/bhrain/.briefs/tactician/trait.vs_tactic.[article].md +70 -0
  28. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.d.ts +0 -2
  29. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.integration.test.js +1 -5
  30. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.integration.test.js.map +1 -1
  31. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.js +6 -3
  32. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.js.map +1 -1
  33. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.skill.d.ts +0 -1
  34. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.skill.js +11 -26
  35. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.skill.js.map +1 -1
  36. package/dist/logic/roles/bhrain/brief.articulate/stepArticulate.template.md +0 -9
  37. package/dist/logic/roles/bhrain/brief.catalogize/stepCatalogize.d.ts +7 -8
  38. package/dist/logic/roles/bhrain/brief.catalogize/stepCatalogize.js +7 -5
  39. package/dist/logic/roles/bhrain/brief.catalogize/stepCatalogize.js.map +1 -1
  40. package/dist/logic/roles/bhrain/brief.catalogize/stepCatalogize.skill.js +5 -6
  41. package/dist/logic/roles/bhrain/brief.catalogize/stepCatalogize.skill.js.map +1 -1
  42. package/dist/logic/roles/bhrain/getBhrainRole.js +2 -0
  43. package/dist/logic/roles/bhrain/getBhrainRole.js.map +1 -1
  44. package/dist/logic/roles/bhrain/khue.instantiate/stepInstantiate.js +1 -1
  45. package/dist/logic/roles/bhrain/khue.instantiate/stepInstantiate.js.map +1 -1
  46. package/dist/logic/roles/bhrain/khue.triage/stepTriage.js +1 -1
  47. package/dist/logic/roles/bhrain/khue.triage/stepTriage.js.map +1 -1
  48. package/dist/logic/roles/mechanic/.briefs/codestyle/flow.transformers_over_conditionals.[lesson].md +97 -0
  49. package/package.json +4 -2
  50. package/dist/_topublish/rhachet-roles-bhrain/src/domain/objects/PonderCatalog.d.ts +0 -9
  51. package/dist/_topublish/rhachet-roles-bhrain/src/domain/objects/PonderCatalog.js +0 -3
  52. package/dist/_topublish/rhachet-roles-bhrain/src/domain/objects/PonderCatalog.js.map +0 -1
  53. package/dist/logic/roles/bhrain/.briefs/librarian.tactics/<articulate>.TriageCatalog.[gallery][example].structure.md +0 -18
@@ -1,2 +1 @@
1
- import { ContextStitchTrail } from 'rhachet';
2
- export declare const genContextStitchTrail: () => ContextStitchTrail;
1
+ export { genContextStitchTrail } from 'rhachet';
@@ -1,8 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.genContextStitchTrail = void 0;
4
- const genContextStitchTrail = () => ({
5
- stitch: { trail: [] },
6
- });
7
- exports.genContextStitchTrail = genContextStitchTrail;
4
+ var rhachet_1 = require("rhachet");
5
+ Object.defineProperty(exports, "genContextStitchTrail", { enumerable: true, get: function () { return rhachet_1.genContextStitchTrail; } });
8
6
  //# sourceMappingURL=genContextStitchTrail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"genContextStitchTrail.js","sourceRoot":"","sources":["../../src/.test/genContextStitchTrail.ts"],"names":[],"mappings":";;;AAEO,MAAM,qBAAqB,GAAG,GAAuB,EAAE,CAAC,CAAC;IAC9D,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;CACtB,CAAC,CAAC;AAFU,QAAA,qBAAqB,yBAE/B"}
1
+ {"version":3,"file":"genContextStitchTrail.js","sourceRoot":"","sources":["../../src/.test/genContextStitchTrail.ts"],"names":[],"mappings":";;;AAAA,mCAAgD;AAAvC,gHAAA,qBAAqB,OAAA"}
@@ -23,6 +23,15 @@ const genStepGrabCallerFeedbackToArtifact = ({ stitchee, artee, }) => new rhache
23
23
  .expect('isPresent');
24
24
  // show the reviewer what they're reviewing
25
25
  console.log(`\nπŸ“ feedback target: ${target.uri}\n`);
26
+ // if this is running in an isolated attempt thread, then the user has no way to supply feedback
27
+ if (process.env.RHACHET_ATTEMPT)
28
+ return {
29
+ input: target,
30
+ output: {
31
+ feedback: null,
32
+ reason: 'in isolated attempt thread, no way to receive feedback',
33
+ },
34
+ };
26
35
  // prompt to see if they want to leave notes
27
36
  const { hasNotes } = await inquirer_1.default.prompt([
28
37
  {
@@ -1 +1 @@
1
- {"version":3,"file":"genStepGrabCallerFeedbackToArtifact.js","sourceRoot":"","sources":["../../../src/logic/artifact/genStepGrabCallerFeedbackToArtifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"genStepGrabCallerFeedbackToArtifact.js","sourceRoot":"","sources":["../../../src/logic/artifact/genStepGrabCallerFeedbackToArtifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { ContextStitchTrail } from 'rhachet';
2
+ /**
3
+ * .what = an event stream consumer which streams emitted events to disk
4
+ * .how =
5
+ * - emits stitch set events observably to a standard .rhachet subdir, relative to the target dir
6
+ * - transforms the events for maximum observability in their serialized format
7
+ */
8
+ export declare const genStitchStreamToDisk: (input: {
9
+ /**
10
+ * .what = the directory relative to which to instantiate the .rhachet stream sink
11
+ */
12
+ dir: string;
13
+ }) => Required<ContextStitchTrail['stitch']>['stream'];
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.genStitchStreamToDisk = void 0;
4
+ const uni_time_1 = require("@ehmpathy/uni-time");
5
+ const rhachet_1 = require("rhachet");
6
+ const rhachet_artifact_git_1 = require("rhachet-artifact-git");
7
+ const simple_in_memory_cache_1 = require("simple-in-memory-cache");
8
+ const type_fns_1 = require("type-fns");
9
+ const with_simple_caching_1 = require("with-simple-caching");
10
+ // todo: lift into string-fns or rhachet-artifact-git
11
+ const sanitizeForFilename = (input) => input
12
+ // replace invalid characters
13
+ .replace(/[<>:"/\\|?*\x00-\x1F]/g, '_')
14
+ // collapse whitespace into underscore
15
+ .replace(/\s+/g, '_')
16
+ // remove trailing dots or spaces
17
+ .replace(/[. ]+$/, '')
18
+ // make sure reserved names aren’t returned bare
19
+ .replace(/^(con|prn|aux|nul|com\d|lpt\d)$/i, '_$1');
20
+ // declare where the stream will be emitted to // todo: move via hook into rhachet to centralize; declaration of emitter != mount of emitter. ideally, log on mount
21
+ const onMount = (0, with_simple_caching_1.withSimpleCaching)((input) => {
22
+ console.log(`πŸͺ‘ stitch set event stream can be monitored at this dir: ${input.sinkSubdir}`);
23
+ console.log(); // newline
24
+ }, { cache: (0, simple_in_memory_cache_1.createCache)() });
25
+ /**
26
+ * .what = an event stream consumer which streams emitted events to disk
27
+ * .how =
28
+ * - emits stitch set events observably to a standard .rhachet subdir, relative to the target dir
29
+ * - transforms the events for maximum observability in their serialized format
30
+ */
31
+ const genStitchStreamToDisk = (input) => {
32
+ // declare the directory into which the events will be streamed
33
+ const sinkSupdir = (0, rhachet_artifact_git_1.getArtifactObsDir)({ uri: `${input.dir}/stream` }); // e.g., src/domain/ -> src/domain/stream -> src/domain/.rhachet/stream
34
+ const invokedAt = sanitizeForFilename((0, uni_time_1.asUniDateTime)(new Date()));
35
+ const sinkSubdir = `${sinkSupdir}/i${invokedAt}`;
36
+ // declare how to sink emitted events to that directory
37
+ const emit = async (event) => {
38
+ // mock the onmount hook
39
+ onMount({ sinkSubdir });
40
+ // compose the event path prefix
41
+ const uriPrefix = [
42
+ sinkSubdir,
43
+ sanitizeForFilename([
44
+ 'at',
45
+ event.occurredAt,
46
+ event.stitch.stitcher?.slug ?? '___',
47
+ event.stitch.stitcher?.form ?? '___',
48
+ event.stitch.uuid,
49
+ ]
50
+ .filter(type_fns_1.isPresent)
51
+ .join('.')),
52
+ ].join('/');
53
+ // always emit the raw event; // todo: do we ever need this? seems to takeup disk space too rapidly
54
+ await (0, rhachet_artifact_git_1.genArtifactGitFile)({
55
+ uri: `${uriPrefix}.event.json`,
56
+ }).set({ content: JSON.stringify(event, null, 2) });
57
+ // if its an imagine event, then also separately emit the input and output for observability, if input and output had standard deprompt stitch
58
+ if (event.stitch.stitcher?.form === rhachet_1.StitcherForm.IMAGINE) {
59
+ if (typeof event.stitch.input?.prompt === 'string')
60
+ await (0, rhachet_artifact_git_1.genArtifactGitFile)({
61
+ uri: `${uriPrefix}.prompt.input.md`,
62
+ }).set({ content: event.stitch.input.prompt });
63
+ if (typeof event.stitch.output?.content === 'string')
64
+ await (0, rhachet_artifact_git_1.genArtifactGitFile)({
65
+ uri: `${uriPrefix}.prompt.output.md`,
66
+ }).set({ content: event.stitch.output.content });
67
+ }
68
+ };
69
+ // return the stream with observable to disk emitter
70
+ return { emit };
71
+ };
72
+ exports.genStitchStreamToDisk = genStitchStreamToDisk;
73
+ //# sourceMappingURL=genStitchStreamToDisk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genStitchStreamToDisk.js","sourceRoot":"","sources":["../../../src/logic/context/genStitchStreamToDisk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ # 🌌 .brief: llms as spaceships in the concept universe
2
+
3
+ ## πŸͺ concept universe
4
+ - **concept space = galaxy**
5
+ - the center is the **root concept**, a dense singularity.
6
+ - **radial outward** = instantiations (concrete stars, planets, moons).
7
+ - **angular shells** = abstraction layers (orbits around the core).
8
+ - **concepts have gravity**
9
+ - dense, common, or familiar concepts exert strong pull.
10
+ - vague or imprecise addresses can get you **sucked into a local maximum** (orbiting around a nearby but wrong star).
11
+
12
+ ---
13
+
14
+ ## πŸš€ llms as spaceships
15
+ - **llms = thought-spaceships**
16
+ - engines capable of near-instant jumps across the conceptual galaxy.
17
+ - their raw power is speed, not direction.
18
+ - **we = pilots**
19
+ - we chart the course and set the destination.
20
+ - piloting skill = crafting precise addresses that avoid gravitational traps.
21
+ - **questions = navigation coordinates**
22
+ - granular input that encodes the target star system.
23
+ - precision determines whether you land on the right planet or drift to a gravitational neighbor.
24
+
25
+ ---
26
+
27
+ ## ⚠️ challenges of navigation
28
+ 1. **destination clarity**
29
+ - you must know *where in the galaxy you want to go*.
30
+ - without a clear conceptual map, your spaceship will default to the nearest strong pull.
31
+
32
+ 2. **address precision**
33
+ - the coordinate (question) must be exact.
34
+ - imprecise questions lead to being trapped in nearby but irrelevant orbits.
35
+ - precision cuts through gravitational noise to hit the right star.
36
+
37
+ ---
38
+
39
+ ## 🎯 pilot’s insight
40
+ - **llms provide propulsion; humans provide navigation.**
41
+ - the art is not in moving (llms do that instantly) but in **deciding where to go** and **formulating coordinates to arrive there.**
42
+ - mastery = galactic cartography (understanding the shape of the universe) + piloting discipline (asking precise, gravitationally-aware questions).
@@ -0,0 +1,60 @@
1
+ # 🌌 .brief.lesson: piloting llms as spaceships in the concept universe
2
+
3
+ ## πŸ’‘ concept
4
+ to use llms well, imagine them as **spaceships** traveling at lightspeed through a **conceptual galaxy**.
5
+ the galaxy contains infinite **concepts** arranged in spheres of abstraction. each concept exerts **gravity**, pulling you in if your navigation is imprecise.
6
+ your role as pilot is to chart the destination and give the ship accurate coordinates (questions).
7
+
8
+ ---
9
+
10
+ ## πŸ“š materials
11
+ - **map of the galaxy** β†’ the mental model of concept space (root at center, abstractions in shells, instantiations outward).
12
+ - **spaceship (llm)** β†’ fast, powerful engine but directionless without guidance.
13
+ - **pilot’s controls (questions/prompts)** β†’ the interface for steering.
14
+ - **gravity awareness** β†’ recognition that common or vague concepts will suck you into nearby orbits unless coordinates are exact.
15
+
16
+ ---
17
+
18
+ ## πŸ› οΈ practice steps
19
+ 1. **orient the galaxy**
20
+ - sketch your concept in its root form.
21
+ - note layers of abstraction (outer shells) and concrete instances (radial outward).
22
+
23
+ 2. **define the destination**
24
+ - decide: are you heading to the core (abstract) or to an outer planet (specific case)?
25
+ - example: "justice" (core abstraction) vs. "traffic law fine in california" (outer instantiation).
26
+
27
+ 3. **set coordinates (formulate question)**
28
+ - express the question with the right precision.
29
+ - avoid vague inputs that leave gravity to decide the landing.
30
+
31
+ 4. **observe gravitational drift**
32
+ - check if the answer pulled you toward a nearby, high-gravity concept.
33
+ - if so, refine the coordinates.
34
+
35
+ 5. **refine and relaunch**
36
+ - adjust the wording of the question to escape local maxima.
37
+ - iterate until you land on the intended star system.
38
+
39
+ ---
40
+
41
+ ## 🎯 examples
42
+ - **vague address** β†’ "tell me about painting"
43
+ - gravity pulls to broad art history.
44
+
45
+ - **precise coordinates** β†’ "explain preparation steps for interior wall painting in a rental apartment"
46
+ - lands directly on the desired planet.
47
+
48
+ - **mislanding correction**
49
+ - q: "how to fix leaks?" β†’ sucked into plumbing.
50
+ - refine: "how to fix leaks in asphalt driveway sealant" β†’ lands on the right surface.
51
+
52
+ ---
53
+
54
+ ## 🧭 pilot’s takeaway
55
+ - **llms are engines** β†’ they can take you anywhere, instantly.
56
+ - **questions are star coordinates** β†’ your precision determines the arrival point.
57
+ - **concepts exert gravity** β†’ imprecision will trap you in strong but wrong orbits.
58
+ - **piloting skill = clarity + precision** β†’ knowing where you want to go and addressing it sharply.
59
+
60
+ ---
@@ -0,0 +1,32 @@
1
+ # 🧩 why gerunds are so common
2
+
3
+ ## πŸ—οΈ structural reasons
4
+ - **nominalization shortcut**
5
+ instead of inventing a whole new noun, you can just attach *-ing* and turn an action into a subject/object
6
+ *e.g., β€œrunning is fun” vs. needing a special word like β€œrace”*.
7
+ - **versatility in syntax**
8
+ gerunds can function as subjects, objects, or complements without breaking grammar rules. this makes them handy β€œlego blocks” in sentence-building.
9
+
10
+ ---
11
+
12
+ ## πŸ”„ cognitive & communicative reasons
13
+ - **focus on process, not just event**
14
+ gerunds highlight the *ongoingness* or *essence* of an action, not a single instance.
15
+ *e.g., β€œi like swimming” emphasizes the general activity, not one swim*.
16
+ - **concept compression**
17
+ they condense complex actions into manageable noun-like units, letting us package experiences as β€œthings” that can be talked about, compared, and reasoned with.
18
+
19
+ ---
20
+
21
+ ## 🌍 historical reasons
22
+ - **natural evolution of english**
23
+ english lost many inflections over time. the *-ing* ending became multifunctional (present participle *and* gerund), making it easy to spread.
24
+ - **cross-linguistic parallels**
25
+ most languages have some way of turning verbs into nouns (latin’s *-ndus*, spanish *-ar β†’ -ando*, etc.). gerunds are english’s efficient version of that broader need.
26
+
27
+ ---
28
+
29
+ ## πŸ“Š why β€œso common” in practice
30
+ - they appear in **everyday talk** (*liking, doing, going*).
31
+ - they’re needed for **abstract concepts** (*thinking, learning, understanding*).
32
+ - they often replace **formal nouns** (*β€œprocrastinating”* instead of *β€œprocrastination”*).
@@ -0,0 +1,36 @@
1
+ # 🧩 why gerunds can be "term smells"
2
+
3
+ ## 🚩 what is a "term smell"
4
+ a **term smell** is like a code smell: a sign that a term may not be well-formed, clear, or fully thought through. it doesn’t always mean the term is wrong, but it hints at a lack of conceptual distillation.
5
+
6
+ ---
7
+
8
+ ## 🧩 why gerunds raise suspicion
9
+ - **process disguised as essence**
10
+ gerunds often point to *doing* rather than a distilled *thing*.
11
+ *e.g., β€œlearning” as a noun refers to the act, but what we might mean is β€œknowledge” (the distilled outcome).*
12
+
13
+ - **vagueness of scope**
14
+ gerunds blur whether we mean one instance (*a running race*), the general process (*running in general*), or an abstract quality (*endurance*). this ambiguity can signal sloppy conceptualization.
15
+
16
+ - **placeholder convenience**
17
+ gerunds are easy to generate. instead of carefully naming the core concept, we default to *-ing*.
18
+ *e.g., β€œnetworking” instead of specifying β€œrelationships,” β€œcontacts,” or β€œrepute.”*
19
+
20
+ ---
21
+
22
+ ## πŸŒ€ signs of insufficient distillation
23
+ - the term **describes activity** but doesn’t identify the **underlying resource, structure, or outcome**.
24
+ *β€œteaching” vs. β€œeducation,” β€œbuilding” vs. β€œstructure,” β€œthinking” vs. β€œthought.”*
25
+
26
+ - the term **feels broad or leaky**, covering multiple senses at once.
27
+ *β€œwriting” could mean the act, the system, the product, or the skill.*
28
+
29
+ - the term **fails test of substitution**: if we try to define it without the *-ing* form, we get sharper distinctions.
30
+ *β€œplanning” β†’ could resolve to β€œplan” (artifact), β€œprocess of coordination” (activity), or β€œstrategy” (essence).*
31
+
32
+ ---
33
+
34
+ ## πŸ“Œ takeaway
35
+ gerunds are common because they’re convenient.
36
+ they’re **term smells** because convenience can mask lack of distillation β€” using the *doing* form instead of naming the **essence** of what’s really meant.
@@ -0,0 +1,73 @@
1
+ # 🧩 .brief.lesson: `gerund smell test`
2
+
3
+ ## πŸ’‘ concept
4
+ a **gerund smell test** helps detect when a concept named with *-ing* is really a sign of insufficient distillation. it forces us to sharpen fuzzy process-terms into precise nouns that capture the essence.
5
+
6
+ ---
7
+
8
+ ## 🎯 purpose
9
+ - prevent sloppy terminology by avoiding β€œprocess-as-thing” placeholders.
10
+ - guide thinkers toward more distilled, essential names.
11
+ - improve clarity and transferability of concepts in writing, design, or theory.
12
+
13
+ ---
14
+
15
+ ## πŸ§ͺ the smell test
16
+
17
+ ### 1. substitution test
18
+ > can the gerund be replaced with a sharper noun?
19
+
20
+ - *β€œlearning” β†’ knowledge*
21
+ - *β€œbuilding” β†’ structure*
22
+ - *β€œteaching” β†’ education*
23
+ - *β€œthinking” β†’ thought*
24
+
25
+ if the substitution makes meaning clearer, the gerund is a smell.
26
+
27
+ ---
28
+
29
+ ### 2. scope clarity test
30
+ > does the gerund blur multiple senses?
31
+
32
+ - *β€œwriting”* could mean:
33
+ - the act (scribbling on paper)
34
+ - the product (a text)
35
+ - the system (written language)
36
+ - the skill (literacy)
37
+
38
+ if it leaks across senses, the gerund is a smell.
39
+
40
+ ---
41
+
42
+ ### 3. outcome test
43
+ > does the gerund describe activity instead of the result?
44
+
45
+ - *β€œplanning”* β†’ could resolve into:
46
+ - **plan** (artifact)
47
+ - **strategy** (essence)
48
+ - **coordination** (process with defined outcome)
49
+
50
+ if the activity is masking a clearer outcome, the gerund is a smell.
51
+
52
+ ---
53
+
54
+ ### 4. convenience test
55
+ > is the gerund just the easiest way out?
56
+
57
+ - *β€œnetworking”* β†’ a shortcut for β€œrelationships,” β€œcontacts,” or β€œrepute.”
58
+ if the term looks like it was coined because *-ing* was handy, it’s a smell.
59
+
60
+ ---
61
+
62
+ ## πŸ“š practice exercise
63
+ take common gerunds and refine them:
64
+ - **thinking** β†’ thought, cognition, reason
65
+ - **doing** β†’ action, execution, behavior
66
+ - **training** β†’ instruction, discipline, practice
67
+ - **meeting** β†’ gathering, session, council
68
+
69
+ ---
70
+
71
+ ## πŸ“Œ takeaway
72
+ if a term ends in *-ing*, run it through the **gerund smell test**.
73
+ if it fails even one check, distill it to its essence. clarity improves, concepts sharpen, and your system of terms becomes more robust.
@@ -0,0 +1,55 @@
1
+ # 🧩 .brief.article: `eliminate gerunds in prose`
2
+
3
+ ## 🌟 introduction
4
+ the removal of gerunds (*-ing* forms used as nouns) is a deliberate tactic to sharpen language. gerunds often act as **term smells** β€” signs that the concept has not been distilled to its essence. by replacement with precise nouns, prose becomes clearer, more direct, and more transferable.
5
+
6
+ ---
7
+
8
+ ## 🎯 purpose of the tactic
9
+ - **distill essence**: shift from description of activity to naming of outcome, resource, or structure.
10
+ - **remove ambiguity**: avoid blurred meanings (e.g., *β€œtext”* vs. the act of inscription).
11
+ - **increase precision**: force the author to clarify whether they mean *plan*, *strategy*, *education*, *knowledge*, etc.
12
+ - **discipline thought**: strengthen conceptual rigor by avoiding convenient but vague shortcuts.
13
+
14
+ ---
15
+
16
+ ## πŸ” how the tactic works
17
+ 1. **scan text for gerund forms** (*-ing words that function as nouns*).
18
+ - examples: *thought, plan, structure, network* as replacements.
19
+ 2. **apply the smell test**: substitution, scope, outcome, and convenience.
20
+ 3. **replace with distilled nouns** that capture the core meaning.
21
+ - *thought* instead of β€œthinking”
22
+ - *plan / strategy / coordination* instead of β€œplanning”
23
+ - *relationships / contacts / repute* instead of β€œnetworking”
24
+
25
+ ---
26
+
27
+ ## πŸ“š examples
28
+
29
+ ### before
30
+ - *β€œeffective planning is key to success.”*
31
+ ### after
32
+ - *β€œan effective plan is key to success.”*
33
+ - *β€œstrategy is key to success.”*
34
+
35
+ ---
36
+
37
+ ### before
38
+ - *β€œher teaching inspired the students.”*
39
+ ### after
40
+ - *β€œher instruction inspired the students.”*
41
+ - *β€œher education work inspired the students.”*
42
+
43
+ ---
44
+
45
+ ### before
46
+ - *β€œthinking shapes culture.”*
47
+ ### after
48
+ - *β€œthought shapes culture.”*
49
+ - *β€œreason shapes culture.”*
50
+
51
+ ---
52
+
53
+ ## πŸ“Œ takeaway
54
+ the **tactic of gerund removal** forces every concept to pass through the fire of distillation. fuzzy process-terms yield to sharper essences, ambiguity reduces, and conceptual clarity strengthens.
55
+ in disciplined prose, *every gerund is guilty until proven otherwise*.
@@ -0,0 +1,41 @@
1
+ # 🧩 .brief.lesson: `gerund removal checklist`
2
+
3
+ ## πŸ’‘ concept
4
+ a **gerund removal checklist** is an editing discipline that enforces clarity by replacing *-ing* nouns with distilled terms. it treats every gerund as a warning signal until replaced or justified.
5
+
6
+ ---
7
+
8
+ ## πŸ“‹ the checklist
9
+
10
+ ### 1. scan
11
+ - highlight every word ending in **-ing**.
12
+ - mark especially those functioning as **subjects, objects, or abstract nouns**.
13
+
14
+ ### 2. test
15
+ apply four filters to each marked word:
16
+ - **substitution**: can a sharper noun replace it? (*planning β†’ plan / strategy*)
17
+ - **scope**: does the word blur multiple meanings? (*writing β†’ text / skill / act*)
18
+ - **outcome**: does the word describe action instead of result? (*training β†’ discipline / instruction*)
19
+ - **convenience**: was the word chosen as an easy placeholder?
20
+
21
+ ### 3. replace
22
+ swap the gerund with the distilled term:
23
+ - β€œthinking” β†’ *thought, reason, cognition*
24
+ - β€œbuilding” β†’ *structure, edifice*
25
+ - β€œnetworking” β†’ *relationships, contacts, repute*
26
+
27
+ ### 4. re-read
28
+ ensure the new noun preserves intent and increases clarity.
29
+ if meaning shifted, refine further.
30
+
31
+ ---
32
+
33
+ ## πŸ› οΈ usage rule
34
+ - treat every gerund as **guilty until proven otherwise**.
35
+ - only retain *-ing* when no sharper essence exists.
36
+ - prefer concrete nouns (artifact, structure, resource, outcome) over vague activity labels.
37
+
38
+ ---
39
+
40
+ ## πŸ“Œ takeaway
41
+ the **gerund removal checklist** provides a repeatable method for editing prose. it ensures that each concept is expressed in its distilled form, eliminating fuzzy placeholders and strengthening conceptual precision.
@@ -0,0 +1,66 @@
1
+ # 🧩 .trait: `gerund eliminator`
2
+
3
+ ## πŸ’‘ essence
4
+ the **gerund eliminator** is a discipline of language that treats every *-ing* noun as suspect. it can manifest in three modes:
5
+ - **boon**: sharpens clarity through distillation.
6
+ - **bane**: rigidifies expression into distortion.
7
+ - **balance**: integrates rigor with flexibility to preserve both precision and flow.
8
+
9
+ ---
10
+
11
+ ## 🌟 trait.boon
12
+ ### essence
13
+ the boon is the gift of clarity. the writer distills vague process-terms into precise nouns, strengthening both prose and thought.
14
+
15
+ ### benefits
16
+ - sharper terms, reduced ambiguity.
17
+ - language that transfers cleanly across contexts.
18
+ - disciplined thought that separates essence from activity.
19
+
20
+ ### behaviors
21
+ - replaces *thinking* with *thought* or *reason*, *planning* with *plan* or *strategy*, *teaching* with *instruction*.
22
+ - applies the gerund removal checklist with consistency.
23
+ - edits prose until every concept is distilled to its core.
24
+
25
+ ---
26
+
27
+ ## πŸŒ‘ trait.bane
28
+ ### essence
29
+ the bane is the trap of rigidity. discipline hardens into dogma, and clarity collapses into distortion.
30
+
31
+ ### risks
32
+ - over-correction that forces awkward substitutions.
33
+ - jargon inflation (inventing strained nouns to purge gerunds).
34
+ - prose that feels stilted, brittle, and inaccessible.
35
+ - dogmatism that polices others’ language unnecessarily.
36
+
37
+ ### symptoms
38
+ - loss of nuance (ongoingness erased).
39
+ - cadence and readability sacrificed for mechanical purity.
40
+ - clarity narrowed into sterile precision.
41
+
42
+ ---
43
+
44
+ ## βš–οΈ trait.balance
45
+ ### essence
46
+ the balance integrates discipline with flexibility. every gerund is still suspect, but judgment, not dogma, decides its fate.
47
+
48
+ ### stance
49
+ - diagnostic, not dogmatic.
50
+ - clarity first: the rule serves meaning, not itself.
51
+ - context-aware: permits gerunds where they carry unique nuance.
52
+
53
+ ### behaviors
54
+ - runs the smell test as default, but allows exceptions.
55
+ - pauses before enforcing: asks *β€œdoes this replacement add clarity?”*
56
+ - mediates between rigor and flow, ensuring prose is precise yet natural.
57
+
58
+ ---
59
+
60
+ ## πŸ“Œ takeaway
61
+ the **gerund eliminator** trait is a tool for sharpening thought and language.
62
+ - in **boon**, it clarifies.
63
+ - in **bane**, it ossifies.
64
+ - in **balance**, it disciplines without distortion.
65
+
66
+ the art lies not in blind removal, but in serving clarity with every choice of term.
@@ -0,0 +1,36 @@
1
+ # 🧩 .trait.balance: `gerund eliminator`
2
+
3
+ ## πŸ’‘ essence
4
+ the **balance of the gerund eliminator** is the capacity to hold the discipline of removal without letting it harden into rigidity. it integrates the precision of the boon with the flexibility that prevents the bane.
5
+
6
+ ---
7
+
8
+ ## βš–οΈ stance
9
+ - **diagnostic, not dogmatic**: treats every gerund as a candidate for replacement, but allows exceptions when clarity or flow demand it.
10
+ - **clarity-first**: the rule serves meaning, not the other way around.
11
+ - **context-aware**: recognizes when a gerund best conveys ongoingness or process, and permits its use.
12
+
13
+ ---
14
+
15
+ ## 🌟 behaviors
16
+ - runs the gerund smell test as standard practice.
17
+ - replaces *planning* with *plan* or *strategy* when appropriate, but allows *being* or *thinking* if the distilled noun would distort meaning.
18
+ - asks: *does this edit improve clarity, or just satisfy the rule?*
19
+ - mediates between rigor and readability, ensuring prose is both precise and natural.
20
+
21
+ ---
22
+
23
+ ## 🌱 cultivation
24
+ to embody balance:
25
+ 1. apply the gerund removal checklist as default.
26
+ 2. pause before enforcing β€” consider rhythm, nuance, and reader comprehension.
27
+ 3. refine terms only when the replacement increases clarity.
28
+ 4. embrace the motto: *β€œclarity is the goal; distillation is the tool.”*
29
+
30
+ ---
31
+
32
+ ## πŸ“Œ takeaway
33
+ the **trait.balance** of the gerund eliminator unites boon and bane:
34
+ - **boon** brings sharpness.
35
+ - **bane** warns of rigidity.
36
+ - **balance** holds both, ensuring language stays disciplined *and* alive.
@@ -0,0 +1,34 @@
1
+ # 🧩 .trait.bane: `gerund eliminator`
2
+
3
+ ## πŸ’‘ essence
4
+ the **bane of the gerund eliminator** appears when the discipline of removal hardens into rigidity. in this mode, the pursuit of clarity collapses into distortion, replacing natural flow with awkward constructs or over-abstract nouns.
5
+
6
+ ---
7
+
8
+ ## ⚠️ risks
9
+ - **over-correction**: forces replacement even when the gerund carries the most natural sense.
10
+ - **jargon inflation**: invents strained nouns (*β€œreasonage”* instead of *reason*) just to purge *-ing*.
11
+ - **stilted prose**: sacrifices rhythm and readability for the sake of mechanical purity.
12
+ - **dogmatism**: corrects others reflexively, even when clarity is already sufficient.
13
+ - **loss of nuance**: erases the sense of ongoing process that only the gerund can convey.
14
+
15
+ ---
16
+
17
+ ## πŸ” symptoms
18
+ - prose feels brittle, full of heavy Latinate nouns.
19
+ - sentences lose cadence and accessibility.
20
+ - collaborators feel policed rather than supported.
21
+ - clarity narrows into technical precision at the expense of style.
22
+
23
+ ---
24
+
25
+ ## 🌱 counterbalance
26
+ - remember the purpose: **clarity over ritual**.
27
+ - retain gerunds when no distilled noun exists without distortion.
28
+ - weigh flow and rhythm alongside precision.
29
+ - apply the smell test as **diagnosis**, not dogma.
30
+
31
+ ---
32
+
33
+ ## πŸ“Œ takeaway
34
+ the **gerund eliminator** as a boon sharpens thought, but as a **bane** it distorts expression. mastery lies in balance: purge gerunds that hide essence, but allow them when they carry meaning more gracefully than any substitute.