pi.lock 0.1.1 → 0.1.2

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.
package/README.md CHANGED
@@ -1,52 +1,66 @@
1
1
  # pi.lock
2
2
 
3
- Use one Pi agent from the terminal, RPC, or the SDK with the same project configuration and resources. Commit `pi.lock` with your code to deploy or roll back the agent through Git.
3
+ <p align="center"><img src="docs/assets/pi-lock-logo.png" width="180" alt="pi.lock logo"></p>
4
4
 
5
- Requires Node.js **22.19+** and supports Pi **1.3.0**.
5
+ A portable Pi agent you can version and roll back with Git.
6
6
 
7
- ## Install and configure
7
+ Requires Node.js **22.19+**. Supports Pi **1.3.0**.
8
+
9
+ ## Install
8
10
 
9
11
  ```sh
10
12
  npm install pi.lock
11
- npx pi-lock init --provider deepseek --model deepseek-chat
12
13
  ```
13
14
 
14
- Set your provider API key, for example `DEEPSEEK_API_KEY`. If you already have `.pi/settings.json`, keep it and skip `init`.
15
+ ## Build and lock an agent
15
16
 
16
- Tune the agent in development mode. Edit its instructions, skills, or extensions under `.pi/` as needed:
17
+ For a new agent, initialize project-local Pi configuration. If the project already has `.pi/settings.json`, keep it and skip `init`:
17
18
 
18
19
  ```sh
20
+ npx pi-lock init
19
21
  npx pi-lock --dev
20
22
  ```
21
23
 
22
- If no default model is configured, start anyway. Sign in with `/login` if needed, then choose a model with Pi's `/model` selector. The first selection is saved to this project's `.pi/settings.json`.
24
+ `--dev` opens Pi's native TUI for this project. pi.lock loads project resources only; it does not load `~/.pi`, `~/.agents`, or resources from parent directories.
23
25
 
24
- When it is ready, record its configuration and resources in `pi.lock`:
26
+ Now build and test your Pi agent as you normally would. When it is ready, create the lock:
25
27
 
26
28
  ```sh
27
29
  npx pi-lock lock
28
30
  ```
29
31
 
30
- ## Run the agent
32
+ Commit the project as you normally would:
33
+
34
+ ```sh
35
+ git add -A
36
+ ```
37
+
38
+ Runtime data lives in `~/.pi-lock/`, outside the project. Set `PI_LOCK_HOME` to use another location.
39
+
40
+ Frozen runs reject changes to locked files, dependencies, model settings, or tool schemas. Edit in `--dev` and run `lock` again to update the agent.
31
41
 
32
- The default command opens Pi's native TUI. You can also send a one-shot prompt or use Pi's RPC protocol:
42
+ ## Deploy and roll back
43
+
44
+ Deploy the Git commit containing the agent and its dependency lockfiles:
33
45
 
34
46
  ```sh
35
- npx pi-lock
36
- npx pi-lock -p "Summarize these files"
37
- npx pi-lock --mode rpc
47
+ npm ci
48
+ npx --no-install pi-lock sync --frozen
49
+ npx --no-install pi-lock verify
38
50
  ```
39
51
 
40
- Normal mode is frozen: if locked files, dependencies, model settings, or tool schemas change, pi.lock reports an error. Make changes with `--dev`, then run `lock` again.
52
+ To roll back, deploy the earlier Git commit, including its `pi.lock` and npm lockfiles, then run the same commands. Sessions are bound to one agent version; resume them with the matching release or start a new session. Rolling back the agent does not undo external side effects from earlier tool calls.
53
+
54
+ ## Use from an application
41
55
 
42
- ## Use it from the SDK
56
+ The project and `pi.lock` stay the same; only the entry point changes. For an SDK host, select the agent project and task workspace:
43
57
 
44
58
  ```ts
45
59
  import { createAgentSession } from "pi.lock";
46
60
 
47
61
  const agent = await createAgentSession({
48
- projectRoot: "/app/my-agent", // Directory containing .pi/ and pi.lock
49
- cwd: "/data/current-task", // Working directory for this task
62
+ projectRoot: "/app/my-agent",
63
+ cwd: "/data/current-task",
50
64
  apiKey: process.env.DEEPSEEK_API_KEY,
51
65
  });
52
66
 
@@ -58,35 +72,10 @@ try {
58
72
  }
59
73
  ```
60
74
 
61
- `projectRoot` selects the agent definition; `cwd` selects the task's working directory. Both can be omitted when running from the agent project directory. The returned session is Pi's native `AgentSession`.
62
-
63
- ## Keep the agent with your project
64
-
65
- Commit the agent definition, `pi.lock`, and npm lockfiles to Git:
66
-
67
- ```text
68
- my-agent/
69
- ├── .pi/
70
- │ ├── settings.json
71
- │ ├── SYSTEM.md
72
- │ ├── extensions/
73
- │ ├── skills/
74
- │ └── prompts/
75
- ├── pi.lock
76
- ├── package.json
77
- └── package-lock.json
78
- ```
79
-
80
- The project root's `AGENTS.md` and project-local `.agents/skills/` are included. pi.lock does not load `~/.pi`, `~/.agents`, or resources from parent directories. Local sessions, credentials, and runtime snapshots go in `.pi-lock/` and should not be committed.
81
-
82
- For deployment, install the versions recorded by your package lockfile and verify the agent before starting it:
75
+ For RPC, launch the same project with Pi's JSONL protocol:
83
76
 
84
77
  ```sh
85
- npm ci
86
- npx --no-install pi-lock sync --frozen
87
- npx --no-install pi-lock verify
78
+ npx --no-install pi-lock --mode rpc
88
79
  ```
89
80
 
90
- To roll back, check out the earlier Git commit and install that commit's dependency versions. Each running session remains bound to its agent version.
91
-
92
- For extension, MCP, and compatibility details, see the [architecture notes](docs/architecture.md). Test coverage and environment limits are in the [acceptance report](docs/acceptance.md).
81
+ See the [architecture notes](docs/architecture.md) for implementation boundaries and the [acceptance report](docs/acceptance.md) for tested behavior and environment limits.
package/dist/cli.js CHANGED
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env node
2
- // This entry intentionally imports no Pi code until its per-process paths are bound locally.
3
- import { mkdirSync } from "node:fs";
4
2
  import { resolve } from "node:path";
5
3
  import { fail, findProject, LockError, PI_VERSION } from "./common.js";
