@fungi.computer/trellis 0.0.1 → 0.2.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 (2) hide show
  1. package/README.md +16 -0
  2. package/package.json +31 -16
package/README.md CHANGED
@@ -30,6 +30,22 @@ Workflows, and its steps call the same App methods your agents use.
30
30
  Prints with a review per beat) and Storyboard + Save to git.
31
31
  - **Export**, **Import** and **Fork** workflows as JSON.
32
32
 
33
+ ### Build on merge
34
+
35
+ Bonsai's accepted-main Git lifecycle requests this retained template through
36
+ **WORKFLOWS.runGraph** for an already registered repository. The input is the
37
+ registered App ID, the exact accepted Git revision and the target installation
38
+ name; the Bonsai binding is the live calling installation. The template's
39
+ published identity is pinned to that caller's Release source revision.
40
+
41
+ The three steps are **build → verify → install**, with result cards.
42
+ Verification waits for the build's boot gate, decodes the recorded Release and
43
+ checks its source revision before exposing it to installation. Failed builds and
44
+ mismatched Releases stop there. Installation requires Workflow-owned authority;
45
+ ordinary App-origin calls do not receive an exemption. This template contains no
46
+ review step or review configuration. New permissions still require owner consent
47
+ and must preserve the running Release.
48
+
33
49
  <img alt="The Trellis editor in the light theme, with a Bonsai Repos.list step and a Workflow input on the canvas" src="docs/media/editor-light.png">
34
50
 
35
51
  ## Get it
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fungi.computer/trellis",
3
3
  "description": "Trellis: build and run workflows of App methods, an App for Oyster",
4
- "version": "0.0.1",
4
+ "version": "0.2.0",
5
5
  "author": "Levi <levi@technomancy.dev>",
6
6
  "type": "module",
7
7
  "exports": {
@@ -9,26 +9,28 @@
9
9
  "./library": {
10
10
  "types": "./backend/library.ts",
11
11
  "import": "./dist/backend/library.js"
12
- }
12
+ },
13
+ "./templates/bonsai-build-on-merge": "./templates/bonsai-build-on-merge.json",
14
+ "./run-timeline": "./src/runs/public.ts"
13
15
  },
14
16
  "dependencies": {
15
- "@fungi.computer/puffball": "0.0.2",
17
+ "@fungi.computer/puffball": "0.2.0",
16
18
  "@cfworker/json-schema": "4.1.1",
17
- "@fungi.computer/agar": "0.1.0",
18
- "@fungi.computer/caps": "0.0.2",
19
- "@fungi.computer/stipe": "0.0.1",
19
+ "@fungi.computer/agar": "0.3.0",
20
+ "@fungi.computer/caps": "0.2.0",
21
+ "@fungi.computer/stipe": "0.1.0",
20
22
  "@xyflow/react": "12.12.0",
21
23
  "react": "18.3.1",
22
24
  "react-dom": "18.3.1",
23
- "@fungi.computer/braid": "0.0.1",
25
+ "@fungi.computer/braid": "0.2.0",
24
26
  "effect": "4.0.2",
25
- "@fungi.computer/sigils": "0.0.1",
27
+ "@fungi.computer/sigils": "0.2.0",
26
28
  "lucide-react": "0.460.0",
27
29
  "zod": "4.4.3",
28
- "@fungi.computer/workflows-wire": "0.0.1",
29
- "@fungi.computer/cairn": "0.0.1",
30
- "@fungi.computer/watchdog": "0.0.1",
31
- "@fungi.computer/maosaico": "0.0.1"
30
+ "@fungi.computer/workflows-wire": "0.2.0",
31
+ "@fungi.computer/cairn": "0.1.0",
32
+ "@fungi.computer/watchdog": "0.1.0",
33
+ "@fungi.computer/maosaico": "0.1.0"
32
34
  },
33
35
  "devDependencies": {
34
36
  "@cloudflare/workers-types": "5.20260828.1",
@@ -81,7 +83,7 @@
81
83
  "backendDefinition": "backend/methods.ts",
82
84
  "app": {
83
85
  "displayName": "Trellis",
84
- "icon": "run",
86
+ "icon": "trellis",
85
87
  "capabilities": [
86
88
  "computer.list",
87
89
  "computer.readFile",
@@ -91,7 +93,8 @@
91
93
  "workflow.publish",
92
94
  "workflow.arm",
93
95
  "git.repository",
94
- "agent.read"
96
+ "agent.read",
97
+ "apps.open"
95
98
  ],
96
99
  "handlers": [],
97
100
  "roles": [],
@@ -136,7 +139,18 @@
136
139
  "react": true,
137
140
  "stylesheets": [
138
141
  "src/trellis.css"
139
- ]
142
+ ],
143
+ "entry": "index.html",
144
+ "maxOutputBytes": 16777216,
145
+ "backend": {
146
+ "entry": "backend/index.ts",
147
+ "exportName": "Trellis",
148
+ "compatibilityDate": "2026-09-04",
149
+ "runtime": {
150
+ "kind": "durable-facet",
151
+ "stateSchema": 1
152
+ }
153
+ }
140
154
  }
141
155
  },
142
156
  "files": [
@@ -152,10 +166,11 @@
152
166
  "typecheck": "tsc -p tsconfig.json --noEmit && tsc -p backend/tsconfig.json --noEmit",
153
167
  "lint": "eslint src test backend --max-warnings=0",
154
168
  "rebuild-copies": "node --import tsx scripts/rebuild-copies.mjs",
155
- "test": "node --import tsx --test test/*.test.ts test/storyboard-method-pins.test.mjs && vitest run --config vitest.config.mjs test/main.test.tsx test/inspector.test.tsx test/use-draft.test.tsx test/review-card.test.tsx test/runs.test.tsx test/version-history.test.tsx test/portable-share.test.tsx test/review-output.test.tsx test/publish-controls.test.tsx",
169
+ "test": "node --import tsx --test test/*.test.ts test/storyboard-method-pins.test.mjs && vitest run --config vitest.config.mjs test/main.test.tsx test/inspector.test.tsx test/use-draft.test.tsx test/review-dock.test.tsx test/runs.test.tsx test/runs-list.test.tsx test/timeline-items.test.tsx test/version-history.test.tsx test/portable-share.test.tsx test/review-output.test.tsx test/publish-controls.test.tsx",
156
170
  "test:readiness:browser": "node test/editor-w4.browser.mjs && node test/readiness.browser.mjs",
157
171
  "test:browser": "node test/workflows.browser.mjs",
158
172
  "test:storyboard:browser": "node test/storyboard.browser.mjs",
173
+ "test:timeline:browser": "node test/run-timeline.browser.mjs",
159
174
  "format:check": "node ../../tooling/repository/scripts/format-package-check.mjs",
160
175
  "lint:anti-slop": "node ../../tooling/repository/scripts/lint-package-anti-slop.mjs",
161
176
  "test:nightly": "WORKFLOW_EVIDENCE=.botanical/workflows bash ../../.agents/skills/orchestrate-multi-lane-work/scripts/run-proof.sh node test/workflows.browser.mjs && pnpm run test:history:browser",