Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

产品铁律与非目标

Portico 在设计之初即确立了不可触碰的产品红线。任何新功能的引入、Bug 修复或架构演进,均不得以“便利”为由突破以下铁律。


产品铁律 (Iron Rules)

1. 不运行、编排、托管 Agent

  • Portico 绝不包含 Agent 推理循环、Prompt 模板执行器或工作流编排引擎。
  • Portico 绝不代发模型推理请求(如 OpenAI / Anthropic / Gemini API)。
  • Portico 网关只负责鉴权与路由发现,绝不替调用方执行任何 MCP 工具。

2. 内部与公开是绝对的信任边界

  • 未经审批的草稿、内部服务与公开候选,在任何匿名渠道上均绝对不可达、不可见
  • 任何入口(Portal、CLI、MCP)均不得提供绕过审批直接公开后门的选项。
  • 登记操作不能“顺便”完成公开发布。

3. Agent 维护权绝不等于安全审计权

  • 自动化维护者 Agent 严禁被授予 auditor 角色。
  • 提交同一条公开申请的身份绝对不能自批(SELF_APPROVAL 拦截)。
  • 维护者身份不能关闭、删除或改写系统审计日志。

4. 三大入口呈现严格一致的治理状态

  • Portal、CLI、MCP 必须读取同一套目录内核与权限状态。
  • 严禁出现“CLI 能看到公开,但 Portal 页面显示 404”或“MCP 显示内部,Portal 却已向外暴露”的状态分裂。

5. 密钥只引用,绝不落明文

  • 登记的元数据、URL、包坐标、日志与审计记录中,严禁写入任何明文 API Key、Token、密码或非公开私钥。
  • 端点 URL 严禁包含凭证信息(如 http://user:pass@host)或伪协议(如 javascript:)。

6. 单一 Deno L0 运行时

  • Deno + TypeScript 体系。
  • 严禁把 Node.js 或 Bun 加入产品依赖、CI 流程或可分发产物。
  • 权限默认全拒,禁止使用 --allow-all 或等价的无节制通配授权。
  • CLI 分发产物必须为纯自包含二进制,运行绝不依赖机器上的 nodebun 命令。

明确的非目标 (Non-Goals)

为了保持系统的专注与精悍,以下功能被永久排除在 Portico 之外:

非目标领域排除理由替代解法
通用 CMS / 动态建站器复杂的页面自定义与插件生态极易引入 XSS 与代码执行漏洞,破坏审计可读性。提供固定组件盒(catalog_card 等)与严格的语义 Token。
应用计费与商业市场计费、订单与订阅属于商业中台范畴,与准入治理职责正交。由外部商业系统通过鉴权网关的访问日志进行下游对账。
分布式工作流调度器编排工具(如 Temporal、LangGraph、Airflow)已有成熟实现,Portico 只做入口发现。Agent 自行在外部宿主中执行状态转移。
集中式流量反向代理代理海量高带宽 Payload 会让网关成为性能与安全单点,且容易偷窥明文数据。Gateway 仅提供一次性鉴权路由信息(connect.mode = direct),客户端直连后端。