| … | … | @@ -2305,6 +2309,9 @@ export const layerWsRpc = ( | |
| 2306 | 2310 | yield* usageLimitSources.refresh; | |
| 2307 | 2311 | } | |
| 2312 | + | if (input.cwd === undefined) { | |
| 2313 | + | yield* providerInstancesMutator.reloadSecrets(input.instanceId); | |
Please move secret reload followed by provider refresh into a domain service operation. This adds feature-specific conditional, multi-step dispatch to the RPC handler; the transport should call one service method that owns refresh ordering, rather than coordinate the instance mutator and provider registry itself.
Posted via Macroscope — Effect Service Conventions
Fixed in b05724eae4: ProviderRegistry.reloadSecretsAndRefresh owns the reload then refresh, and the RPC handler calls only that method. Covered by ProviderRegistry.test.ts and ws.test.ts.
Sorry, I'm unable to act on this request because you do not have permissions within this repository.
| … | … | @@ -0,0 +1,206 @@ | |
| 21 | + | import { ChildProcess } from "effect/process"; | |
| 22 | + | ||
| 23 | + | import * as Settings from "../serverSettings.ts"; | |
| 24 | + | ||
Please define this new service with Context.Service and its interface inline, using SecretResolver["Service"] for method types. The standalone SecretResolverShape and default-backed Context.Reference do not follow the canonical service definition; acquire the resolver through its layer rather than silently substituting a no-op implementation. This requires updating the tag and its consumers together.
Posted via Macroscope — Effect Service Conventions
Fixed in b05724eae4: SecretResolver is now a Context.Service with its interface inline, built with SecretResolver.of and provided through layer. Covered by SecretResolver.test.ts and ProviderInstanceRegistry.test.ts.
Sorry, I'm unable to act on this request because you do not have permissions within this repository.
| … | … | @@ -0,0 +1,206 @@ | |
| 66 | + | if (result.code !== 0) { | |
| 67 | + | // `op` never echoes a secret on stderr, so its reason is safe to log. | |
| 68 | + | yield* Effect.logWarning("Could not read secret from 1Password", { | |
| 69 | + | account, | |
Please replace raw CLI stderr, reference strings, and String(error) log annotations with bounded, normalized diagnostics (for example, stage, exit status, and reference count). The new logging here and in readTogether/bounded exposes command output and arbitrary failure text, which the service conventions prohibit even if the CLI normally avoids printing secrets. Update all three logging boundaries; preserve underlying errors only as causes where applicable.
Posted via Macroscope — Effect Service Conventions
Fixed in b05724eae4: logs now carry only stage, exit code, reference count, or the error tag. Stderr, references, the account, and String(error) are no longer logged.
Sorry, I'm unable to act on this request because you do not have permissions within this repository.