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
4 changes: 4 additions & 0 deletions packages/contracts/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,10 @@
"types": "./src/keyboard-runtime.ts",
"default": "./src/keyboard-runtime.ts"
},
"./lease-scope": {
"types": "./src/lease-scope.ts",
"default": "./src/lease-scope.ts"
},
"./local-interactor-operation-set": {
"types": "./src/local-interactor-operation-set.ts",
"default": "./src/local-interactor-operation-set.ts"
Expand Down
File renamed without changes.
1 change: 1 addition & 0 deletions scripts/layering/contracts-exports.snapshot.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
"@agent-device/contracts/is-predicate",
"@agent-device/contracts/keyboard",
"@agent-device/contracts/keyboard-runtime",
"@agent-device/contracts/lease-scope",
"@agent-device/contracts/local-interactor-operation-set",
"@agent-device/contracts/logs-runtime-plan",
"@agent-device/contracts/managed-device-allocation",
Expand Down
5 changes: 4 additions & 1 deletion src/client/client-normalizers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@ import type { SessionRuntimeHints } from '@agent-device/kernel/contracts';
import { AppError, type DaemonError } from '@agent-device/kernel/errors';
import { sanitizeErrorCause } from '@agent-device/kernel/redaction';
import type { SnapshotNode } from '@agent-device/kernel/snapshot';
import { leaseScopeFromOptions, leaseScopeToRequestMeta } from '../core/lease-scope.ts';
import {
leaseScopeFromOptions,
leaseScopeToRequestMeta,
} from '@agent-device/contracts/lease-scope';
import type { DaemonRequest } from '../daemon/daemon-request.ts';
import {
asRecord,
Expand Down
5 changes: 4 additions & 1 deletion src/commands/command-flags.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
import type { CommandFlags } from '@agent-device/contracts/command';
import { screenshotFlagsFromOptions } from '@agent-device/contracts/capture';
import { leaseScopeFromOptions, leaseScopeToCommandFlags } from '../core/lease-scope.ts';
import {
leaseScopeFromOptions,
leaseScopeToCommandFlags,
} from '@agent-device/contracts/lease-scope';
import { stripUndefined } from '@agent-device/kernel/record';
import { getFlagDefinitions } from './cli-grammar/flag-registry.ts';
import type { InternalRequestOptions } from '@agent-device/contracts/client';
Expand Down
2 changes: 1 addition & 1 deletion src/daemon-client/daemon-client-rpc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import {
leaseScopeFromRequest,
leaseScopeToLeaseRpcParams,
type LeaseRpcCommand,
} from '../core/lease-scope.ts';
} from '@agent-device/contracts/lease-scope';

export function handleDaemonHttpResponseBody(
body: string,
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/__tests__/lease-context.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import {
resolveRequestOrSessionLeaseScope,
type SessionLease,
} from '../lease-context.ts';
import { buildLeaseDiagnosticsContext } from '../../core/lease-scope.ts';
import { buildLeaseDiagnosticsContext } from '@agent-device/contracts/lease-scope';
import type { DaemonRequest } from '../daemon-request.ts';

test('buildSessionLeaseFromRequest captures complete request lease scope', () => {
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/handlers/lease.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import {
leaseScopeToAllocateRequest,
leaseScopeToHeartbeatRequest,
leaseScopeToReleaseRequest,
} from '../../core/lease-scope.ts';
} from '@agent-device/contracts/lease-scope';
import { AppError, createRequestCanceledError, errorMessage } from '@agent-device/kernel/errors';
import { LEASE_ALLOCATION_BUDGET_MS } from '@agent-device/command-registry/timeout-policy';
import { getRequestSignal, isRequestCanceled } from '@agent-device/host-kit/request';
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/lease-context.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import {
isProxyLeaseScope,
leaseScopeFromRequest,
type LeaseScope,
} from '../core/lease-scope.ts';
} from '@agent-device/contracts/lease-scope';

export { DEFAULT_PROXY_LEASE_TTL_MS, findMissingProxyLeaseFields, isProxyLeaseScope };
export type { LeaseScope };
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/lease-lifecycle.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { emitDiagnostic } from '@agent-device/host-kit/diagnostics';
import { leaseScopeToReleaseRequest } from '../core/lease-scope.ts';
import { leaseScopeToReleaseRequest } from '@agent-device/contracts/lease-scope';
import { clearDeviceClaim } from './device-claims.ts';
import type { LeaseRegistry } from './lease-registry.ts';
import type {
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/request-admission.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import {
resolveLeaseScope,
resolveRequestOrSessionLeaseScope,
} from './lease-context.ts';
import { leaseScopeToHeartbeatRequest } from '../core/lease-scope.ts';
import { leaseScopeToHeartbeatRequest } from '@agent-device/contracts/lease-scope';
import type { LeaseRegistry } from './lease-registry.ts';
import type { DaemonRequest } from './daemon-request.ts';
import type { SessionState } from './session-state.ts';
Expand Down
2 changes: 1 addition & 1 deletion src/daemon/server/daemon-session-lease-finalizer.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { leaseScopeToReleaseRequest } from '../../core/lease-scope.ts';
import { leaseScopeToReleaseRequest } from '@agent-device/contracts/lease-scope';
import { emitDiagnostic } from '@agent-device/host-kit/diagnostics';
import type { ExpiredProviderLeaseReleaser } from '../provider-lease-expiry.ts';
import type { LeaseRegistry } from '../lease-registry.ts';
Expand Down
2 changes: 1 addition & 1 deletion src/remote/remote-connection-state.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
leaseScopeFromOptions,
leaseScopeToCommandFlags,
leaseScopeToConnectionMetadata,
} from '../core/lease-scope.ts';
} from '@agent-device/contracts/lease-scope';

export type RemoteConnectionState = {
version: 1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import http from 'node:http';
import os from 'node:os';
import path from 'node:path';
import { test } from 'vitest';
import { DEFAULT_PROXY_LEASE_TTL_MS } from '../../../src/core/lease-scope.ts';
import { DEFAULT_PROXY_LEASE_TTL_MS } from '@agent-device/contracts/lease-scope';
import { sendToDaemon } from '../../../src/daemon-client/daemon-client.ts';
import { LeaseRegistry } from '../../../src/daemon/lease-registry.ts';
import { createDaemonHttpServer } from '../../../src/daemon/server/http-server.ts';
Expand Down
2 changes: 1 addition & 1 deletion test/wire-compat/ledger.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"packages/kernel/src/errors.ts#normalizeError": "sha256:5d9f906fd326676b4c3095cd6bd675c784cb26f36f4b8344a108cf5f7628f9dc",
"packages/kernel/src/errors.ts#readDiagnosticsRecordRef": "sha256:3a210f401221c0a15eb75d488450034885c7b73be39f5e93424c72874d14c395",
"src/commands/cli-grammar/types.ts#DaemonCommandRequest": "sha256:ea3f4118244711f0eaec0e471f62b0de42ca97181c085df165d37b63301a4619",
"src/core/lease-scope.ts#LeaseRpcCommand": "sha256:714f66efa725a5d0654e492a76daeb4059caad31b79562cfc9133029ea95bfe5",
"packages/contracts/src/lease-scope.ts#LeaseRpcCommand": "sha256:714f66efa725a5d0654e492a76daeb4059caad31b79562cfc9133029ea95bfe5",
"src/daemon-client/daemon-client-progress.ts#ProgressResponseFormat": "sha256:6d7a99ac13fd422671fd86f8fe093efa40ca369f4ae1f97c98d40a7132543637",
"src/daemon-client/daemon-client-progress.ts#createInvalidDaemonResponseError": "sha256:0af812346b667a23fdfef641b242cd86d07edaa05eb928c4c531628c09a4031b",
"src/daemon-client/daemon-client-progress.ts#shouldReadDaemonProgressStream": "sha256:6811404f41d8db3fa6fc751332c7186a2399ec7ecbc4e9c547d9cb9f14dbb350",
Expand Down
2 changes: 1 addition & 1 deletion test/wire-compat/surface.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ export const WIRE_SURFACE: readonly WireSurfaceGroup[] = [
// `flags`/`input` bags, and ADR 0006 calls new flags additive.
...from('src/commands/cli-grammar/types.ts', 'DaemonCommandRequest'),
// The lease method vocabulary the client and daemon must agree on.
...from('src/core/lease-scope.ts', 'LeaseRpcCommand'),
...from('packages/contracts/src/lease-scope.ts', 'LeaseRpcCommand'),
// Producer side: the method vocabulary a released client sends, and the
// projections that turn each method's params into a DaemonRequest.
...from(
Expand Down
5 changes: 3 additions & 2 deletions test/wire-compat/wire-mutations.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -307,9 +307,10 @@ const CLOSURE_PROBES: readonly { reachedFrom: string; omit: string }[] = [
omit: 'packages/contracts/src/request-progress.ts#RequestProgressEvent',
},
{
// Plain relative import inside src/.
// Declaration moved into packages/contracts; the consumer reaches it through the
// package's exports map.
reachedFrom: 'buildLeaseRpcParams',
omit: 'src/core/lease-scope.ts#LeaseRpcCommand',
omit: 'packages/contracts/src/lease-scope.ts#LeaseRpcCommand',
},
{
// Workspace specifier resolved through the package's own exports map.
Expand Down
Loading