Skip to content

Ship versioned Product Sessions#57

Merged
chriswu727 merged 1 commit into
mainfrom
agent/product-sessions-v1
Jul 22, 2026
Merged

Ship versioned Product Sessions#57
chriswu727 merged 1 commit into
mainfrom
agent/product-sessions-v1

Conversation

@chriswu727

Copy link
Copy Markdown
Owner

Summary

  • add first-class Product Sessions with immutable, content-addressed revision specifications
  • turn verified-delivery feedback into cumulative isolated revisions while preserving prior contracts and Receipts
  • distinguish implementation corrections from changed product decisions and allow only the latest revision to Apply
  • add the Product Session task UI, concurrency/race guards, migration/backfill coverage, and an ADR
  • make the zero-key demo use a fresh Alembic-migrated SQLite database on every run

Verification

  • make check — API 551, Web 21, Desktop 14 passed
  • branch coverage — 75.07% (70% gate)
  • pnpm build
  • pnpm --filter web test:e2e — 1 passed
  • SQLite migration upgrade/backfill/downgrade
  • Postgres 16 migration upgrade/backfill/downgrade/re-upgrade
  • make audit — no known vulnerabilities
  • focused cumulative binary/rename/delete/new-file revision Apply/Undo and 2-way concurrent successor tests

@chriswu727
chriswu727 marked this pull request as ready for review July 22, 2026 22:19
@chriswu727
chriswu727 merged commit 8bf76af into main Jul 22, 2026
13 checks passed
@chriswu727
chriswu727 deleted the agent/product-sessions-v1 branch July 22, 2026 22:19

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c2f9536377

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

prior_snapshot.patch,
)
task.workspace_path = str(destination.resolve())
original.superseded_by_id = task.id

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Don't supersede a verified revision before its successor verifies

When a user creates v2, this immediately marks v1 as superseded, so inspect_change_set refuses v1 Apply and create_revision refuses further feedback on v1. If the new revision later fails, is cancelled, or is discarded before reaching execution-verified completion, the session has no applyable verified latest and cannot create another successor because v2 does not satisfy the completion gate. Consider only superseding the previous delivery after the successor is verified, or provide a recovery path that reopens v1 when the successor does not become a delivery.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant