diff --git a/docs/model-seeding.md b/docs/model-seeding.md index 2c46fccc..57293435 100644 --- a/docs/model-seeding.md +++ b/docs/model-seeding.md @@ -62,8 +62,15 @@ model/provider name in the codebase is a literal string someone typed in. Read from the upstream Interchange checkout's `packages/` directory (upstream, not vendored into this repo): `inference-discovery`, `inference-discovery-{anthropic,google-genai,openai}`, and -`inference-testing`. There is no `@intx/inference-catalog` package — it does -not exist upstream or on npm (confirmed via `npm view`). +`inference-testing`. These are separate from `@intx/inference-catalog`, +which does exist and already ships in this repo: pinned in `package.json` +at `0.3.0` and imported directly (not vendored — see `VENDORED.md`) by +`packages/inference-catalog/src/offering-capabilities.ts` for +`catalogProviders`, the pinned catalog data that `seedCatalog` reads +through today (see "How workbench seeds models and providers today", +above). It is a baked catalog of prior probe results, not a discovery +service — it has no relation to `inference-discovery`/`inference-testing` +beyond the name. `@intx/inference-discovery` is **not** a live model/provider discovery service. Per its own README, it is the runtime for Interchange's internal diff --git a/docs/posix-tools.md b/docs/posix-tools.md index 584adcc6..c2df20c2 100644 --- a/docs/posix-tools.md +++ b/docs/posix-tools.md @@ -1,14 +1,24 @@ -# Posix tools (design note) +# Posix tools (design note — not implemented) -`@corbits/posix-tools` runs only on a workbench placed on isolated capacity +Nothing under this name ships in workbench today. There is no +`@corbits/posix-tools` package anywhere in this tree. Upstream Interchange +does publish a real package in this space, `@intx/tools-posix` — its +`sidecar-bundle:run_shell` tool already appears in this repo's fixtures +(`packages/mocks/src/ollama/scenarios.ts`, +`vendor/intx/hub-sessions/src/event-collector.test.ts`) — but workbench +does not depend on it and has built no integration against it. Treat +everything below as a proposal for that integration, not a description of +current behavior. + +The design: run only on a workbench placed on isolated capacity (`sidecarPlacement` enabled, backed by a real `SidecarProvisioner`) — the dedicated container is the sandbox boundary, so there is no in-process -sandboxing to build. Tool set: `shell`, `read`, `write`, `glob`, `grep`. -Every write-capable tool (`shell`, `write`) declares `approval: "ask"`, so -each call surfaces through the existing human-approval path before it runs -— no tool in this package ever gets a standing auto-approve. The sandbox -policy is a named, auditable, per-workbench setting (alongside -`sidecarPlacement`), defaulting closed until an operator opts a workbench -in — never a single all-or-nothing flag. This mirrors the same pattern -already used for exclusive sidecar placement itself: capability is inert -until named, scoped, and explicitly turned on. +sandboxing to build. Every write-capable tool it exposes (shell, write) +would declare `approval: "ask"`, so each call surfaces through the +existing human-approval path before it runs — no tool in this package +would ever get a standing auto-approve. The sandbox policy would be a +named, auditable, per-workbench setting (alongside `sidecarPlacement`), +defaulting closed until an operator opts a workbench in — never a single +all-or-nothing flag. This mirrors the pattern already used for exclusive +sidecar placement itself: capability is inert until named, scoped, and +explicitly turned on. diff --git a/package.json b/package.json index dc112ab7..4d3b7d65 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "workflows/*" ], "scripts": { - "check": "bun run typecheck && bun run lint && bun run test", + "check": "bun run typecheck && bun run lint && bun run test && bun run check:structural", + "check:all": "bun run check && bun run check:packages", "typecheck": "bun run scripts/run-all.ts typecheck", "lint": "prettier --check . && eslint .", "format": "prettier --write .", @@ -23,6 +24,7 @@ "setup:memory": "bun run scripts/setup-memory.ts", "seed": "bun packages/cli/src/index.ts seed", "reset": "bun packages/cli/src/index.ts reset", + "check:structural": "bun test scripts/checks/test && bun run check:deletion && bun run check:killdates && bun run check:licenses && bun run check:no-product-tenancy && bun run check:browser-safe-subpaths && bun run check:web-utilities && bun run check:tailwind-source && bun run check:ui-vocabulary && bun run check:react-ui-drift && bun run check:react-ui-pin && bun run check:tool-package-pins", "check:deletion": "bun run scripts/checks/deletion.ts", "check:killdates": "bun run scripts/checks/killdates.ts", "check:packages": "bun run scripts/checks/packages.ts",