4
+ import { prepareRuntimePaths } from "./paths.js";
6
5
  const help = `pi-lock — Pi ${PI_VERSION}, project-local and reproducible
7
6
 
8
7
  pi-lock init [--demo] Create ordinary .pi settings and resources
@@ -32,7 +31,7 @@ async function main() {
32
31
  return;
33
32
  }
34
33
  if (args.includes("--version") || args.includes("-v")) {
35
- console.log(`pi-lock 0.1.1 (Pi ${PI_VERSION})`);
34
+ console.log(`pi-lock 0.1.2 (Pi ${PI_VERSION})`);
36
35
  return;
37
36
  }
38
37
  const commands = new Set(["init", "lock", "inspect", "verify", "sync"]);
@@ -64,11 +63,12 @@ async function main() {
64
63
  }
65
64
  const cwd = resolve(String(flags["--cwd"] ?? process.cwd()));
66
65
  const root = command === "init" ? resolve(String(flags["--project"] ?? cwd)) : findProject(cwd, flags["--project"]);
67
- // Pi TUI helpers still use getAgentDir(); set it before importing Pi, inside this CLI process only.
68
- const uiRoot = resolve(root, ".pi-lock/state/ui");
69
- mkdirSync(uiRoot, { recursive: true });
70
- process.env.PI_CODING_AGENT_DIR = uiRoot;
71
- process.env.PI_CODING_AGENT_SESSION_DIR = resolve(root, ".pi-lock/state/sessions");
66
+ // Pi TUI helpers still use getAgentDir(); bind its paths before importing Pi, inside this process only.
67
+ if (command !== "init") {
68
+ const paths = prepareRuntimePaths(root);
69
+ process.env.PI_CODING_AGENT_DIR = paths.ui;
70
+ process.env.PI_CODING_AGENT_SESSION_DIR = paths.sessions;
71
+ }
72
72
  process.env.PI_OFFLINE = "1";
73
73
  process.env.PI_SKIP_VERSION_CHECK = "1";
74
74
  process.env.PI_TELEMETRY = "0";
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAoB,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,IAAI,GAAG,gBAAgB,UAAU;;;;;;;;;;;;;;;;;;;;;CAqBtC,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAClF,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,UAAU,GAAG,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IACnH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,IAAI,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAG,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5D,MAAM,KAAK,GAAqC,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACnH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7I,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;QAC1B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YAAC,MAAM;QAAC,CAAC;QACpD,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;aACxC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,UAAU,EAAE,GAAG,GAAG,iBAAiB,CAAC,CAAC;YAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAClI,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,UAAU,EAAE,kBAAkB,GAAG,uBAAuB,CAAC,CAAC;aAC1F,IAAI,OAAO,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,GAAG,CAAC;;YACvI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAuB,CAAC,CAAC;IAC1I,wGAAwG;IACxG,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,KAAK,CAAC,QAAQ,CAAC;IAC3D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;IAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC;AACD,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,YAAY,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAChG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
package/dist/commands.js CHANGED
@@ -1,4 +1,4 @@
1
- import { copyFileSync, existsSync, mkdirSync, rmSync } from "node:fs";
1
+ import { copyFileSync, existsSync, rmSync } from "node:fs";
2
2
  import { resolve } from "node:path";
3
3
  import { spawn } from "node:child_process";
4
4
  import { InteractiveMode, initTheme, runPrintMode, runRpcMode, SessionManager } from "@earendil-works/pi-coding-agent";
@@ -7,6 +7,7 @@ import { internalModule } from "./bridge.js";
7
7
  import { initialize } from "./init.js";
8
8
  import { createLockedRuntime, lockProject } from "./runtime.js";
9
9
  import { materialize, readLock, verifyDefinition, verifySourcesBeforeInstall } from "./lock.js";
10
+ import { prepareRuntimePaths } from "./paths.js";
10
11
  async function npmCi(cwd) {
11
12
  await new Promise((done, reject) => {
12
13
  const child = spawn("npm", ["ci", "--no-audit", "--no-fund"], { cwd, stdio: "inherit", shell: false });
@@ -57,8 +58,7 @@ export async function execute(command, root, cwd, flags, messages) {
57
58
  const mode = flags["--mode"] ?? ((flags["-p"] || flags["--print"]) ? "print" : "tui");
58
59
  if (!["tui", "rpc", "json", "print", "text"].includes(String(mode)))
59
60
  fail("ARGUMENT", `Unknown mode ${mode}.`);
60
- const state = resolve(root, ".pi-lock/state");
61
- mkdirSync(state, { recursive: true });
61
+ const state = prepareRuntimePaths(root).state;
62
62
  const { AuthStorage } = await internalModule("./core/auth-storage.js");
63
63
  const credentials = AuthStorage.create(resolve(state, "auth.json"));
64
64
  const opts = { projectRoot: root, cwd, credentials, dev: Boolean(flags["--dev"]), sessionFile: flags["--session"], sessionDir: flags["--session-dir"] };
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
@@ -340,7 +340,7 @@ function locatePackage(from, name, root) {
340
340
  let runtimeHash;
341
341
  export function runtimeIdentity() {
342
342
  if (runtimeHash)
343
- return { pi: PI_VERSION, adapter: "0.1.1", sha256: runtimeHash };
343
+ return { pi: PI_VERSION, adapter: "0.1.2", sha256: runtimeHash };
344
344
  const require = createRequire(import.meta.url);
345
345
  const packages = new Map();
346
346
  const hostRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
@@ -379,6 +379,6 @@ export function runtimeIdentity() {
379
379
  add(entry);
380
380
  }
381
381
  runtimeHash = digest(identities.sort((a, b) => a.name.localeCompare(b.name, "en") || a.version.localeCompare(b.version, "en")));
382
- return { pi: PI_VERSION, adapter: "0.1.1", sha256: runtimeHash };
382
+ return { pi: PI_VERSION, adapter: "0.1.2", sha256: runtimeHash };
383
383
  }
384
384
  //# sourceMappingURL=definition.js.map
package/dist/init.js CHANGED
@@ -1,4 +1,4 @@
1
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
1
+ import { existsSync, mkdirSync, writeFileSync } from "node:fs";
2
2
  import { dirname, resolve } from "node:path";
3
3
  import { atomicJson, fail } from "./common.js";
4
4
  export const demoExtension = `import { Type, fauxProvider, fauxAssistantMessage, fauxToolCall } from "@earendil-works/pi-ai";
@@ -31,9 +31,5 @@ export function initialize(projectRoot, options = {}) {
31
31
  mkdirSync(resolve(projectRoot, ".pi/prompts"), { recursive: true });
32
32
  writeFileSync(resolve(projectRoot, ".pi/prompts/hello.md"), "---\ndescription: Try the same agent through every interface.\n---\nSay hello using the echo tool. $ARGUMENTS\n");
33
33
  }
