# MoonSuccinct 项目申报书（事实资料稿，申请人核实后人工定稿）
## 基本信息
- 项目名称：MoonSuccinct：MoonBit 静态紧凑索引基础库
- 参赛者：
- 联系方式：
- GitHub 仓库链接：https://github.com/binhongcha/MoonSuccinct
- 项目方向：新生态项目建设 / 数据结构基础库；原创 MoonBit 实现，Apache-2.0，非源码移植。
## 项目简介与通用性
搜索、语言工具及配置系统都有构建一次、反复查询的整数和字符串索引。本库提供 rank/select 位向量、Elias–Fano 非递减序列、LOUDS 树/字节 Trie 及分块前缀压缩字典，共享有界解码、确定性格式与空间统计。使用者可分别组合这些结构，无需接入完整搜索引擎。定位与现有结构包的对照见 `docs/ECOSYSTEM_RESEARCH.md`，申报前复查相同 API 和成熟同类项目。
## 三个完整使用场景
1. **倒排表查询**：搜索服务压缩文档编号，从已有游标跳跃寻址；长短列表交集跳过无匹配区间，保留去重语义；序列往返解码后结果一致，测试与线性参考实现对照。
2. **语言工具字典**：构建不可变符号 Trie，用词项编号存放外部属性，再用 `term_at` 反查词项，不枚举前面的全部符号；前缀枚举生成补全候选，深路径采用迭代遍历。
3. **静态路由与层级配置**：应用预先构建带分隔符的字节前缀，输入路径后取最长已存前缀或全部前缀长度，映射到处理器或继承配置；匹配数量受限，路径边界由应用明确编码。
## 核心功能范围与实现路径
- 四类静态结构的构建、随机访问、导航、范围查询、版本化编码、类型化错误、资源限制和空间报告；任意二进制词项按无符号字节排序。
- 十月已有 Elias–Fano 游标查找和不等长交集。本轮新增 Trie `term_at`、`longest_prefix_length`、`prefix_lengths`；以子树计数跳过词项并沿输入路径查找。
- 修复前缀枚举递归逐层复制路径的问题，使用显式 DFS 栈和单一路径，仅复制实际输出。测试覆盖 rank/select 反演、空词项、非 UTF-8 字节、匹配预算和 6,000 字节深路径。
## 预期验收产物与来源
交付原生结构包、二进制格式文档、README、倒排/分类/字典/路由示例、跨后端测试、CI 和 Apache-2.0 许可；公开仓库及 Mooncakes 发布后核验。参考论文及 SDSL、Rust sux、louds 的公开设计思想，未移植源码，具体来源和许可见研究文档。
边界：不提供动态索引更新、全文检索、数据库或自动语义路由；字节长度不是 Unicode 字符数。编译器迁移警告的限定基线记录在 CI 和审查材料中，不宣称完全无警告。
