## Why
Report prompt metadata should reflect the persisted rollout instead of
unverified tags supplied by the client.
## What changed
- Hash the session's base instructions with SHA-256 after normalizing
whitespace, and add the result to report uploads as `prompt_hash`.
- Treat `prompt_hash` and `prompt_version` as reserved tags: remove
client-provided values and only restore `prompt_hash` when it can be derived
from the rollout.
- Collect the prompt hash alongside the selected turn's model and reasoning
effort metadata.
## Testing
Added unit tests for prompt normalization, rollout metadata selection, and
replacement or removal of client-provided prompt tags.
GitOrigin-RevId: 4a21d7b90e100f96f3f7b39d07fec75b30c0d33f
## What changed
- Read the selected turn's `model` and reasoning `effort` from its rollout and add them to the report's upload tags.
- Use the latest turn context when the request has no `turn_id`, without substituting another turn when a requested ID is missing.
- Prefer the request-derived model and effort over values captured in the report snapshot.
## Testing
- Added coverage for selecting a reported turn, falling back to the latest turn, handling a missing turn, preserving an unspecified effort, and upload-tag precedence.
GitOrigin-RevId: 133bab7730e18b28c4b26ae55fbce55d8e5705fb
## Summary
- require the main agent to read selected `SKILL.md` files completely,
continuing truncated or paginated reads through EOF
- require the main agent to personally read task-required instruction
references instead of delegating their interpretation
- clarify that progressive disclosure selects relevant files without
permitting partial reads
- preserve subagent use for task work when the selected skill allows it
- cover both absolute-path and aliased-root prompt variants
## Why
Partial reads can skip routing and verification requirements later in
skill instructions. Delegated summaries can also omit constraints the
main agent needs to follow. The existing "Read only enough" wording made
both behaviors appear acceptable.
## Impact
Agents should follow complete selected skill instructions while
continuing to avoid unrelated references, scripts, and assets. Subagents
remain available for task execution where permitted.
## Test plan
- `just test -p codex-core-skills` (101 passed)
- `just fmt`
- `git diff --check`