34
- const ignore = resolve(projectRoot, ".gitignore");
35
- const existing = existsSync(ignore) ? readFileSync(ignore, "utf8") : "";
36
- if (!existing.split("\n").includes(".pi-lock/"))
37
- writeFileSync(ignore, existing + (existing.endsWith("\n") || !existing ? "" : "\n") + ".pi-lock/\n");
38
34
  }
39
35
  //# sourceMappingURL=init.js.map
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;CAa5B,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,WAAmB,EAAE,OAAO,GAA0D,EAAE;IACjH,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IACzD,IAAI,UAAU,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,gBAAgB,EAAE,uEAAuE,CAAC,CAAC;IACxH,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,UAAU,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,mBAAmB,EAAE,oBAAoB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACvZ,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,2EAA2E,CAAC,CAAC;IAClI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3U,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,wBAAwB,CAAC,EAAE,aAAa,CAAC,CAAC;QAC7E,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,oBAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,6BAA6B,CAAC,EAAE,gJAAgJ,CAAC,CAAC;QACrN,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,sBAAsB,CAAC,EAAE,iHAAiH,CAAC,CAAC;IACjL,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;AACxJ,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
package/dist/lock.js CHANGED
@@ -3,6 +3,7 @@ import { dirname, resolve } from "node:path";
3
3
  import { atomicJson, digest, fail, FORMAT, hash, inside, json, PI_VERSION } from "./common.js";
4
4
  import { readDefinition, runtimeIdentity } from "./definition.js";
5
5
  import { modelIdentity, modelRuntime, selectedModel } from "./model.js";
6
+ import { runtimePaths } from "./paths.js";
6
7
  export function lockDigest(lock) {
7
8
  const { agentDigest: _, ...content } = lock;
8
9
  return digest(content);
@@ -51,7 +52,8 @@ export function verifySourcesBeforeInstall(root, lock) {
51
52
  }
52
53
  }
