Skip to content

feat(client): enforce pack memory requirements at activation#20

Merged
Ghost-Frame merged 1 commit into
mainfrom
feat/memory-requirement-enforcement
Jul 6, 2026
Merged

feat(client): enforce pack memory requirements at activation#20
Ghost-Frame merged 1 commit into
mainfrom
feat/memory-requirement-enforcement

Conversation

@Ghost-Frame

Copy link
Copy Markdown
Owner

Closes the gap where memory_required was declared in pack manifests and enforced by Runtime::check_memory_capability, but no live loader ever checked it.

  • Project config.toml gains an optional [memory] adapter declaration (adapter, endpoint, path), serde-defaulted so existing configs parse unchanged.
  • Client::activate refuses a persona whose manifest declares memory_required = "hard" when the project declares no adapter; the error names the exact config file to edit.
  • Soft requirements activate but warn: stderr notice from frameshift activate/use, and a memory_warning field in the MCP activate response.
  • New public memory_requirement_status helper exposes requirement + declaration state.
  • The sync client checks only the declaration; live health checks remain with the async surfaces that construct a MemoryAdapter.
  • 4 new integration tests cover hard-blocked, hard-satisfied, soft-warn, and no-manifest cases.

🤖 Generated with Claude Code

Project config.toml gains an optional [memory] adapter declaration.
Client::activate now refuses a persona whose manifest declares
memory_required = "hard" when the project declares no adapter, with an
error naming the config file to edit. Soft requirements surface as
warnings from the CLI activate/use commands and as a memory_warning
field in the MCP activate response. The sync client only checks the
declaration; live connectivity checks stay with the async surfaces.
@Ghost-Frame
Ghost-Frame force-pushed the feat/memory-requirement-enforcement branch from d2a5364 to 1c7179e Compare July 6, 2026 16:45
@Ghost-Frame
Ghost-Frame merged commit 4fe1f7c into main Jul 6, 2026
5 checks passed
@Ghost-Frame
Ghost-Frame deleted the feat/memory-requirement-enforcement branch July 6, 2026 16:48
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