@edeng23/pines 0.1.5 → 0.1.7

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.
@@ -19,31 +19,6 @@ function label(canvas, c, x, y, text, sgr) {
19
19
  if (shown)
20
20
  canvas.text(x, y, shown, sgr, c.pickId);
21
21
  }
22
- /**
23
- * Needled — every living conversation, dormant or not.
24
- *
25
- * Even the smallest is a whole tree: a forest of one-cell triangles reads as
26
- * punctuation, not as a wood. Size still varies — it is how the map shows you
27
- * which conversations went long — but the silhouette is always a pine.
28
- */
29
- const PINE_XXL = {
30
- trunk: 4,
31
- rows: [" ▲ ", " ▟█▙ ", " ▟███▙ ", " ▟█████▙ ", "▟███████▙"],
32
- tones: [" 0 ", " 012 ", " 01112 ", " 0111112 ", "011111112"],
33
- };
34
- const PINE_XL = {
35
- trunk: 3,
36
- rows: [" ▲ ", " ▟█▙ ", " ▟███▙ ", "▟█████▙"],
37
- tones: [" 0 ", " 012 ", " 01112 ", "0111112"],
38
- };
39
- const PINE_L = {
40
- trunk: 2,
41
- rows: [" ▲ ", " ▟█▙ ", "▟███▙"],
42
- tones: [" 0 ", " 012 ", "01112"],
43
- };
44
- const PINE_M = { trunk: 1, rows: [" ▲ ", "▟█▙"], tones: [" 0 ", "012"] };
45
- /** Only for a forest with no room left at all. */
46
- const PINE_S = { trunk: 0, rows: ["▲"], tones: ["1"] };
47
22
  /** Bare: only a crashed session loses its needles — burnt wood, unmistakable. */
