You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: allow yarn's registry through the egress sidecar (SYD-269) (#231)
yarn defaults to registry.yarnpkg.com, which EGRESS_BASELINE never
allowed, so every `yarn install` in a dispatched session got a 403
CONNECT from the syd-egress sidecar. Reproduced against the live
sidecar: `npm view left-pad` returns 1.3.0 while `yarn add left-pad`
fails with "tunneling socket could not be established, statusCode=403".
HEX-4's session reported this as "no network access", which read as a
generic sandbox limit rather than a one-host allowlist gap.
Added to the baseline rather than derived from a project's stack.cli.
Deriving is what the issue proposed and it looks tidier, but there is
one shared sidecar per host and each worker stands it up from its own
config: the base config serves the yarn project while the codex and
gemini configs ask for github.com, so derivation makes those configs
disjoint instead of nested and they rebuild the sidecar in turn -- the
boot-order-dependent allowlist SYD-270 just fixed. The baseline keeps
`satisfies()`'s nesting invariant intact and covers the next yarn
project without anyone remembering to declare it. Exposure is
unchanged: registry.yarnpkg.com is a CDN alias serving the same public
packages as the already-allowed registry.npmjs.org.
The two ensureEgressGuard suites now derive their expected
ALLOWED_DOMAINS from egressAllowlist() instead of spelling it out --
those cases are about docker orchestration and credential injection,
not allowlist contents, which are asserted directly. New tests pin the
yarn host as unconditional and assert the nesting invariant a future
derivation would break.
0 commit comments