53
54
  export function materialize(root, lock) {
54
- const release = resolve(root, ".pi-lock/releases", lock.agentDigest);
55
+ const paths = runtimePaths(root);
56
+ const release = resolve(paths.releases, lock.agentDigest);
55
57
  if (existsSync(resolve(release, ".complete"))) {
56
58
  verifySnapshot(release, lock);
57
59
  return release;
package/dist/lock.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"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"}
package/dist/mcp.js CHANGED
@@ -26,7 +26,7 @@ export async function prepareMcp(root, workspace, env, expected) {
26
26
  continue;
27
27
  if (server.oauth || server.auth)
28
28
  fail("UNSUPPORTED_MCP_AUTH", `${name}: supply an explicit HTTP Authorization environment binding; global Pi OAuth is never loaded.`);
29
- const client = new McpClient({ name: "pi-lock", version: "0.1.1", requestTimeoutMs: server.timeout ?? 10000,
29
+ const client = new McpClient({ name: "pi-lock", version: "0.1.2", requestTimeoutMs: server.timeout ?? 10000,
30
30
  roots: [{ uri: pathToFileURL(workspace).href, name: "workspace" }] });
31
31
  clients.set(name, client);
32
32
  if (server.command) {
@@ -0,0 +1,12 @@
1
+ export interface PiLockRuntimePaths {
2
+ home: string;
3
+ projectKey: string;
4
+ project: string;
5
+ state: string;
6
+ sessions: string;
7
+ ui: string;
8
+ releases: string;
9
+ }
10
+ export declare function piLockHome(): string;
11
+ export declare function runtimePaths(projectRoot: string): PiLockRuntimePaths;
12
+ export declare function prepareRuntimePaths(projectRoot: string): PiLockRuntimePaths;
package/dist/paths.js ADDED
@@ -0,0 +1,42 @@
1
+ import { mkdirSync, realpathSync } from "node:fs";
2
+ import { homedir } from "node:os";
3
+ import { resolve } from "node:path";
4
+ import { hash } from "./common.js";
5
+ export function piLockHome() {
6
+ const configured = process.env.PI_LOCK_HOME?.trim();
7
+ if (!configured)
8
+ return resolve(homedir(), ".pi-lock");
9
+ if (configured === "~")
10
+ return homedir();
11
+ if (configured.startsWith("~/"))
12
+ return resolve(homedir(), configured.slice(2));
13
+ return resolve(configured);
14
+ }
15
+ export function runtimePaths(projectRoot) {
16
+ const root = realpathSync(projectRoot);
17
+ const home = piLockHome();
18
+ const projectKey = hash(root).slice(0, 32);
19
+ const project = resolve(home, "projects", projectKey);
20
+ const state = resolve(project, "state");
21
+ return {
22
+ home,
23
+ projectKey,
24
+ project,
25
+ state,
26
+ sessions: resolve(state, "sessions"),
27
+ ui: resolve(state, "ui"),
28
+ releases: resolve(home, "releases"),
29
+ };
30
+ }
31
+ export function prepareRuntimePaths(projectRoot) {
32
+ const paths = runtimePaths(projectRoot);
33
+ mkdirSync(paths.home, { recursive: true, mode: 0o700 });
34
+ mkdirSync(resolve(paths.home, "projects"), { recursive: true, mode: 0o700 });
35
+ mkdirSync(paths.releases, { recursive: true, mode: 0o700 });
36
+ mkdirSync(paths.project, { recursive: true, mode: 0o700 });
37
+ mkdirSync(paths.state, { recursive: true, mode: 0o700 });
38
+ mkdirSync(paths.sessions, { recursive: true, mode: 0o700 });
39
+ mkdirSync(paths.ui, { recursive: true, mode: 0o700 });
40
+ return paths;
41
+ }
42
+ //# sourceMappingURL=paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAYnC,MAAM,UAAU,UAAU;IACxB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,GAAG;QAAE,OAAO,OAAO,EAAE,CAAC;IACzC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxC,OAAO;QACL,IAAI;QACJ,UAAU;QACV,OAAO;QACP,KAAK;QACL,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC;QACpC,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC;AACf,CAAC"}
package/dist/runtime.js CHANGED
@@ -1,4 +1,4 @@
1
- import { mkdirSync, readFileSync, realpathSync, writeFileSync } from "node:fs";
1
+ import { readFileSync, realpathSync, writeFileSync } from "node:fs";
2
2
  import { resolve } from "node:path";
3
3
  import { createAgentSession as createPiSession, createAgentSessionRuntime, SettingsManager, SessionManager, } from "@earendil-works/pi-coding-agent";
4
4
  import { lazyStream } from "@earendil-works/pi-ai";
@@ -7,6 +7,7 @@ import { digest, fail, findProject, replaceRoots } from "./common.js";
7
7
  import { readLock, verifyDefinition, verifySnapshot, materialize, draftLock, saveLock } from "./lock.js";
8
8
  import { LockedResourceLoader } from "./loader.js";
9
9
  import { assertModel, keyBinding, modelIdentity, modelRuntime, selectedModel } from "./model.js";
10
+ import { prepareRuntimePaths } from "./paths.js";
10
11
  const UI_SETTERS = new Set([
11
12
  "setTheme", "setHideThinkingBlock", "setShowCacheMissNotices", "setQuietStartup", "setCollapseChangelog", "setLastChangelogVersion",
12
13
  "setShowImages", "setClearOnShrink", "setShowTerminalProgress", "setTuiMode", "setFullscreenExitOutput", "setFullscreenScrollbar",
@@ -86,10 +87,10 @@ export async function createLockedRuntime(options = {}, prepared) {
86
87
  let lock = prepared ?? (options.dev ? await draftLock(projectRoot, true) : readLock(projectRoot));
87
88
  if (!options.dev)
88
89
  verifyDefinition(projectRoot, lock);
90
+ const paths = prepareRuntimePaths(projectRoot);
89
91
  let releaseRoot = materialize(projectRoot, lock);
90
- const stateDir = resolve(options.sessionDir ?? resolve(projectRoot, ".pi-lock/state/sessions", lock.agentDigest, digest(cwd).slice(0, 12)));
91
- const agentDir = resolve(projectRoot, ".pi-lock/state/ui");
92
- mkdirSync(agentDir, { recursive: true });
92
+ const stateDir = resolve(options.sessionDir ?? resolve(paths.sessions, lock.agentDigest, digest(cwd).slice(0, 12)));
93
+ const agentDir = paths.ui;
93
94
  const manager = options.sessionManager ?? (options.sessionFile ? SessionManager.open(resolve(options.sessionFile), stateDir, cwd) : SessionManager.create(cwd, stateDir));
94
95
  let host;
95
96
  let lastInspection;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,kBAAkB,IAAI,eAAe,EAAE,yBAAyB,EAAE,eAAe,EAAE,cAAc,GAGlG,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAkB,MAAM,WAAW,CAAC;AACzH,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAA2B,MAAM,YAAY,CAAC;AAC1H,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAwBjD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,UAAU,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,yBAAyB;IACnI,eAAe,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,YAAY,EAAE,yBAAyB,EAAE,wBAAwB;IACjI,2BAA2B,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,uBAAuB;IACnI,mBAAmB,EAAE,cAAc,EAAE,2BAA2B,EAAE,yBAAyB;CAC5F,CAAC,CAAC;AACH,SAAS,cAAc,CAAC,QAA6B,EAAE,MAAe;IACpE,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,EAAE,GAAG,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;IAChK,IAAI,MAAM;QAAE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;YACrF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAClF,OAAe,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,IAAI,wFAAwF,CAAC,CAAC;YACzJ,CAAC;QACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AACD,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IACvD,OAAO,eAAe,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE;YACrD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAAC,EAAE,CAAC,SAAS,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACnD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/C,IAAI,OAAO,KAAK,SAAS;gBAAE,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAAS,GAAgC,EAAE;IACpE,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,4HAA4H,CAAC,CAAC;IACxL,MAAM,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IACtB,OAAO;QACL,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ;QACxF,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI;QACnF,iBAAiB,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI;QACjG,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI;QAC1F,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI;QAChF,IAAI,KAAK,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;QACxC,GAAG,SAAS;KACS,CAAC;AAC1B,CAAC;AAED,SAAS,UAAU,CAAC,OAAuB,EAAE,IAAe,EAAE,GAAY;IACxE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;IACxG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;QAAE,IAAI,CAAC,0BAA0B,EAAE,qGAAqG,CAAC,CAAC;IACrN,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,kBAAkB,EAAE,qHAAqH,CAAC,CAAC;QAC3M,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAqB,EAAE,WAAmB,EAAE,GAAW,EAAE,IAAe;IAC7G,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,IAAK,IAAY,CAAC,UAAU;YAC/G,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAG,IAAY,CAAC,QAAQ;YAC9G,mBAAmB,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IACH,OAAO,YAAY,CAAC;QAClB,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa;QACzE,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ;QAClC,UAAU,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3I,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,OAAO;QACvE,OAAO,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;QAChF,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,kBAAkB,EAAE,EAAE,GAAG,EAAG,MAA+B,CAAC,GAAG,EAAE,OAAO;KACrG,EAAE,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAO,GAAyB,EAAE,EAAE,QAAoB;IAChG,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;IACnJ,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,mGAAmG,CAAC,CAAC;IAC/M,YAAY,EAAE,CAAC;IACf,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAChE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1D,IAAI,IAAI,GAAG,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAClG,IAAI,CAAC,OAAO,CAAC,GAAG;QAAE,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACpH,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1K,IAAI,IAA0B,CAAC;IAC/B,IAAI,cAAuB,CAAC;IAC5B,MAAM,MAAM,GAAqC,KAAK,EAAC,KAAK,EAAC,EAAE;QAC7D,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAClC,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAClF,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,OAAO,CAAC,GAAG;YAAE,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,EAAG,IAAI,CAAC,SAAiB,EAAE,GAAG,CAAC,CAAC;QAC5H,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACtB,IAAI,MAAmD,CAAC;QACxD,IAAI,CAAC;YAAC,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ;gBAC7D,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,oBAAoB;gBACzF,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAM,EAAE,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,oBAAoB,IAAI,QAAQ,EAAE,CAAC;gBACrI,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc;gBACvF,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,GAC3C,CAAC,CAAC;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;YAAC,MAAM,KAAK,CAAC;QAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC;YACnF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAA6B,CAAC;QACzH,CAAC;QACD,IAAI,OAAO,CAAC,GAAG;YAAE,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,WAAwD,CAAC;QAC7D,IAAI,SAA6B,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YAClC,IAAI,MAAM,CAAC,MAAM;gBAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE,IAAI,CAAC,OAAO,CAAC,GAAG;gBAAE,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAChF,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,IAAI,CAAC,wBAAwB,EAAE,0HAA0H,CAAC,CAAC;YAC1P,cAAc,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC7H,qBAAqB,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;QAC1I,CAAC,CAAC;QACF,OAAO,CAAC,cAAc,GAAG,KAAK,EAAC,QAAQ,EAAC,EAAE;YACxC,2FAA2F;YAC3F,IAAI,WAAW,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5C,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;oBAAE,IAAI,CAAC,oBAAoB,EAAE,0DAA0D,CAAC,CAAC;gBACzI,OAAO;YACT,CAAC;YACD,MAAM,YAAY,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrM,QAAQ,EAAE,CAAC;YACX,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;YAC1B,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;YAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC;QAC9E,CAAC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAA6B,CAAC;YACvI,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3D,OAAO,CAAC,gBAAgB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACzC,IAAI,KAAK,KAAK,OAAO,CAAC,aAAa;oBAAE,IAAI,CAAC,gBAAgB,EAAE,+DAA+D,CAAC,CAAC;gBAC7H,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,qBAAqB,CAAC,EAAE,CAAC;gBAC7G,IAAI,OAAQ,OAAe,CAAC,IAAI,CAAC,KAAK,UAAU;oBAAG,OAAe,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,IAAI,oDAAoD,CAAC,CAAC;YACvK,CAAC;QACH,CAAC;QACD,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,CAAC,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YACpC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAClC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,MAAM;gBAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAQ,CAAC;YAC5C,IAAI,IAAI,EAAE,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO;gBAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,YAAY,IAAI,uBAAuB,CAAC,CAAC;YAC1I,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,YAAY,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE;YACzD,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,GAAG;gBAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,OAAO,UAAU,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3H,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,GAAG,KAAK,EAAC,IAAI,EAAC,EAAE;YAC5B,IAAI,CAAC,OAAO,CAAC,GAAG;gBAAE,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;iBACjD,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAChD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;oBACpH,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;wBAAE,IAAI,CAAC,kBAAkB,EAAE,qFAAqF,CAAC,CAAC;gBAC/L,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC;gBAAC,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAC1D,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC;gBAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACjE,CAAC;YACD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAAC,QAAQ,EAAE,CAAC;YAAC,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;QACxE,CAAC,CAAC;QACF,OAAO,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAC1K,CAAC,CAAC;IACF,IAAI,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3F,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,SAAoC,CAAC;IACzC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,SAAS,KAAK,CAAC,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,eAAe,EAAE,CAAC;IAC1B,CAAC,CAAC,EAAE,CAAC;IACL,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,GAAqC,OAAO,EAAE,EAAgC,EAAE,EAAE;QACxG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC;YACtF,qBAAqB,EAAE;gBACrB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE;gBACnD,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;gBAClF,YAAY,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC;gBAC/D,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC;gBAC7D,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;aACpC;SACF,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,WAAW,KAAK,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;AACpL,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAO,GAAyB,EAAE;IACzE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC;QAAC,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAAC,CAAC;IACtD,OAAO,CAAC,EAAE,CAAC;QAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QAAC,MAAM,CAAC,CAAC;IAAC,CAAC;IAC9C,OAAO;QACL,IAAI,OAAO,KAAK,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAChD,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,IAAI,WAAW,KAAK,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACrD,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAmB;IACnD,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACjI,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,GAAI,OAAO,CAAC,OAAO,EAAU,CAAC,aAAa,CAAC;QAC1D,oFAAoF;QACpF,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QAAC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AACxC,CAAC"}
@@ -2,6 +2,10 @@
2
2
 
3
3
  Acceptance date: 2026-10-18 (Asia/Shanghai). Project and npm package: `pi.lock@0.1.0`. Supported Pi version: **1.3.0**.
4
4
 
5
+ ## Runtime-store follow-up — 2026-10-19
6
+
7
+ `npm test` passed **28 tests, 0 failures** after moving runtime data to `~/.pi-lock/`. The acceptance suite verifies that sessions are stored outside the project, projects have isolated mutable state, and identical `agentDigest` snapshots are shared. The npm build ran as part of the test command.
8
+
5
9
  The package identifier and SDK self-reference were updated for publication as `pi.lock`; the CLI command remains `pi-lock`.
6
10
 
7
11
  ## Results
@@ -1,6 +1,6 @@
1
1
  # pi.lock architecture
2
2
 
3
- The project and npm package are named **pi.lock**. The CLI command remains `pi-lock`; the SDK imports from `pi.lock`; the Agent lockfile is also `pi.lock`; local runtime state lives in `.pi-lock/`.
3
+ The project and npm package are named **pi.lock**. The CLI command remains `pi-lock`; the SDK imports from `pi.lock`; the Agent lockfile is also `pi.lock`; runtime data lives outside the project under `~/.pi-lock/` by default (`PI_LOCK_HOME` overrides it).
4
4
 
5
5
  ## One construction path
6
6
 
@@ -18,7 +18,7 @@ The runtime identity hashes compiled pi-lock JavaScript and the installed produc
18
18
 
19
19
  ## Execution and immutability
20
20
 
21
- Frozen startup checks both the installed implementation and current project inventory against pi.lock. It materializes ordinary files in `.pi-lock/releases/<agentDigest>` and verifies them before executing extensions. That snapshot, not the source tree, supplies lazy Skill/template reads and relative imports. Changing or checking out source files therefore does not switch an existing session's instruction files.
21
+ Frozen startup checks both the installed implementation and current project inventory against pi.lock. It materializes ordinary files in `~/.pi-lock/releases/<agentDigest>` and verifies them before executing extensions. Identical agent digests share this immutable cache across projects. Sessions, credentials, and Pi UI state live under `~/.pi-lock/projects/<projectKey>/state/`, where the project key is derived from the canonical project path. That snapshot, not the source tree, supplies lazy Skill/template reads and relative imports. Changing or checking out source files therefore does not switch an existing session's instruction files.
22
22
 
23
23
  Frozen reload verifies source before reinitializing the locked snapshot. Developer reload intentionally creates a new snapshot from current project resources. Provider/model definition changes during development require a restart; ordinary local prompt/Skill/extension reloads preserve Pi's normal `/reload` workflow.
24
24
 
@@ -30,7 +30,7 @@ SettingsManager is in memory in frozen mode. Developer writes use a custom stora
30
30
 
31
31
  The custom ResourceLoader never walks parent context directories or user-global resource locations. Extension compilation disables filesystem cache and tsconfig path discovery; Pi and TypeBox imports are mapped to the pinned host modules. Additional resources returned by `resources_discover` are rejected unless first declared as project resources and locked.
32
32
 
33
- No process-global environment or cwd changes are made by the SDK. The standalone CLI sets Pi's process-level paths before importing Pi so the native TUI's remaining getAgentDir calls target `.pi-lock/state/ui`. This is deliberately confined to the CLI process.
33
+ No process-global environment or cwd changes are made by the SDK. The standalone CLI sets Pi's process-level paths before importing Pi so the native TUI's remaining getAgentDir calls target the project's `~/.pi-lock/.../state/ui` directory. This is deliberately confined to the CLI process.
34
34
 
35
35
  This is a reproducibility contract for cooperating host code and compatible extensions. Unrestricted JavaScript, filesystem tools, shell commands and external services retain their normal effects. It is not a sandbox or a proof that arbitrary dynamically generated code has no ambient dependencies.
36
36
 
Binary file
@@ -2,8 +2,8 @@
2
2
  "lockfileVersion": 1,
3
3
  "runtime": {
4
4
  "pi": "1.3.0",
5
- "adapter": "0.1.1",
6
- "sha256": "5d2e339af86541a51ca58a6401073124bf065d3d764d41e3e656ba2177ed6875"
5
+ "adapter": "0.1.2",
6
+ "sha256": "fe79e3cd5ca6288970e951385d3f4664223fba59fcd29e4c7df142118feaf1ee"
7
7
  },
8
8
  "definition": {
9
9
  "settings": {
@@ -114,7 +114,7 @@
114
114
  "provider": "pi-lock-demo",
115
115
  "baseUrl": "http://localhost:0"
116
116
  },
117
- "agentDigest": "938ac05ba54d141d38586da634bee203f863b6e5c6e9d4f26b3cf6902e51e1f1",
117
+ "agentDigest": "0eace02fff8709d8b827355db5abf971b2d79dbdb34baff92c3d3ceee0b0251b",
118
118
  "effective": {
119
119
  "model": {
120
120
  "id": "demo",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "pi.lock",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "pi.lock",
9
- "version": "0.1.1",
9
+ "version": "0.1.2",
10
10
  "dependencies": {
11
11
  "@earendil-works/pi-ai": "1.3.0",
12
12
  "@earendil-works/pi-coding-agent": "1.3.0",
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "pi.lock",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "type": "module",
5
- "description": "Project-local, reproducible Pi agents for SDK, TUI and RPC",
5
+ "description": "A portable Pi agent you can version and roll back with Git",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git+https://github.com/louis-she/pi.lock.git"