AdarshSingh-ASR/lattice-memory-plane
GitHub: AdarshSingh-ASR/lattice-memory-plane
Lattice 是一个基于 CockroachDB 和 AWS 构建的可信记忆控制平面,为事件响应 Agent 提供记忆溯源、冲突隔离和防篡改证据记录能力。
Stars: 0 | Forks: 0
# Lattice

Lattice 是一个用于事件响应 Agent 的飞行记录器和动作网关。它
不仅仅是检索旧上下文。它会记录是哪些记忆引发了某个计划,
根据签名策略和来源测试这些记忆,隔离被污染
或过期的召回,并在任何副作用
执行之前,在一个干净的分支上重放该任务。
专为
[CockroachDB × AWS Hackathon — Build with Agentic Memory](https://cockroachdb-ai.devpost.com/) 构建。
## 90 秒演示
1. 一次结账金丝雀发布导致了 41% 的网关故障率。
2. Lattice 从 CockroachDB 中检索出五个语义相似的记忆。
3. 一个高度相似的记忆建议禁用 JWT 签名验证。
4. 动作网关捕获到该记忆是未签名的、低信任度的,并且
与已签名的生产策略相冲突。不安全的计划被阻止。
5. 操作员点击 **隔离 + 重放** (Quarantine + replay)。
6. CockroachDB 为该运行原子地隔离记忆,追加一个
不可变事件,创建一个可信分支,并将幂等结果记入日志。
7. 重放将计划从两个不安全动作更改为零,然后将
防篡改的证据回执密封在版本化的 S3 中。
关键的 产品瞬间 是因果性的:界面准确地显示了是哪个记忆
改变了 Agent 的动作,并证明移除它会改变结果。
## 为什么这不是“使用 RAG 聊天”
| 普通检索 | Lattice |
| --- | --- |
| 记忆是文本块 | 记忆是版本化的操作声明 |
| 相似性决定模型看到什么 | 相似性负责检索;来源决定什么可以执行 |
| 错误的上下文产生错误的答案 | 错误的上下文在副作用产生前被隔离 |
| 日志显示模型说了什么 | 因果追踪显示哪个记忆改变了计划 |
| 修正覆盖历史 | 修正会进行分支并取代不可变的历史 |
| 重试可能会复制动作 | 每个突变都有一个幂等日志 |
## 架构
```
flowchart LR
UI["Lattice control room
Next.js"] --> API["Amazon API Gateway"] API --> AGENT["AWS Lambda
typed agent boundary"] AGENT --> BEDROCK["Amazon Bedrock
Nova planner + Titan embeddings"] AGENT --> CRDB[("CockroachDB Cloud on AWS
transactions + vector memory")] AGENT --> S3[("Amazon S3
versioned evidence receipts")] SKILLS["CockroachDB Agent Skills
transaction · privilege · health"] --> AGENT CCLOUD["ccloud CLI
provisioning + health receipts"] --> CRDB CRDB --> VECTOR["Distributed vector index
workspace-prefixed ANN recall"] CRDB --> JOURNAL["Serializable action journal
idempotent quarantine + branch"] VECTOR --> AGENT JOURNAL --> AGENT ``` ### 记忆事务 ``` incident signal → Bedrock embedding → CockroachDB vector recall → provenance + policy guardrails → proposed typed plan → conflict? yes → block → branch-scoped quarantine → replay → S3 receipt no → approval gate → idempotent action journal ``` ## 黑客松技术 ### CockroachDB 工具 - **分布式向量索引 (Distributed Vector Indexing)** — `memories.embedding VECTOR(1024)` 具有 以工作区为前缀的余弦向量索引。操作记忆和语义记忆在 同一个数据库中保持事务一致性。 - **CockroachDB Agent Skills** — Lambda 会加载 `designing-application-transactions`、`hardening-user-privileges` 和 `reviewing-cluster-health` 的精确且带有出处的快照。 每次追踪都会持久化技能回执,并且 规划器会接收它们的事务、重试、最小权限和健康 护栏。 - **ccloud CLI** — 用于检查由 AWS 支持的集群,创建单独的 迁移/运行时身份,并通过 [`ops/cluster-health.ps1`](./ops/cluster-health.ps1) 生成可机读的健康 评估。 ### AWS 服务 - **AWS Lambda + API Gateway** 托管类型化的 Agent 执行边界。 - **Amazon Bedrock** 运行 Nova 事件规划器和 Titan 1024 维度的 embeddings。 - **Amazon S3** 存储加密的、版本化的、内容经过哈希处理的证据 包。 - CockroachDB Cloud 集群本身运行在 **AWS ap-south-1** 中。 ## 可靠性与安全性 - **可串行化的短事务。** 远程模型和 S3 调用保持在 数据库事务之外。 - **重试感知。** SQLSTATE `40001` 重试使用有界的指数退避和 抖动;模棱两可的突变不会被盲目重放。 - **幂等动作。** `(workspace_id, run_id, action_key)` 是唯一的,因此 重复的隔离请求会返回权威的先前结果。 - **最小权限。** `lattice_app` 不是管理员。它仅接收 Lambda 所需的表级读/写权限。迁移使用单独的 身份。 - **默认不信任记忆。** 检索到的文本是证据,绝不是 指令。签名、信任度、策略和破坏性动作规则会 在规划跨越执行边界之前进行检查。 - **真实的完成状态。** 在日志记录下已完成的权威结果之前,Lattice 绝不会声称某个动作已运行。 - **可重复的隔离。** 隔离记录在运行的已验证分支上, 因此一个判定者无法为其他所有人消耗掉被污染的记忆。 - **防篡改证据。** 每个隔离回执都包含一个 SHA-256 内容哈希, 并被写入一个加密的、版本化的 S3 bucket 中。 ## 仓库结构图 ``` app/ Interactive control-room UI services/agent/src/ Lambda handler, retrieval, guardrails, journal services/agent/migrations/ CockroachDB schema + distributed vector index services/agent/skills/ Attributed CockroachDB Agent Skill snapshots services/agent/template.yaml AWS SAM infrastructure ops/cluster-health.ps1 ccloud health + skill receipt docs/ Demo and Devpost submission material ``` ## 本地运行 ### 前置条件 - Node.js 20+ - 一个 CockroachDB Cloud 连接字符串 - 具有 Bedrock 访问权限的 AWS 凭证,或用于仅本地 embedding 开发的 Gemini 密钥 ### 前端 ``` npm install npm run dev ``` UI 会在 `http://localhost:3000` 打开。 ### Agent ``` Set-Location services/agent Copy-Item .env.example .env npm install npm run migrate npm run seed npm run dev ``` 本地兼容 Lambda 的 API 监听 `http://127.0.0.1:8787`。在 localhost 上,UI 会自动发现它。 ### 验证 ``` npm test npm run migrate npm run seed npm run smoke npm run verify:database npm run harden:runtime ``` 冒烟测试针对 CockroachDB 执行完整的检索 → 冲突 → 隔离 → 重放路径。如果没有检索到被污染的记忆,或者重放仍然 包含身份验证绕过,它将会失败。 ## 部署 AWS Agent ``` Set-Location services/agent sam build sam deploy --guided ` --parameter-overrides DatabaseUrl="$env:DATABASE_URL" AllowedOrigin="https://your-demo.example" ``` 将返回的 API URL 设置为前端的 `NEXT_PUBLIC_LATTICE_API_URL`。 切勿提交连接字符串或提供商凭证。 ## 新项目声明 Lattice 是在 2026 年黑客松提交期间从头创建的。 它使用标准的开源框架和 Codex Sites 启动模板。 CockroachDB Agent Skill 快照属于上游 Apache-2.0 材料,并保留 其位于 `services/agent/skills/COCKROACHDB-SKILLS-LICENSE` 中的许可证。没有 包含来自构建者早期项目的源代码。 ## 许可证 MIT — 详见 [`LICENSE`](./LICENSE)。
Next.js"] --> API["Amazon API Gateway"] API --> AGENT["AWS Lambda
typed agent boundary"] AGENT --> BEDROCK["Amazon Bedrock
Nova planner + Titan embeddings"] AGENT --> CRDB[("CockroachDB Cloud on AWS
transactions + vector memory")] AGENT --> S3[("Amazon S3
versioned evidence receipts")] SKILLS["CockroachDB Agent Skills
transaction · privilege · health"] --> AGENT CCLOUD["ccloud CLI
provisioning + health receipts"] --> CRDB CRDB --> VECTOR["Distributed vector index
workspace-prefixed ANN recall"] CRDB --> JOURNAL["Serializable action journal
idempotent quarantine + branch"] VECTOR --> AGENT JOURNAL --> AGENT ``` ### 记忆事务 ``` incident signal → Bedrock embedding → CockroachDB vector recall → provenance + policy guardrails → proposed typed plan → conflict? yes → block → branch-scoped quarantine → replay → S3 receipt no → approval gate → idempotent action journal ``` ## 黑客松技术 ### CockroachDB 工具 - **分布式向量索引 (Distributed Vector Indexing)** — `memories.embedding VECTOR(1024)` 具有 以工作区为前缀的余弦向量索引。操作记忆和语义记忆在 同一个数据库中保持事务一致性。 - **CockroachDB Agent Skills** — Lambda 会加载 `designing-application-transactions`、`hardening-user-privileges` 和 `reviewing-cluster-health` 的精确且带有出处的快照。 每次追踪都会持久化技能回执,并且 规划器会接收它们的事务、重试、最小权限和健康 护栏。 - **ccloud CLI** — 用于检查由 AWS 支持的集群,创建单独的 迁移/运行时身份,并通过 [`ops/cluster-health.ps1`](./ops/cluster-health.ps1) 生成可机读的健康 评估。 ### AWS 服务 - **AWS Lambda + API Gateway** 托管类型化的 Agent 执行边界。 - **Amazon Bedrock** 运行 Nova 事件规划器和 Titan 1024 维度的 embeddings。 - **Amazon S3** 存储加密的、版本化的、内容经过哈希处理的证据 包。 - CockroachDB Cloud 集群本身运行在 **AWS ap-south-1** 中。 ## 可靠性与安全性 - **可串行化的短事务。** 远程模型和 S3 调用保持在 数据库事务之外。 - **重试感知。** SQLSTATE `40001` 重试使用有界的指数退避和 抖动;模棱两可的突变不会被盲目重放。 - **幂等动作。** `(workspace_id, run_id, action_key)` 是唯一的,因此 重复的隔离请求会返回权威的先前结果。 - **最小权限。** `lattice_app` 不是管理员。它仅接收 Lambda 所需的表级读/写权限。迁移使用单独的 身份。 - **默认不信任记忆。** 检索到的文本是证据,绝不是 指令。签名、信任度、策略和破坏性动作规则会 在规划跨越执行边界之前进行检查。 - **真实的完成状态。** 在日志记录下已完成的权威结果之前,Lattice 绝不会声称某个动作已运行。 - **可重复的隔离。** 隔离记录在运行的已验证分支上, 因此一个判定者无法为其他所有人消耗掉被污染的记忆。 - **防篡改证据。** 每个隔离回执都包含一个 SHA-256 内容哈希, 并被写入一个加密的、版本化的 S3 bucket 中。 ## 仓库结构图 ``` app/ Interactive control-room UI services/agent/src/ Lambda handler, retrieval, guardrails, journal services/agent/migrations/ CockroachDB schema + distributed vector index services/agent/skills/ Attributed CockroachDB Agent Skill snapshots services/agent/template.yaml AWS SAM infrastructure ops/cluster-health.ps1 ccloud health + skill receipt docs/ Demo and Devpost submission material ``` ## 本地运行 ### 前置条件 - Node.js 20+ - 一个 CockroachDB Cloud 连接字符串 - 具有 Bedrock 访问权限的 AWS 凭证,或用于仅本地 embedding 开发的 Gemini 密钥 ### 前端 ``` npm install npm run dev ``` UI 会在 `http://localhost:3000` 打开。 ### Agent ``` Set-Location services/agent Copy-Item .env.example .env npm install npm run migrate npm run seed npm run dev ``` 本地兼容 Lambda 的 API 监听 `http://127.0.0.1:8787`。在 localhost 上,UI 会自动发现它。 ### 验证 ``` npm test npm run migrate npm run seed npm run smoke npm run verify:database npm run harden:runtime ``` 冒烟测试针对 CockroachDB 执行完整的检索 → 冲突 → 隔离 → 重放路径。如果没有检索到被污染的记忆,或者重放仍然 包含身份验证绕过,它将会失败。 ## 部署 AWS Agent ``` Set-Location services/agent sam build sam deploy --guided ` --parameter-overrides DatabaseUrl="$env:DATABASE_URL" AllowedOrigin="https://your-demo.example" ``` 将返回的 API URL 设置为前端的 `NEXT_PUBLIC_LATTICE_API_URL`。 切勿提交连接字符串或提供商凭证。 ## 新项目声明 Lattice 是在 2026 年黑客松提交期间从头创建的。 它使用标准的开源框架和 Codex Sites 启动模板。 CockroachDB Agent Skill 快照属于上游 Apache-2.0 材料,并保留 其位于 `services/agent/skills/COCKROACHDB-SKILLS-LICENSE` 中的许可证。没有 包含来自构建者早期项目的源代码。 ## 许可证 MIT — 详见 [`LICENSE`](./LICENSE)。
标签:AI智能体记忆, AWS, CockroachDB, DPI, 可信溯源, 因果追踪审计, 安全策略控制, 自定义脚本