Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion hosted/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ pnpm test:hosted
pnpm build:hosted
```

Tests run each production Worker in real workerd, the account's with disposable Postgres clones and a local OAuth simulator. `pnpm --filter dormouse-hosted test:miniflare` runs the rendezvous, Pocket, and boundary suites alone, without Docker. The build writes each Worker's static files under `dist/<worker>/` (Pocket at `dist/relay/`, `/connect/` at `dist/relay/connect/`) and dry-runs all three Workers; it does not deploy. Production deploys only through the release workflow.
Tests run each production Worker in real workerd, the account's with disposable Postgres clones and a local OAuth simulator. `pnpm --filter dormouse-hosted test:miniflare` runs the rendezvous, Pocket, boundary, and push-egress suites alone, without Docker. The build writes each Worker's static files under `dist/<worker>/` (Pocket at `dist/relay/`, `/connect/` at `dist/relay/connect/`) and dry-runs all three Workers; it does not deploy. Production deploys only through the release workflow.

The relay Worker's one-time rendezvous and `/connect/` page run on their own, without Docker or Postgres (its Relay routes answer 503 there):

Expand Down
4 changes: 2 additions & 2 deletions lib/src/lib/platform/tool-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ export type ToolKeyScope = 'user' | 'builtin';
export const isToolKeyScope = (value: unknown): value is ToolKeyScope => value === 'user' || value === 'builtin';

/** Where a tool's browser renders once it serves. `iframe` frames the page;
* `agent-browser-screencast` drives a real browser, which is what makes a tool
* agent-drivable via `dor agent-browser --surface` (`docs/specs/dor-tool.md`). The repo
* `agent-browser-screencast` and `playwright-screencast` drive a real browser,
* which is what makes a tool agent-drivable (`docs/specs/dor-tool.md`). The repo
* declares it rather than the tool: which renderer suits a tool is a Dormouse-
* side judgement, not something the tool knows about itself. The only render
* modes a Tool Surface ever takes, so the Display modal and the Wall's swap
Expand Down
4 changes: 1 addition & 3 deletions lib/src/lib/test-local-storage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@ import { vi } from 'vitest';
*
* Uses `vi.stubGlobal` rather than `Object.defineProperty` so the stub is
* restore-tracked: a test's `vi.unstubAllGlobals()` puts the environment back,
* and it matches how the rest of the lib's tests stub this global
* (`local-json-store.test.ts`, `feature-flags.test.ts`, `alert-settings.test.ts`,
* `window-persistence.test.ts`, `remote/burrow/{acl,enrollment}.test.ts`).
* and it matches how the rest of the lib's tests stub this global.
*/
export function installLocalStorageStub(): void {
const values = new Map<string, string>();
Expand Down
3 changes: 1 addition & 2 deletions lib/src/remote/burrow/burrow-bounds.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,6 @@ describe('BurrowRuntime bounds', () => {
return created;
}

/** The connection ceremony through to its outcome, whatever that outcome is. */
/** Connect with a fresh proof, or — with `window` — by riding the presence window. */
async function connectClient(
clientId: string,
Expand Down Expand Up @@ -658,7 +657,7 @@ describe('BurrowRuntime bounds', () => {

it('spends nothing on a transport frame naming no session, and destroys none', async () => {
await establish('c1');
const other = await establish('c2');
await establish('c2');
crypto.reset();

sendE2eFrame(socket, {
Expand Down
2 changes: 1 addition & 1 deletion lib/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export default defineConfig({
"dor-tools-builtin": path.resolve(import.meta.dirname, "../dor-tools-builtin/src"),
// And for the Tool protocol (`dor-tools-lib/*`).
"dor-tools-lib": path.resolve(import.meta.dirname, "../dor-tools-lib/src"),
// `connect-port.ts` imports `dor-lib-common/browser-providers`; that package's
// `Wall` and `useDorControl` import `dor-lib-common/*` subpaths; that package's
// `exports` resolve to a `dist` a vitest run has no reason to have built.
// Alias to source so the tests never depend on build order.
"dor-lib-common": path.resolve(import.meta.dirname, "../dor-lib-common/src"),
Expand Down
2 changes: 1 addition & 1 deletion lib/vite.pocket.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ export default defineConfig({
// Storybook configs.
"remote-lib-common": fileURLToPath(new URL("../remote-lib-common/src", import.meta.url)),
// `dor-lib-common` has the same unbuilt-`dist` exports problem, reached via
// `Wall` → `useDorControl` → `connect-port`.
// `Wall` and `useDorControl`.
"dor-lib-common": fileURLToPath(new URL("../dor-lib-common/src", import.meta.url)),
// `dor-tools-lib` too, reached via the terminal parser's OSC 367 readers.
"dor-tools-lib": fileURLToPath(new URL("../dor-tools-lib/src", import.meta.url)),
Expand Down
2 changes: 1 addition & 1 deletion relay/src/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ const MAX_REAUTH_NONCE_SESSIONS = 32;
*/
export const MAX_PENDING_CHALLENGES = 64;
/**
* How often {@link CreatedApp.sweepRevokedBurrows} should be run. `index.ts` owns
* How often {@link CreatedApp.sweepRevokedBurrows} should be run. `start.ts` owns
* the timer — `createApp` starts no background work of its own.
*
* A minute is chosen against what revocation is: a person editing a file after
Expand Down
4 changes: 2 additions & 2 deletions standalone/src/WorkspaceTeardownModal.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { useCallback, useRef, useSyncExternalStore } from 'react';
// Standalone reaches into the lib source directly (same relative form as the
// sibling UpdateDebugModal.tsx). The terminal registry comes in via the
// `dormouse-lib` alias, matching quit.ts.
// `dormouse-lib` alias, matching quit-confirm-store.ts.
import { ModalFrame } from '../../lib/src/components/design';
import { WorkspaceKillConfirm } from '../../lib/src/components/WorkspaceKillConfirm';
import { subscribeToTerminalPaneState } from 'dormouse-lib/lib/terminal-registry';
Expand Down Expand Up @@ -40,7 +40,7 @@ export function WorkspaceTeardownModalHost() {
);
}

// Exported for Storybook (WorkspaceTeardownModal.stories.tsx), which renders the
// Exported for Storybook (lib/src/stories/WorkspaceTeardownModal.stories.tsx), which renders the
// presentational modal directly — same split as ExternalLinkModal's stories.
export function WorkspaceTeardownModal({
confirming,
Expand Down
6 changes: 3 additions & 3 deletions website/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,9 @@ export default defineConfig(({ mode }) => ({
// `remote-lib-common`, whose package `exports` resolve to a `dist` this
// build never compiles. Alias it to source, exactly like `dormouse-lib`.
"remote-lib-common": path.resolve(import.meta.dirname, "../remote-lib-common/src"),
// Same story for `dor-lib-common`: `Wall` → `useDorControl` → `connect-port`
// imports its `./browser-providers` subpath. The directory alias covers both
// that subpath and the bare specifier.
// Same story for `dor-lib-common`: `Wall` and `useDorControl` import its
// `./browser-providers` and `./browser-viewports` subpaths. The directory
// alias covers those subpaths and the bare specifier.
"dor-lib-common": path.resolve(import.meta.dirname, "../dor-lib-common/src"),
// Wall also imports `dor/*` (protocol + command types); `dor` has no
// package `exports`, and vite does not read tsconfig paths, so resolve it
Expand Down
Loading