Constrain secret readers with curry arguments - #121
Open
nishu-builder wants to merge 1 commit into
Open
Conversation
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
from
August 20, 2026 00:36
e4de2c7 to
f7c80c3
Compare
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
2 times, most recently
from
August 20, 2026 18:44
6e28c12 to
3647249
Compare
nishu-builder
force-pushed
the
codex/conversation-secrets
branch
from
August 20, 2026 18:52
8e2bfab to
398e0cb
Compare
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
from
August 20, 2026 18:52
3647249 to
18a5c1d
Compare
nishu-builder
force-pushed
the
codex/conversation-secrets
branch
2 times, most recently
from
August 20, 2026 21:08
1670ca7 to
ba030a3
Compare
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
from
August 20, 2026 21:08
18a5c1d to
459ae0c
Compare
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
2 times, most recently
from
August 20, 2026 22:45
33fd957 to
0ea0e80
Compare
nishu-builder
force-pushed
the
codex/constrained-secret-readers
branch
from
August 21, 2026 00:48
0ea0e80 to
5d8f6f4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.caos-secretsreader=line to contain an explicit typed--basecurry;reader=denotes assembly, so there is nocurrytoken on the line:@=resolutionThis PR is deliberately generic: it does not change
llm-step,llm-call, conversation request construction, or Anthropic defaults. The LLM fixtures are changed only to use the required explicit reader base.Why
Path-only readers constrain worker identity but leave every additional argument unconstrained. Secret owners need to pin local grant policy such as an allowed destination, repository, or environment without creating repository-owned wrapper expressions.
This restores inline reader constraints removed in
91866bd94: content-addressed worker identity belongs in the source tree, while the secret owner's local constraints belong with the per-device secret grant.Syntax
Each
reader=is one independent partial ArgTree. Missing, duplicate, rebound, malformed, untyped, and unsuitable bases fail clearly. Secret values and entropy remain out of ArgTrees; only the existing entropy-derivedsecret-hashenters them.Security coverage
secret-hashvalues cannot bypass a mismatchDependency
This PR is one commit on top of current
main, which contains #113. It does not alter #113'ssub-runconversation design; it only changes reader parsing and migrates reader declarations to the explicit-base grammar.Validation
cargo fmt --all -- --checkcargo test --workspacenix buildCAOS_SALT=$(date --iso=s) result/bin/caos-cli run-tool test: 45/45 passed, includingsecretsandsub-rungit diff --check