Skip to content

BYO Context: qualification cell and status for the three-check release bar #2239

Description

@Gandy2025

docs/context-integration.md § Qualification status names this issue as the owner of the environment its release bar needs and of the current per-scenario status. This issue tracks both.

Current status

No recorded real-provider evidence exists for any BYO Context scenario. #2143 carried this as an explicit release risk at launch — "Formal real-surface Claude Code and Codex QA was not run for this PR… therefore remain explicit release risks until that evidence is recorded" — and it has not been discharged. BYO Context has been on npm latest since 0.5.18 (2026-07-30).

The release bar

Set in #2242 and owner-accepted. Three checks, each needing recorded evidence from real Claude Code and Codex surfaces:

# Check Case Status
1 global, directory and session-only setup cross-surface/external-context-multi-team-scope-routing (1–2, 4) not run
2 two or more real Teams with clear, overlapping, missing and non-matching SCOPE bodies cross-surface/external-context-multi-team-scope-routing (5–7) not run
3 single- and multi-Team BYO writes with the mandatory new user confirmation cross-surface/external-context-write-routing not run

Directory activation within check 1 additionally depends on #2208 (#2213 hid the unstable option), so that portion cannot go green while #2208 is open.

The scenarios dropped from the original 11-item gate — dynamic setup choices and /hooks consent, membership revocation and binding movement, SCOPE admin approval, v2 store backup, legacy Plugin migration, cross-organization isolation and Client switching, bootstrap error recovery — stay defined in packages/qa/cases/ and are qualified when a change touches them rather than on every release. They are not tracked here as release blockers.

What the cell has to provide

packages/qa/AGENTS.md classifies release qualification as full-isolated: a Docker-backed cell plus a temporary worktree, never the operator's checkout or shared local services, reaching QA READY before case selection. The three checks above add:

  • throwaway provider homes bridged to real Codex and Claude Code installations;
  • two or more disposable Teams with authored root SCOPE.md bodies, covering clear, overlapping, missing and non-matching cases;
  • disposable source and Context Tree repositories, with source repos deliberately absent from Team resources;
  • an active Context Reviewer plus a usable forge identity, so the external Write preflight can succeed.

The second organization, second account, legacy v2 store and legacy full Plugin are no longer needed for the release bar — they belong to the change-triggered scenarios.

Why a developer machine cannot substitute

The only real Team on a developer machine is the operator's own, and a persistent Plugin install writes into the same ~/.claude user scope that hosts the running Claude session.

Check 3 additionally needs a human. It verifies that a BYO Tree write stops and waits for a new user reply even when one Team is authorized and the original request already asked for a write. The check exists to prove a human is required, so an agent supplying that confirmation is the failure mode being tested. It needs a named human co-driver in the qualification plan; automation cannot substitute.

Evidence

Per case-file Evidence sections, kept outside the source repository per packages/qa/README.md. #2240 tracks one case that currently has no Evidence section to file against.


Retitled and rescoped after #2242 replaced the 11-item gate with this three-check bar.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions