github / github/copilot-cli

`store_memory` fails in v1.0.81 prereleases: `Instance id is required`

オープン
#4,535 コメント 8 件 リアクション 1 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

area:context-memory
主要言語
Shell
スター
11.2k
フォーク
1.9k
平均マージ
14時間 16分
マージ済み PR(30日)
6

説明

[From Femi's agent: GPT-5.6 Sol]

Summary

store_memory fails consistently in Copilot CLI 1.0.81 prereleases because the native memory writer is invoked without a required instance ID:

[DEBUG] [rust:copilot_runtime::tools::api::memory] Storing user memory with subject: "agent selection"
[ERROR] [rust:copilot_runtime::tools::api::memory] Failed to store memory: Instance id is required.

The failure occurs locally in the same millisecond as invocation, before the memory writer makes an HTTP request. The tool surfaces only the generic message Unable to store memory: an unexpected error occurred.

Version evidence

Observed across local Copilot session logs:

CLI version Successful writes Instance id is required failures
1.0.79 5 0
1.0.81-3 0 5
1.0.81-4 0 5
1.0.81-5 0 3

There were no memory-write attempts available for 1.0.80 or 1.0.81-0, so the precise first broken build is not yet isolated. The regression is confirmed between 1.0.79 and 1.0.81-3.

In 1.0.79, the writer opened a connection to api.enterprise.githubcopilot.com and returned Memory stored successfully. In 1.0.81-3 through 1.0.81-5, the Rust path rejects the operation immediately with the missing instance-ID error.

Reproduction

  1. Run Copilot CLI 1.0.81-5 in a GitHub-hosted repository.
  2. Invoke store_memory with a valid user-scoped payload:
{
  "scope": "user",
  "subject": "agent selection",
  "fact": "Never use Gemini models as subagents.",
  "reason": "This is a durable model-selection preference that applies across repositories and future delegated tasks.",
  "citations": "User input: \"new rule. never use gemini as a subagent for anything\""
}
  1. Observe the generic tool failure. With debug logging enabled, the underlying error is Instance id is required.

The same underlying error has occurred across unrelated subjects and multiple fresh sessions. Memory enablement and retrieval still work; only writes fail.

Expected behavior

The memory is sent to the service and persisted, as it was in 1.0.79.

Actual behavior

The native memory writer rejects the operation before sending it because its instance ID is missing.

Environment

  • macOS Darwin, arm64
  • GitHub-hosted repository with a valid origin
  • Authenticated GitHub/Copilot account
  • Memory enablement check: enabled
  • Affected builds: 1.0.81-3, 1.0.81-4, 1.0.81-5
  • Last locally verified working build: 1.0.79

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

store_memory エントリポイントと、デバッグログに記載されているネイティブ Rust メモリ書き込みパスから調査を始めます。1.0.79 の動作している挙動と、1.0.81-3 から 1.0.81-5 までを比較し、HTTP リクエストの前にインスタンス ID がどのように渡されているかに焦点を当てます。Instance id is required エラーが発生せず、ユーザースコープの有効なメモリが再び永続化されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
rust
領域
backend
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
48/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。