@garaje/base 0.1.4 → 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.
@@ -35,6 +35,10 @@ const PROTECTED_PATTERNS = [
35
35
  // recipes and running `garaje park` — never by hand-editing compose.
36
36
  "compose.framework.yaml",
37
37
  "compose.bays.yaml",
38
+ // The COMMITTED generated pi-image toolchain: same contract as
39
+ // compose.bays.yaml — the agent shapes it by editing a bay's recipe and
40
+ // running `garaje park`, never by hand-editing the artifact.
41
+ "pi/toolchain/",
38
42
  "pi/Dockerfile",
39
43
  "pi/entrypoint.sh",
40
44
  // Framework substrate now ships as the @garaje/base package.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@garaje/base",
3
- "version": "0.1.4",
3
+ "version": "0.2.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -13,6 +13,15 @@
13
13
  endpoint) to prove the change took effect.
14
14
  - `compose.framework.yaml` and `docker-compose.yml` are the framework
15
15
  substrate and are write-protected — propose changes, don't edit them.
16
+ - Pi extensions are **codified in the repo**, not installed ad hoc. Run
17
+ `pi install -l npm:<pkg>@<version>` — the `-l` writes the committed
18
+ `.pi/settings.json`, and teammates get the package automatically on their next
19
+ `garaje up`. Without `-l` the install lands in user scope on the pi-config
20
+ volume, where nobody else can see it. Always pin the version, then commit
21
+ `.pi/settings.json`. (`.pi/npm/` holds the artifacts and is gitignored.)
22
+ - Inference credentials live in `.env`, which compose forwards into this
23
+ container; that is the only surface. A key stored by `/login` is written to
24
+ `/root/.pi/agent/auth.json` on the pi-config volume and OVERRIDES `.env`.
16
25
  - `packages/` holds the garaje **framework** being extracted from this repo:
17
26
  `packages/cli` (the TypeScript `garaje` CLI) and `packages/base` (the
18
27
  `@garaje/base` pi package), as npm workspaces. The recipe→compose codegen now
@@ -11,7 +11,8 @@ the change first:
11
11
  — propose the exact diff to the developer instead of editing them.
12
12
  - **Cold** — anything the container is built from or defined by: the pi
13
13
  image and entrypoint, the framework's runtime topology, a pi or
14
- `@garaje/base` version pin. These only take effect through a rebirth.
14
+ `@garaje/base` version pin, and the generated `pi/toolchain/` (parking a bay
15
+ changes the pi image's runtimes). These only take effect through a rebirth.
15
16
 
16
17
  Cold protocol (you cannot rebirth the container you live in):
17
18