Skip to content

Conversation sessions: actionable no-store error + record #235 decision#241

Merged
lezama merged 1 commit into
mainfrom
chore/actionable-no-store-error
May 29, 2026
Merged

Conversation sessions: actionable no-store error + record #235 decision#241
lezama merged 1 commit into
mainfrom
chore/actionable-no-store-error

Conversation

@lezama
Copy link
Copy Markdown
Contributor

@lezama lezama commented May 29, 2026

Summary

Small canonical-side change for #235. Two parts, only one touches behavior:

  1. Actionable no-store error. When no host store is registered, the conversation session abilities now point at the `wordpress/agents-api-default-stores` companion (zero-config WordPress-native store) in addition to the `wp_agent_conversation_store` filter — turning a dead-end into a one-command fix. Error code (`agents_conversation_session_no_store`) is unchanged.
  2. Decision record. `docs/default-stores-companion.md` now records the Consider a WordPress-native default conversation session store #235 resolution: the default conversation store lives in the companion package, not canonical.

Why companion, not canonical (the #235 decision)

  • Canonical is on the WP-core landing path (Convergence audit: merge parallel WordPress agents-api extractions #77). A default CPT session store in canonical becomes a session post type core ships to every site — a likely core-review blocker and a migration liability. The companion never carries that.
  • The posts-table-bloat concern (Data Machine's large post volumes) only bites consumers that don't override `wp_agent_conversation_store`. High-volume adopters override; the remaining audience is low-volume experiments for which a CPT is fine.
  • The reference implementation already exists in openclawp (CPT + postmeta + lock). The companion store is an extraction + generalization, not new design — with added `WP_Agent_Principal_Conversation_Store` support (openclawp is user-keyed only).

The companion package itself is built separately (it requires `wordpress/agents-api` and is core-landing-neutral). This PR is just canonical's contribution to the cold-start experience.

Test plan

  • `composer test` — full suite green. No test asserts on the error message text (the no-store path is covered by error code, unchanged), so no test updates needed.

Part of #235.

When no host store is registered, the conversation session abilities now
return guidance toward the wordpress/agents-api-default-stores companion
(zero-config WordPress-native store) alongside the existing
wp_agent_conversation_store filter option, instead of only naming the
filter.

Records the #235 decision in docs/default-stores-companion.md: the default
store lives in the companion package, not canonical, to keep the WP-core
landing path clean. openclawp's CPT store is the extraction seed; the
generalized store adds principal-owner support.

Error code (agents_conversation_session_no_store) is unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@lezama lezama merged commit e2211ab into main May 29, 2026
2 checks passed
@lezama lezama deleted the chore/actionable-no-store-error branch May 29, 2026 14:25
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