"""Skill 运行时（T5.5 / ARCH §5.6）——声明式权限 + apply 层白名单。

Skill registry loader（`skill_registry`）+ 表权限沙箱（`skill_permissions`）的**实现**就在
本包（`packages/skills` 是 uv workspace member）。消费方（apps/api 编排/写库 apply 层）
直接 `from ww_skills import ...`。

注：§5.6 的强制点在编排/写库层；本包提供声明式 skill 的加载 + 白名单裁剪纯函数，
调用方（生成入库端点）落 `partition_writes` 的 allowed、仍须经验收 gate 才真入库（不变量 #3）。
"""

from __future__ import annotations

from ww_skills.skill_permissions import (
    KNOWN_TABLES,
    filter_reads,
    partition_writes,
    validate_declaration,
)
from ww_skills.skill_registry import (
    SkillRecord,
    SkillRegistry,
    SkillRepo,
    SqlSkillRepo,
)
from ww_skills.spec_resolver import SpecResolver
from ww_skills.toolbox import (
    ContextStrategy,
    GeneratorTool,
    IngestSpec,
    InputField,
)
from ww_skills.toolbox_registry import TOOLBOX, get_tool

__all__ = [
    "KNOWN_TABLES",
    "filter_reads",
    "partition_writes",
    "validate_declaration",
    "SkillRecord",
    "SkillRegistry",
    "SkillRepo",
    "SpecResolver",
    "SqlSkillRepo",
    "ContextStrategy",
    "GeneratorTool",
    "IngestSpec",
    "InputField",
    "TOOLBOX",
    "get_tool",
]
