github / github/app

Archived child sessions cannot be restored with their conversation history

Offen
#2,990 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Keine Sprachdaten
Sterne
2.1k
Forks
153
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

## Summary

A coordinated child session repeatedly emitted identical idle notifications after completing its work. To stop the notifications, the parent agent archived the session. When asked to restore it, no restore tool was available. Opening the associated PR created a new session with the same branch but without the original conversation history.

## Steps to reproduce

1. Create a coordinated child session with `notify_on_idle: "always"`.
2. Let the child finish and become idle.
3. Observe repeated idle notifications across subsequent turns.
4. Archive the child session.
5. Attempt to restore it.
6. Call `open_pr_session` for its PR.

## Actual behavior

- Repeated notifications continue after the child is already idle.
- An `archive_session` tool exists, but there is no corresponding restore tool.
- `open_pr_session` creates a new session instead of restoring the archived one.
- The new session retains the branch and PR but not the original transcript.
- Context must be manually reconstructed and sent to the replacement session.

## Expected behavior

- Idle notifications should be deduplicated or stop after acknowledgment.
- Archiving should require explicit user confirmation when restoration is unavailable.
- A `restore_session` operation should restore the original workspace and transcript.
- Opening a PR with an existing archived session should offer to restore that session instead of silently creating a new one.

## Impact

The commits and pull request were preserved, but the active session history and working context were lost from the restored workspace. This created confusion and required a manual context handoff.

## Suggested safeguards

- Treat archiving as a user-directed lifecycle action rather than a notification-management mechanism.
- Warn that an archived session cannot currently be restored through agent tools.
- Deduplicate repeated idle notifications.
- Add an agent-accessible `restore_session` operation.
- Detect archived sessions associated with a pull request before creating a replacement session.

---
| Field | Value |
| --- | --- |
| App version | 1.1.10 |
| OS | macOS 26.6.1 |
| Theme | GitHub |
| Path | /chat |
| Tenure | Week 9 |

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start in the /chat flow and trace the archive_session and open_pr_session operations described in the reproduction steps. Compare their handling of archived sessions, branches, pull requests, and conversation history with the expected restore behavior. Done should cover notification deduplication, an explicit archive warning, restoration of the original transcript, and PR reopening without silently creating a replacement session.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
desktop
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.