Guide subagents to private session scratch - #1956
Merged
Merged
Conversation
Aaronontheweb
force-pushed
the
plan/subagent-session-scratch-guidance
branch
2 times, most recently
from
August 14, 2026 18:46
465313e to
cab0124
Compare
| public async Task Session_scratch_context_does_not_authorize_headless_prompt_worthy_shell() | ||
| { | ||
| using var netclawHome = new DisposableTempDir(); | ||
| var sessionDirectory = Path.Combine(netclawHome.Path, "sessions", "example"); |
Aaronontheweb
force-pushed
the
plan/subagent-session-scratch-guidance
branch
4 times, most recently
from
August 14, 2026 19:37
7d8d954 to
99a8c3b
Compare
Aaronontheweb
enabled auto-merge (squash)
August 14, 2026 19:37
Aaronontheweb
force-pushed
the
plan/subagent-session-scratch-guidance
branch
from
August 14, 2026 19:45
99a8c3b to
afe0902
Compare
This was referenced Aug 20, 2026
Aaronontheweb
added a commit
that referenced
this pull request
Aug 20, 2026
* Sync delta specs for the last two completed changes Apply the redirect-shared-temp-to-session-scratch delta to session-cwd and tool-approval-gates. The OpenSpec CLI applied both files. Merge the surface-reminder-schedule-failures delta into netclaw-scheduling by hand. PR #2024 already corrected that requirement against the merged code, so a programmatic apply would undo those corrections. Keep the corrected text and add the scheduling-failure content: - An execution failure and a scheduling failure share one ConsecutiveFailures count. - A successful reschedule alone does not reset the count. - An unattended reschedule site emits ReminderScheduleFailed at Warning severity, and ReminderAutoDisabled at Critical severity on the threshold. - The set_reminder create path and update path return the error to the caller and emit no alert. Drop three stale delta claims. The merged code disables a reminder. It does not set a "paused" status and it does not write tasks.json. ReminderExecutionActor has no ExecutionTimeoutSeconds constant, so the one-hour absolute limit stands. * Archive the last two completed OpenSpec changes Move each change to openspec/changes/archive/2026-08-19-<name>/. The code of both changes is merged on dev. - surface-reminder-schedule-failures: PR #1886. - redirect-shared-temp-to-session-scratch: PRs #1890, #1925, #1926, #1945, and #1956. Tick task 4.3 of redirect-shared-temp-to-session-scratch. The full pr_validation suite ran green on Windows against current dev. Leave the other boxes unticked. The maintainer accepts tasks 4.5 and 4.6 of surface-reminder-schedule-failures as guaranteed by construction. The maintainer accepts task 6.4 of that change and task 4.4 of redirect-shared-temp-to-session-scratch as an eval-credentials gap.
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
session_dirin Personal and Team subagent working context while preserving Public redaction and malformed-path fail-closed behaviorWorkingDirectoryLive evidence
Post-0.26.0 traffic contained 69 prompts across 285 shell calls. The largest avoidable cluster was 15 read-heavy prompts from one headless subagent working beneath shared platform temp even though its execution scope already owned private session scratch.
Eval correction
The first reported 5/5 result was invalid: all ten child shell calls omitted
WorkingDirectoryand passed through the existing ShellTool fallback. Replaying that archive under the corrected assertion yields 0/5.Fresh run
a1077feb-6bd7-413c-8a90-c651aa5a03dfpassed 4/5 againstdeepseek-v4-flash-dspark. Four children passed the exact bound session directory on both Git diagnostics. One omitted it and failed as intended. The separate de-tautologized parent eval remains 3/5 alignment evidence, not a passing gate.Validation
WorkingDirectoryassertionsPowerShellHostProbeTeststiming warning outside this diffScope
No shell policy authority, grant meaning, persistent schema, session-directory lifecycle, or public API changes.