Conversation
The goose wrapper now creates the wall file and exports its path via GOOSE_GTWALL_FILE, which all delegates inherit automatically. This replaces the dependency on GOOSE_SERVER__SECRET_KEY (a server implementation detail) with an explicit, purpose-built env var that follows the same pattern as GOOSE_MOIM_MESSAGE_FILE for telepathy. Wall filenames use PID + RANDOM for uniqueness (wall-<pid>-<rand>.log). Positions directories are derived from the wall path rather than a separate naming scheme. Dashboard extracts and sanitizes WALL_ID from the wall filename for screen session and portfile scoping. AGENT_SESSION_ID was considered but rejected: delegates get their own value, so it cannot scope a shared wall file.
wpfleger96
approved these changes
Feb 19, 2026
- goose: drop exec so EXIT trap fires and cleans up wall + telepathy - gtwall: anchor sed in --list to strip only the wall- prefix - goosetown-ui: use removeprefix instead of replace for wall-id derivation
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.
Switch gtwall, dashboard, and goosetown-ui from deriving wall/session identity from the first 8 chars of GOOSE_SERVER__SECRET_KEY (a server UUID) to using AGENT_SESSION_ID directly. AGENT_SESSION_ID is set natively by goose (e.g. "20260219_52"), inherited by all delegates, and is already short enough to use without truncation.
All three components now sanitize the ID to [A-Za-z0-9_-] before using it in filenames, screen session names, and portfile paths — ensuring consistent wall file resolution across gtwall, dashboard, and the Python UI server.
Existing wall files from prior sessions (named with 8-char UUID prefixes) will be orphaned but are harmless and age out naturally. goosetown-ui falls back to the newest wall-*.log if no exact match is found.