48
23
  const BARE_XL = {
49
24
  trunk: 2,
@@ -57,58 +32,164 @@ const BARE_L = {
57
32
  rows: ["╲ │ ╱", " ╲│╱ "],
58
33
  tones: ["0 1 0", " 010 "],
59
34
  };
60
- const PINES = [PINE_S, PINE_M, PINE_L, PINE_XL, PINE_XXL];
61
- const BARES = [BARE_S, BARE_M, BARE_L, BARE_XL, BARE_XL];
62
35
  /**
63
36
  * Foliage comes in a few close greens, dealt out per tree: a real wood is
64
37
  * many near-greens, not one, and the variation is what makes a hillside of
65
38
  * pines read as alive instead of tiled. The pick is a hash of the tree id,
66
39
  * so a tree keeps its color for life and never flickers between frames.
40
+ * Bark is the forest's one non-green: it only ever shows on old growth.
67
41
  */
68
42
  const FOLIAGE = [
69
- ["38;5;114", "38;5;71", "38;5;29"], // fresh pine
70
- ["38;5;150", "38;5;108", "38;5;65"], // dusty sage
71
- ["38;5;113", "38;5;70", "38;5;28"], // sunlit lime
43
+ ["38;5;114", "38;5;71", "38;5;29", "38;5;137"], // fresh pine
44
+ ["38;5;150", "38;5;108", "38;5;65", "38;5;137"], // dusty sage
45
+ ["38;5;113", "38;5;70", "38;5;28", "38;5;137"], // sunlit lime
72
46
  ];
73
47
  /**
74
48
  * A dormant session keeps its needles — the conversation is asleep, not dead;
75
49
  * a whole forest goes dormant on every daemon restart, and it must still read
76
50
  * as a forest. The green just goes muted, wintered-over.
77
51
  */
78
- const WINTER_TONES = ["38;5;108", "38;5;65", "38;5;59"];
52
+ const WINTER_TONES = ["38;5;108", "38;5;65", "38;5;59", "38;5;95"];
79
53
  /** A crashed session stands as burnt wood — ember red, unmistakable. */
80
- const EMBER_TONES = ["38;5;203", "38;5;167", "38;5;124"];
54
+ const EMBER_TONES = ["38;5;203", "38;5;167", "38;5;124", "38;5;52"];
55
+ function treeSeed(treeId) {
56
+ let h = 2166136261;
57
+ for (let i = 0; i < treeId.length; i++) {
58
+ h ^= treeId.charCodeAt(i);
59
+ h = Math.imul(h, 16777619);
60
+ }
61
+ return h >>> 0;
62
+ }
81
63
  function paletteOf(t) {
82
64
  if (t.status === "crashed")
83
65
  return EMBER_TONES;
84
66
  if (t.status === "dormant")
85
67
  return WINTER_TONES;
86
- let h = 2166136261;
87
- for (let i = 0; i < t.treeId.length; i++) {
88
- h ^= t.treeId.charCodeAt(i);
89
- h = Math.imul(h, 16777619);
90
- }
91
- return FOLIAGE[(h >>> 0) % FOLIAGE.length];
68
+ return FOLIAGE[treeSeed(t.treeId) % FOLIAGE.length];
92
69
  }
93
70
  /** Bare is reserved for the one state that means the tree burned. */
94
71
  function isBare(t) {
95
72
  return t.status === "crashed";
96
73
  }
97
74
  /**
98
- * How big a tree grew, and how big this forest can afford to draw it.
75
+ * The widest crown a tree ever grows, in cells. Wide enough that no legal
76
+ * (height, tier-break) plan ever repeats a row width — a repeated width
77
+ * reads as a flat-sided column, not a pine skirt.
78
+ */
79
+ const MAX_CROWN_W = 13;
80
+ /** The tallest crown, in rows (a trunk row can stand under it). */
81
+ const MAX_CROWN_H = 9;
82
+ /**
83
+ * Crown rows the conversation has EARNED: logarithmic, one new row per
84
+ * ~1.8× growth. Doubling is the unit of progress — early life changes fast,
85
+ * old age changes slowly but never stops (a 400-message tree still out-grows
86
+ * a 200-message one, where the old ladder froze everything at 100).
87
+ */
88
+ export function earnedRows(nodeCount) {
89
+ const h = 1 + Math.floor(Math.log(Math.max(nodeCount, 3) / 3) / Math.log(1.8));
90
+ return Math.max(1, Math.min(MAX_CROWN_H, h));
91
+ }
92
+ /**
93
+ * Rows the forest has ROOM to draw at this spacing (incl. a trunk row).
94
+ * Deliberately looser than the old five-sprite cap: a forest at ordinary
95
+ * fit-zoom sits around spacing 8–14, and if tiers only unlocked past 15
96
+ * the whole growth story would be invisible exactly where the user looks.
97
+ */
98
+ function roomRows(spacing) {
99
+ if (spacing >= 19)
100
+ return MAX_CROWN_H + 1;
101
+ if (spacing >= 14)
102
+ return 8;
103
+ if (spacing >= 11)
104
+ return 6;
105
+ if (spacing >= 7)
106
+ return 4;
107
+ if (spacing >= 4)
108
+ return 2;
109
+ return 1;
110
+ }
111
+ /**
112
+ * Grow a pine. One deterministic silhouette from (size, id, room):
113
+ *
114
+ * Strictly symmetric — bilateral, centered on its trunk — and built from
115
+ * stacked triangle tiers, the classic conifer form. The crown widens row by
116
+ * row; from six rows it BREAKS into a second tier (the width resets and
117
+ * climbs again), and old trees stand on a visible bark trunk. The tree's id
118
+ * chooses only symmetric character — an early or late tier break, a shown
119
+ * or hidden trunk — never a lean, so every tree is unmistakably a tree and
120
+ * no two elders match. Same inputs, same sprite: nothing ever flickers.
121
+ */
122
+ export function pineSprite(nodeCount, treeId, spacing) {
123
+ const seed = treeSeed(treeId);
124
+ const room = roomRows(spacing);
125
+ const earned = earnedRows(nodeCount);
126
+ // An elder is an elder at EVERY zoom. Trunk-worthiness comes from what the
127
+ // tree EARNED, not from what the map has room to draw — so when crowding
128
+ // shrinks the crown, the bark still shows, and a small tree standing on a
129
+ // trunk is how a packed map says "old growth". (Most, not all, elders
130
+ // grow one — the id decides, like everything else about a tree's look.)
131
+ //
132
+ // The trunk is a BONUS row under the crown, never traded against it: an
133
+ // elder must never draw a smaller crown than a younger tree at the same
134
+ // spacing, and paying a crown row for bark caused exactly that.
135
+ const trunkEligible = earned >= 8 && seed % 3 !== 0;
136
+ const h = Math.min(earned, room);
137
+ const showTrunk = trunkEligible && h >= 3;
138
+ if (h <= 1)
139
+ return { trunk: 0, rows: ["▲"], tones: ["1"] };
140
+ // Tier NOTCHES: narrow rows that break the crown into stacked tiers. A
141
+ // notch pauses the widening — the next row resumes the progression — so
142
+ // the base width depends only on height, and a tree that grows its first
143
+ // tier never comes out narrower than a younger, unbroken crown (resetting
144
+ // the width did exactly that). Never on the last row: the skirt is the
145
+ // silhouette. The eldest crowns earn a second notch — three tiers.
146
+ const widths = [1];
147
+ let w = 1;
148
+ const notch1 = h >= 6 ? 3 + (seed % 2) : -1;
149
+ const notch2 = h >= 9 ? Math.min(notch1 + 4, h - 2) : -1;
150
+ for (let r = 1; r < h; r++) {
151
+ if (r === notch1 || r === notch2) {
152
+ widths.push(Math.max(3, w - 4));
153
+ }
154
+ else {
155
+ w = Math.min(w + 2, MAX_CROWN_W);
156
+ widths.push(w);
157
+ }
158
+ }
159
+ const maxW = Math.max(...widths);
160
+ const trunk = Math.floor((maxW - 1) / 2);
161
+ const rows = [];
162
+ const tones = [];
163
+ const centered = (body, tone) => {
164
+ const pad = " ".repeat((maxW - body.length) / 2);
165
+ rows.push(pad + body + pad);
166
+ tones.push(pad + tone + pad);
167
+ };
168
+ for (const width of widths) {
169
+ if (width === 1)
170
+ centered("▲", "0");
171
+ else
172
+ centered("▟" + "█".repeat(width - 2) + "▙", "0" + "1".repeat(width - 2) + "2");
173
+ }
174
+ if (showTrunk)
175
+ centered("▐█▌", "333");
176
+ return { trunk, rows, tones };
177
+ }
178
+ /**
179
+ * How big this forest can afford to draw a tree.
99
180
  *
100
181
  * Conversation length sets the size — it is the only structural signal the
101
182
  * forest has at this zoom. Then the room between neighbors caps it: a packed
102
183
  * forest keeps its trees small rather than growing them into each other, and
103
- * zooming in lets them fill out again. The floor is a whole little pine; the
104
- * bare single glyph is reserved for forests with no room at all. The
105
- * five-row old-growth tier is earned twice over — a genuinely long session
106
- * in a genuinely open forest.
184
+ * zooming in lets them fill out again. Crashed trees stand as bare burnt
185
+ * wood, sized to the same room.
107
186
  */
108
187
  function spriteFor(t, bare, spacing) {
109
- const grown = t.nodeCount >= 100 ? 4 : t.nodeCount >= 35 ? 3 : t.nodeCount >= 12 ? 2 : 1;
110
- const room = spacing >= 15 ? 4 : spacing >= 11 ? 3 : spacing >= 7 ? 2 : spacing >= 4 ? 1 : 0;
111
- return (bare ? BARES : PINES)[Math.min(grown, room)];
188
+ if (bare) {
189
+ const h = Math.min(earnedRows(t.nodeCount), roomRows(spacing));
190
+ return h <= 1 ? BARE_S : h <= 2 ? BARE_M : h <= 4 ? BARE_L : BARE_XL;
191
+ }
192
+ return pineSprite(t.nodeCount, t.treeId, spacing);
112
193
  }
113
194
  /** Cell box a sprite fills, standing on (and excluding) its base row. */
114
195
  function spriteRect(sprite, pos) {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/client/forest/styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/client/forest/styles.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edeng23/pines",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "Tree-first orchestration TUI for pi coding agents. pi + trees = pines.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Eden Gaon",
@@ -51,8 +51,8 @@
51
51
  "typecheck": "tsc -p tsconfig.json --noEmit"
52
52
  },
53
53
  "dependencies": {
54
- "@earendil-works/pi-coding-agent": "0.84.1",
55
- "@earendil-works/pi-tui": "0.84.1",
54
+ "@earendil-works/pi-coding-agent": "0.84.3",
55
+ "@earendil-works/pi-tui": "0.84.3",
56
56
  "@xterm/addon-serialize": "^0.14.0",
57
57
  "@xterm/headless": "^6.0.0",
58
58
  "better-sqlite3": "^13.0.1",