//! Workspace context. Phase 3 introduced project-bound `.tome/` markers
//! and a per-workspace SQLite index; Phase 4 collapses that model to a
//! single central database (indexed by workspace name in
//! `workspace_skills` / `workspace_catalogs` junction tables) plus a
//! thin `<project>/.tome/config.toml` binding pointer.
//!
//! The `inventory` module (Phase 3's opt-in `workspaces.txt` registry)
//! is gone in Phase 4 — research §R-11 documents the move to the
//! `workspace_projects` table as sole source of truth for bindings.

pub mod binding;
pub mod info;
pub mod init;
pub mod name;
pub mod regen_summary;
pub mod remove;
pub mod rename;
pub mod resolution;
pub mod scope;
pub mod sync;

pub use binding::{BindDeps, BindOutcome, bind_project, is_project_root_acceptable};
pub use info::{
    EnabledPluginRecord, ModelIdentity, ScopeKind, SummaryCacheState, WorkspaceCatalogEntry,
    WorkspaceInfo,
};
pub use init::{InitOutcome, init};
pub use name::WorkspaceName;
pub use regen_summary::{RegenSummaryOutcome, regen};
pub use remove::{RemoveOutcome, remove};
pub use rename::{RenameOutcome, rename};
pub use scope::{ResolvedScope, Scope, ScopeSource};
pub use sync::{WorkspaceSyncOutcome, list_workspace_names, sync_one};
