github / github/app

Archived child sessions cannot be restored with their conversation history

Aperta
#2,990 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Nessun dato sulla lingua
Stelle
2.1k
Fork
153
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## 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 |

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
desktop
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.