Skip to content

feat(protocol): add OMP operation capability contract - #111

Merged
iarbpairs merged 1 commit into
mainfrom
feat/omp-capability-contract
Jul 21, 2026
Merged

feat(protocol): add OMP operation capability contract#111
iarbpairs merged 1 commit into
mainfrom
feat/omp-capability-contract

Conversation

@iarbpairs

Copy link
Copy Markdown
Collaborator

What this changes

I added a shared, bounded operation-capability contract so Flutter and the official OMP runtime adapter can proceed in parallel without inventing separate capability models.

The catalog can now expose stable operationId values with four execution classes: typed, headless, terminal-only, and unavailable. Unsupported operations carry structured disabled reasons, and contradictory states are rejected at the wire boundary.

I added a language-neutral fixture covering an ordinary prompt, verified headless /compact, terminal-only /plan, unavailable goal creation, and explicit terminal_only / capability_unavailable response examples. Flutter now decodes and preserves this contract through catalog frames and catalog.get results.

This PR deliberately does not implement live runtime discovery or dispatch enforcement. Those backend changes will follow from main in a separate runtime-adapter branch while Flutter consumes this contract and fixture.

Checklist

  • bun test packages/host-wire/test/app-wire.test.ts passes (42 tests)
  • bun test packages/host-service/test/operations.test.ts passes (12 tests)
  • bun run --cwd packages/host-wire typecheck passes
  • flutter test test/protocol/wire_conformance_test.dart passes (40 tests)
  • Focused flutter analyze reports no issues
  • LSP diagnostics report no issues for the changed TypeScript and Dart sources
  • Any pasted logs or screenshots are redacted: no secrets, tokens, pairing codes, or private paths
  • No third-party source was ported in this change

@iarbpairs
iarbpairs force-pushed the feat/omp-capability-contract branch from 9338cd1 to 6dc04c7 Compare July 21, 2026 02:50
@iarbpairs
iarbpairs merged commit 5a5e0a2 into main Jul 21, 2026
8 checks passed
@iarbpairs
iarbpairs deleted the feat/omp-capability-contract branch July 21, 2026 03:06
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