@cogit/cli 0.25.3 → 0.25.5

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.
@@ -15,7 +15,7 @@ import {
15
15
  uninstallGitHooks,
16
16
  withHookBlock,
17
17
  withoutHookBlock
18
- } from "./chunk-NCRW3URU.js";
18
+ } from "./chunk-YAITRRHD.js";
19
19
  export {
20
20
  BLOCK_END,
21
21
  BLOCK_START,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cogit/cli",
3
- "version": "0.25.3",
3
+ "version": "0.25.5",
4
4
  "description": "Git remembers what changed. cogit remembers why.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -85,15 +85,20 @@ between its Intent (the decision and reason above) and its Code (the diff). Add
85
85
  message's node, with the node's commit hashes:
86
86
 
87
87
  ```json
88
- "shape": { "tools": [{ "kind": "pseudo", "text": "1. ...\n2. ..." }], "commits": ["abc1234"] }
88
+ "shape": { "tools": [{ "kind": "pseudo", "text": "1. ⚡ ...\n2. ƒ ..." }], "commits": ["abc1234"] }
89
89
  ```
90
90
 
91
91
  Tools (at most three, the ones that say the most; never two that tell the same thing):
92
92
 
93
- - `mermaid`: a Mermaid `flowchart TD` (or `LR`) of a path through code, at most 10 nodes.
94
- Quote labels that hold spaces or punctuation.
95
- - `sequence`: a Mermaid `sequenceDiagram` when work is handed between actors over time (a hook
96
- starting a job, a client and a server, a queue drained later), at most 6 participants.
93
+ - `flow`: a path through code as JSON. Every node has a `kind` from the table below and a
94
+ `label` in the project's own words; at most 12 nodes and 16 edges; ids are short lowercase
95
+ words (`a`, `hook`), unique, and every edge names two of them. Set `ordered: true` when the
96
+ edges are steps over time and work is handed between parts (the map numbers them 1, 2, 3…).
97
+
98
+ ```json
99
+ {"kind": "flow", "text": "{\"nodes\":[{\"id\":\"a\",\"kind\":\"event\",\"label\":\"after a commit\"}],\"edges\":[{\"from\":\"a\",\"to\":\"b\",\"label\":\"no\"}],\"ordered\":false}"}
100
+ ```
101
+
97
102
  - `table`: Before / After, one `case | before | after` line per case (at most 8), for a
98
103
  change someone can see: a fix, a new default, a rule that now says yes or no.
99
104
  - `interface`: one `item | before | after` line per command, flag, exported function, config
@@ -101,18 +106,35 @@ Tools (at most three, the ones that say the most; never two that tell the same t
101
106
  `—` for nothing.
102
107
  - `example`: one concrete case with real values, each result on its own line after `→`. A new
103
108
  or changed command or flag always gets one that runs it.
104
- - `pseudo`: numbered plain-language steps of the new logic, naming the functions and files.
105
-
106
- Write names the same way in every tool: a role in plain words (`Git`, `cogit`, `Record`), a
107
- file with its extension (`session.ts`), a function with `()`, a field with its owner
108
- (`node.commits`), a command after `$`, printed text in quotes. In a diagram, name actors and
109
- boxes by role with the code name in parentheses (`Queue (shape-queue.ts)`) and label arrows
110
- with plain verbs. Tables have no header row. Order the tools diagram, tables, example, steps.
109
+ - `pseudo`: numbered plain-language steps of the new logic, each starting with the symbol of
110
+ its kind after its number (`1. ⚡ After a commit, …`), naming the functions and files.
111
+
112
+ Kinds (one per Flow node, and the symbol a step starts with; the map draws the symbol, you
113
+ never draw it):
114
+
115
+ | id | symbol | name | means |
116
+ |---|---|---|---|
117
+ | fn | ƒ | Function | a function or method |
118
+ | var | x | Variable | a variable, field or setting |
119
+ | cond | ◇ | Condition | a question the code asks; its arrows are the answers |
120
+ | loop | ↻ | Loop | repeats for each item |
121
+ | event | ⚡ | Event | something that starts the work: a hook, a click, a timer |
122
+ | store | ▤ | Data store | a file, database, queue or cache that keeps data |
123
+ | type | ▭ | Type | a type, class or schema |
124
+ | ext | ◎ | External system | another program or service: git, a browser, an API, an AI model |
125
+ | person | ☺ | Person | someone using it |
126
+ | async | ⇢ | Background job | work started without waiting for it |
127
+ | out | ↩ | Output | what is returned or shown |
128
+ | error | ✕ | Error | an error or a refusal |
129
+
130
+ A Flow node's label names the thing in the project's own words (`shape-queue.ts`,
131
+ `enqueueShape()`), never a role word — the symbol already says what kind it is. Tables have
132
+ no header row. Order the tools diagram, tables, example, steps.
111
133
 
112
134
  `{ "tools": [] }` means nothing worth showing: give it for a change nobody would notice from
113
135
  outside (a refactor, a rename). Skip messages whose commits are only release/version bumps,
114
136
  lockfiles or CHANGELOG, or change fewer than 5 lines in total. Write it in the conversation's
115
- language; the CLI validates each output and keeps an invalid diagram as text.
137
+ language; the CLI validates each output and keeps an invalid output as text.
116
138
 
117
139
  ## Branch summary
118
140