cougr-core 1.0.0

Cougr - A Soroban-compatible ECS framework for on-chain gaming on Stellar
Documentation
# Public Surface Gaps

## Purpose

This document lists public-facing behaviors and constraints that remain intentionally outside Cougr's stable promise after the `1.0` release gate.

The goal is to keep the stable story honest. If a behavior is still evolving, security-sensitive, or not yet defensible as a long-term contract, it belongs here instead of being implied as stable.

## Current Gaps

### Accounts and Smart-Account Flows

Status: Beta

Remaining gaps:

- the account kernel, signed intents, and replay domains are implemented, but the public auth contract is still Beta and not yet SemVer-frozen
- replay protection is explicit, but not yet presented as a stable cross-crate compatibility promise
- fallback authorization behavior is documented, but it should still be reviewed carefully per integration

### Privacy and ZK

Status: Stable contract plus Experimental extensions

Remaining gaps:

- stable privacy primitives are intentionally narrow and do not imply stable advanced proof verification
- advanced proof-verification and confidential abstractions are explicitly Experimental
- proof-submission orchestration remains Beta where it depends on experimental verification flows

### Broad Top-Level Crate Surface

Status: Stable contract plus Beta extensions

Remaining gaps:

- the crate still exports more modules than the frozen stable contract actually guarantees
- internals-heavy modules remain public in places where durable invariants are not yet fully documented
- migration still depends on user choice; the crate does not automatically force older imports onto the curated path

### Scheduling and Query Ergonomics

Status: Stable default path plus some evolving edges

Remaining gaps:

- `GameApp`, declarative runtime system registration, and `SimpleQuery` are now the intended default path
- dependency validation is stage-local by design; cross-stage ordering should remain a phase concern, not an arbitrary graph promise

### Standards Layer

Status: Stable

Remaining gaps:

- integrating contracts are still responsible for composing caller authentication around generic state-machine helpers such as `Pausable` and `RecoveryGuard`

## Removed or Downgraded During Phase 0

- deprecated placeholder helpers were removed from `src/lib.rs` in favor of the curated root API
- accounts and advanced privacy features are described as Beta or Experimental rather than stable production guarantees

## How To Use This List

Treat this document as the current boundary between:

- what Cougr can present as intentionally supported today
- what is still usable but evolving
- what must not be interpreted as part of a stable production contract

For the practical migration path toward the curated surface, see [MIGRATION_GUIDE.md](MIGRATION_GUIDE.md).