P16 · 上下文管理

保存并校验配置

Configuration Persistence

持久保存稳定且不含秘密的配置,读取时确认它仍然有效。

编辑审核来源未确认

以下示例与示意结果由本站编写,用于说明方法,不是模型实测结果。

使用场景

团队多次查询同一项目的 issue,每次重新询问项目名会打断工作。你已有当前仓库的项目选择,可把不含秘密的稳定偏好保存在仓库根目录的 .config/issue-helper.json。教学文件为 {"schema_version":1,"project":"team-a"};访问凭据由既有登录机制提供,不放进这个文件。

具体做法

先读取配置并解析 JSON,核对 schema_version、project 和文件所属仓库。字段完整且与当前任务一致时复用;缺值只询问缺少的部分;文件损坏、版本不支持或项目不适用时说明差异,不默认沿用。用户确认新的项目选择后保存非秘密偏好,仍通过原登录渠道取得访问能力。

反例

每次查询 team-a 的 issue 都重新问项目名。为了方便,把项目名和访问 token 一起写入上述 issue-helper.json,并在任何仓库都沿用。

改进写法

在当前仓库根目录读取 .config/issue-helper.json。教学格式要求 schema_version=1 和非空 project,示例 project 为 team-a。有效且适用于当前查询时直接复用;缺少项目则只问项目值;JSON 损坏、版本不支持或换仓库时先报告并重新确认适用配置。不在文件中保存 token;凭据通过既有登录机制提供。保存项目选择不代表获准执行外部写入。

为什么这样改

配置把重复的偏好输入变成可读取资料,校验则防止把旧项目、错误版本或秘密一起带到新任务。只问缺少的值既保留连续性,也不把一个可解析的文件误认为仍适用。

如何验证

检查有效教学文件是否选中 team-a 而没有再次提问。移除 project 应仅提示缺项目;把 schema_version 改为 2 应报告不支持;损坏 JSON 应报告解析失败。

查看保存文件只含约定的非秘密配置,访问 token 没有被复制。新仓库不能仅凭旧文件认定项目适用。

适用边界

保存位置、字段和版本属于教学约定,真实项目需沿用自己的配置与登录机制。配置可能过期,也不是持续授权;尤其不能根据默认项目选择自动创建、修改或发送 issue。原文未确认。

原文与版本

暂未找到可链接的原文。本文示例由本站编写,用来说明方法。

如何收录这些方法