[Feature]: 开放可审计的 Context Strategy 扩展接口,支持社区构建 Work-aware 策略
Is your feature request related to a problem?
Astra 已经具备 typed ContextSources、Plan/Bind/Optimize/Execute/Feedback、Explain/Trace、pinned/deferred tools、spill references 和 Durable Work,但 Context 的选择、变换与恢复策略仍主要由 Runtime 内部代码固定实现。
当前外部开发者可以 fork 源码、修改 Rust Pipeline 并提交 PR,却不能通过稳定扩展接口注册一套 Context Strategy:
ContextChannelProvider 可以在源码内增加注入来源,但 provider 列表仍由 Runtime adapter 组装;
OptimizeLimits 与 Optimizer 没有通过 CLI、SDK 或插件契约开放;
Skills、Hooks、MCP 可以增加指令、上下文或工具,但不能安全地接管每次 Context 的保留、压缩、排序、渐进披露与恢复;
社区难以在不理解完整 Agent Loop 的情况下试验 Work-aware、价格感知、隐私或领域策略,也缺少统一的 Shadow/Eval 方式比较结果。
这限制了 Astra 从“固定 Context Pipeline”发展为“可审计的 Context 策略实验与扩展平台”。
Describe the feature you'd like
定义一个版本化的 Context Strategy Extension API 。第一阶段只允许第三方策略生成 Advisor / Shadow proposal,不直接修改真实 Provider Request。
建议的概念契约:
ContextStrategyInput
Work / current Task / criteria / next action
material ids + kind + provenance + lifecycle
token cost + cache scope + recoverability
current pressure + provider cache policy/pricing
tool availability / residency / activation state
prior usage, compression and quality evidence
ContextStrategyProposal
material id
keep / condense / defer / rehydrate / drop
reason + confidence + risk
projected total/fresh/cache token delta
projected prefix break position
recovery reference or required prefetch
Runtime 必须保留最终权威:验证 Identity、Constraints、Canonical Work state、权限、工具调用/结果配对、可恢复性和 Provider 约束。第三方策略不能绕过这些不变量。
渐进披露,而非永久删除工具
工具“仍然可用”与“完整 Schema 当前常驻 Context”必须是不同状态:
always-loaded 核心工具,完整 Schema 常驻
active 当前已激活,完整 Schema 可见
deferred 保留轻量目录,需要时通过 tool_search / Task prefetch 恢复
Strategy 不得仅因当前 Task 未调用某工具,就把它从整个 Work 永久隐藏。激活应支持 Task-scoped sticky lease,避免每轮加载/卸载造成 Schema 与缓存震荡。
历史工具结果同样应优先 condense + recovery reference,例如保留“尝试了什么、为何失败、证据在哪里”,而不是盲目删除失败记录。
可扩展的策略类型
Work / Task-aware Context 工作集;
Provider 价格与 Prefix Cache 感知策略;
隐私、脱敏和数据驻留策略;
领域证据保留策略,例如研究、金融、合规;
Summary、spill、artifact rehydration 策略;
Context 质量评测器与 Explain 可视化。
Related user-facing feature
Suggested delivery stages
Public read-only contract :外部策略可注册,但只能输出建议。
Example strategy + fixed trace fixture :提供一个 Work-aware Advisor 示例和可复现轨迹。
Shadow evaluator :构造替代 Context,不发送给模型;输出 Diff、Token、Prefix 与成本估算。
Controlled A/B evaluation :比较任务成功率、关键事实保留、fresh/cache Token、费用和时延。
Opt-in enforcement :只有达到配置的质量门槛后,才允许策略影响真实请求。
Acceptance criteria for the first stage
第三方策略可通过公开、版本化入口注册,不需要修改 Pipeline adapter 的核心组装代码;
策略输入中的每项材料有稳定 ID、来源、生命周期、成本与恢复信息;
策略输出只产生 Advisor/Shadow proposal,不改变真实 Provider Request;
Runtime 会拒绝违反保护、权限、工具配对和可恢复性不变量的 proposal;
Explain 明确区分“Runtime 实际执行”与“第三方 Strategy 建议”;
报告分开计算总 Token、fresh Token、cached Token 和 Prefix break,而非只报告总量;
deferred 工具仍可发现,并能通过现有 tool_search 或 Task prefetch 恢复完整 Schema;
提供至少一个示例策略、固定输入快照和离线测试命令;
[Feature]: Work-aware Context Advisor:解释上下文选择,并保留任务中的关键结论 #796 的第一方 Work-aware Context Advisor 可以作为 contract 的 reference implementation;
相同输入快照、策略版本和配置可复查同一次建议。
Related work and non-duplication
Non-goals
不在第一阶段自动删除或改写 Context;
不允许插件绕过 Runtime Policy、权限或 Provider admission;
不把“未调用工具”直接等同于“对 Work 无价值”;
不承诺任何 Strategy 必然降低费用或提升模型质量;
不要求首版确定使用 Rust 动态库、WASM、进程协议或远程服务,先稳定数据与安全契约。
Why this matters for the community
该接口可以让 Astra 的数据库式 Context Pipeline 成为社区可验证的实验平台:Runtime 提供 Durable Work、材料目录、成本统计、恢复与 Explain,开发者贡献不同模型、Provider、Work 和行业所需的 Context Strategy、评测轨迹与可视化,而无需各自重写一套 Agent Loop。
[Feature]: 开放可审计的 Context Strategy 扩展接口,支持社区构建 Work-aware 策略
Is your feature request related to a problem?
Astra 已经具备 typed ContextSources、Plan/Bind/Optimize/Execute/Feedback、Explain/Trace、pinned/deferred tools、spill references 和 Durable Work,但 Context 的选择、变换与恢复策略仍主要由 Runtime 内部代码固定实现。
当前外部开发者可以 fork 源码、修改 Rust Pipeline 并提交 PR,却不能通过稳定扩展接口注册一套 Context Strategy:
ContextChannelProvider可以在源码内增加注入来源,但 provider 列表仍由 Runtime adapter 组装;OptimizeLimits与 Optimizer 没有通过 CLI、SDK 或插件契约开放;这限制了 Astra 从“固定 Context Pipeline”发展为“可审计的 Context 策略实验与扩展平台”。
Describe the feature you'd like
定义一个版本化的 Context Strategy Extension API。第一阶段只允许第三方策略生成 Advisor / Shadow proposal,不直接修改真实 Provider Request。
建议的概念契约:
Runtime 必须保留最终权威:验证 Identity、Constraints、Canonical Work state、权限、工具调用/结果配对、可恢复性和 Provider 约束。第三方策略不能绕过这些不变量。
渐进披露,而非永久删除工具
工具“仍然可用”与“完整 Schema 当前常驻 Context”必须是不同状态:
Strategy 不得仅因当前 Task 未调用某工具,就把它从整个 Work 永久隐藏。激活应支持 Task-scoped sticky lease,避免每轮加载/卸载造成 Schema 与缓存震荡。
历史工具结果同样应优先
condense + recovery reference,例如保留“尝试了什么、为何失败、证据在哪里”,而不是盲目删除失败记录。可扩展的策略类型
Related user-facing feature
keep / condense / defer / rehydrate / droprecommendations, recovery controls, Prefix Cache cost view and staged Shadow/A-B validation.Suggested delivery stages
Acceptance criteria for the first stage
tool_search或 Task prefetch 恢复完整 Schema;Related work and non-duplication
tool_search。本 Issue 不恢复 TF-IDF 或另一个不可解释的自动 selector;工具发现仍由现有显式机制负责,Strategy 首先只提供可审计 proposal。Non-goals
Why this matters for the community
该接口可以让 Astra 的数据库式 Context Pipeline 成为社区可验证的实验平台:Runtime 提供 Durable Work、材料目录、成本统计、恢复与 Explain,开发者贡献不同模型、Provider、Work 和行业所需的 Context Strategy、评测轨迹与可视化,而无需各自重写一套 Agent Loop。