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
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,14 @@

## Unreleased

- Security (daemon, remote/proxy HTTP only): when `AGENT_DEVICE_HTTP_AUTH_HOOK` is configured and a
request's hook result does not attest a `tenantId`, the request is now refused (401) outright — the
daemon no longer runs it as whichever tenant the client declared (RPC body `meta.tenantId` or
`flags.tenant`, or the `x-agent-device-tenant` header on the upload/artifact-download/diagnostics
routes) and no longer admits it unscoped when the client declares nothing either. This closes both
a shared-token impersonation path and an unscoped-access path to tenant-owned sessions/artifacts in
multi-tenant deployments. Deployments with no hook configured (the local loopback CLI) are
unaffected. A hook must attest `tenantId` on every request it wants the daemon to admit.
- Breaking (0.21): removed aggregate performance compatibility (`perf`, `perf sample`, `perf metrics`, the `metrics` alias, optionless `client.observability.perf()`, and SDK `area: 'metrics'`). Use `perf frames`, `perf memory sample`, `perf cpu profile start|stop|report`, or `perf trace start|stop`; removed CLI and raw daemon forms fail with this migration guidance.
- Breaking (0.21): removed legacy batch JSON steps with `positionals`/`flags`. Use `{"command":"...","input":{...}}`; rejected steps now include a concrete structured example.
- Breaking (0.21): removed the deprecated Node client `command.rotate` wrapper and its `RotateCommandOptions` / `RotateCommandResult` exports. Use `command.orientation`; the already-removed CLI `rotate` form keeps its targeted migration error.
Expand Down
4 changes: 4 additions & 0 deletions src/__tests__/test-utils/env.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export function restoreEnv(key: string, previous: string | undefined): void {
if (previous === undefined) delete process.env[key];
else process.env[key] = previous;
}
Loading
Loading