尧图精选

Authentication architecture

🕒 发布时间:2026/9/11 23:51:46 📁 来源:尧图网络
Authentication architecture【免费下载链接】agentsMulti-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity项目地址: https://gitcode.com/GitHub_Trending/agents24/agentsRaw: raw/notes/auth-v1.md, raw/adr/0007-jwt.md Fingerprint: git:5b237fa Monitored: src/auth/jwt.ts, src/auth/session.ts, package.json Status: Current- Raw:页面编译所依据的全部来源行内声明同样链接到具体来源例如 Tokens expire after 15 minutes (raw/adr/0007-jwt.md). - Fingerprint:页面编译时对应的短提交哈希 - Monitored:页面所描述的代码路径清单其中任何一项在 fingerprint 之后发生变化即意味着页面可能过期 - Status:Current当前、Outdated受监控代码已演进、Disputed更新的来源与页面矛盾。 ### 1.3 溯源规则 编译页只陈述来源支持的内容且每个数字、日期或引文必须逐字出现在链接来源中。综合推断synthesis必须声明自己是推断并链接其输入来源中的缺口要如实写入页面而不是靠猜测补全。该规则可被机械化检查对每一条带链接的声明在被链接的 raw 文件中搜索精确的数字或引文片段未命中即为溯源错误并阻止提交。 ### 1.4 漂移检测原理 漂移检测用一次 git 比较替代重读代码这正是零 Token开销的由来 bash git diff --stat 5b237fa..HEAD -- src/auth/jwt.ts src/auth/session.ts package.json输出为空说明页面仍与编译时的代码一致有任何输出则说明需要重编译只重读变更的文件、更新页面、打上新的 fingerprint。SKILL.md指出该检查毫秒级完成、不消耗模型 Token。1.5 工作流五步摄入Ingest把新素材放入raw/文件名带日期或来源标识绝不改写已有 raw 文件新文件放在旁边编译Compile写或更新wiki/页面包含头部块、每条声明的来源链接、读取代码时的 commit fingerprint检查Check提交前运行溯源检查与漂移检查在源头修复未命中项而不是削弱声明来让检查通过垃圾回收Garbage collect漂移或矛盾来源出现且暂不重编译时改变页面状态、移入archive/并记录原因 Status: Outdated Reason: src/auth/session.ts changed after git:5b237fa; see log.md 2026-09-01更新地图Update the map每次新增、移动或归档都在同一提交中更新index.md并在log.md追加一行。二、核心资产Vault 检查脚本check_vault.pyreferences/details.md 承载了本技能的技术实现核心scripts/check_vault.py。它遍历wiki/下每个页面逐条核验带链接的声明是否能在对应 raw 来源中找到并把每个 fingerprint 与当前代码树比较。脚本只用标准库与 git无任何第三方依赖。#!/usr/bin/env python3 Grounding and drift checks for a grounded vault. Run from the vault root. import re import subprocess import sys from pathlib import Path RAW (Path.cwd() / raw).resolve() WIKI Path(wiki) HEADER re.compile(r^ (Raw|Fingerprint|Monitored|Status): (.*)$, re.M) LINK re.compile(r\[([^\]])\]\(([^)]\.md)\)) NUMBER re.compile(r(?![\w.,])\d[\d.,]*%?(?![\w.,])) QUOTE re.compile(r\\u201c[\\u201d]) # shorter quoted words are not claims def header(text: str) - dict[str, str]: return {k: v.strip() for k, v in HEADER.findall(text)} def prose(text: str) - str: Body text without the header block, headings, and fenced code. kept, fenced [], False for line in text.splitlines(): if line.startswith(): fenced not fenced continue if fenced or line.startswith((, #)): continue kept.append(line) return \n.join(kept) def claims(text: str): Yield (item, is_number, raw_links) for every figure or quotation in the prose. for sentence in re.split(r(?[.!?])\s, prose(text)): links [path for _, path in LINK.findall(sentence) if raw/ in path] bare LINK.sub( , sentence) # link labels and paths are not claims for item in NUMBER.findall(bare): yield item, True, links for item in QUOTE.findall(bare): yield item, False, links def raw_source(page: Path, rel: str) - Path | None: The raw file a link points at, or None when it escapes raw/ or is missing. src (page.parent / rel).resolve() return src if src.is_relative_to(RAW) and src.is_file() else None def grounded(item: str, is_number: bool, sources: list[str], page: Path) - bool: token re.compile(r(?![\w.,]) re.escape(item) r(?![\w.,])) for rel in sources: src raw_source(page, rel) if src is None: continue text src.read_text(errorsreplace) if token.search(text) if is_number else item in text: return True return False def drift(fingerprint: str, monitored: str) - str: Non-empty when monitored paths changed since the fingerprint, or git cannot tell. sha fingerprint.removeprefix(git:) paths [p.strip() for p in monitored.split(,) if p.strip()] if not paths: return out subprocess.run( [git, diff, --stat, f{sha}..HEAD, --, *paths], capture_outputTrue, textTrue, checkFalse, ) if out.returncode ! 0: return fgit cannot compare {sha}: {out.stderr.strip() or unknown fingerprint} return out.stdout.strip() def main(strict: bool) - int: errors 0 for page in sorted(WIKI.rglob(*.md)): text page.read_text() meta header(text) if meta.get(Status, Current) ! Current: continue if not meta.get(Fingerprint): print(f{page}: no Fingerprint header) errors 1 for item, is_number, sources in claims(text): if not sources: if strict: print(f{page}: {item!r} has no raw/ source link) errors 1 continue if not grounded(item, is_number, sources, page): print(f{page}: {item!r} not found in {, .join(sources)}) errors 1 stat drift(meta[Fingerprint], meta.get(Monitored, )) if meta.get(Fingerprint) else if stat: print(f{page}: drifted since {meta[Fingerprint]}\n{stat}) errors 1 print(f{errors} problem(s)) return 1 if (errors and strict) else 0 if __name__ __main__: sys.exit(main(strict--strict in sys.argv))2.1 运行前提脚本必须在 vault 根目录运行Path.cwd() / raw与相对路径wiki均以此为基准目录结构为vault-root/ ├── raw/ # 不可变来源 ├── wiki/ # 编译页面 ├── archive/ # 归档页面 ├── index.md ├── log.md └── scripts/check_vault.py2.2 关键实现机制逐段解析声明提取proseclaims。prose()剥离头部块以开头的行、标题#与围栏代码只保留正文文本claims()再按句子切分re.split(r(?[.!?])\s, ...)对每个句子收集两类声明匹配NUMBER正则的数值如15、1,000、45%以及匹配QUOTE正则的长度不低于 8 个字符的引文。注意LINK正则要求链接以.md结尾且仅当路径中含raw/才被计入声明来源随后bare LINK.sub( , sentence)把链接标签与路径替换为空格避免raw/adr/0007-jwt.md中的0007被误识别为数值声明。来源解析raw_source。用Path.resolve()解析相对链接后必须满足两个条件才算有效src.is_relative_to(RAW)不允许逃出raw/目录且src.is_file()文件必须真实存在。因此页面无法把声明建立在 vault 之外的任何东西上。逐字命中grounded。数值以整词形式搜索构造(?![\w.,])...与(?![\w.,])边界因此15不会匹配150或2015引文则要求逐字出现在原文中。任一来源命中即判定为已溯源。漂移判定drift。从Fingerprint: git:5b237fa中剥离git:前缀得到sha将Monitored:按逗号拆分为路径清单然后执行git diff --stat sha..HEAD -- paths...。输出非空即漂移Monitored:为空时直接返回空串说明页面完全由raw/编译而来没有可对比的代码。git返回非零时例如历史重写导致 fingerprint 丢失该情况本身也算作漂移。主循环main。遍历wiki/下全部*.md跳过Status非Current的页面归档页与争议页是记录而非声明缺少Fingerprint头报错每条声明无raw/链接时仅在--strict下报错声明未溯源或页面漂移时打印具体信息并累计错误数末尾输出N problem(s)仅当--strict且有错误时返回非零退出码。2.3 检查边界脚本检查什么、刻意不检查什么脚本作者在 details.md 中明确列出了判断规则这是使用脚本前必须理解的语义约定只扫描正文。头部块、标题、围栏代码以及 Markdown 链接的标签和路径都被排除所以raw/adr/0007-jwt.md这样的来源路径永远不会把0007读成一条声明数值整词命中、引文逐字命中。15不匹配150或2015引文必须逐字出现长度不足 8 个字符的引语不视为声明两三个词的引语不能作为任何结论的证据被重排格式的数字1,000与1000会被故意判为失败——请直接复制来源的写法链接必须落在raw/内。逃出该目录或指向缺失文件的链接都是未命中页面不能把声明建立在 vault 外部--strict模式下句子中没有raw/链接的数值或引文是错误不带--strict则跳过——这是对旧 vault 做首轮清扫的模式每个当前页都需要Fingerprint:Monitored:允许为空仅由raw/编译的页面没有可对比的代码漂移被定义为 fingerprint 与HEAD之间、限定在受监控路径上的非空git diff --stat。当 git 无法比较时例如历史重写移除了 fingerprint同样计为漂移需要重编译并打上新的 fingerprint归档页与争议页被跳过它们是记录不是声明。三、批量漂移检查面向大库的单命令实现当 vault 页面很多时逐页执行git diff成本偏高。details.md 给出的批量策略是先收集全部 fingerprint 去重再对每个不同的 fingerprint 只跑一次git diff并将对应页面的Monitored:路径合并为参数grep -rh ^ Fingerprint: git: wiki | sort -u | sed s/^ Fingerprint: git:// \ | while read -r sha; do echo $sha; git diff --stat $sha..HEAD -- $(grep -rl git:$sha wiki \ | xargs grep -h ^ Monitored: | sed s/^ Monitored: // | tr , \n | sort -u) done逐段拆解grep -rh ^ Fingerprint: git: wiki递归抓取所有页面的 fingerprint 行sort -used s/^ Fingerprint: git://去重并剥离git:前缀得到唯一的短提交集合外层while read -r sha对每个指纹执行一次git diff --stat $sha..HEAD内层grep -rl git:$sha wiki找出引用该指纹的全部页面xargs grep -h ^ Monitored:抓取它们的受监控路径sed去掉前缀、tr , \n按逗号拆分、sort -u去重后拼成 diff 的路径参数。由此N 个页面共享同一指纹时只产生一次 git 比较检查成本从每页一次 diff降为每个指纹一次 diff。四、配套模板index.md、log.md 与提交门禁4.1index.md—— 页面地图每行一个当前页面给出状态、指纹与来源# Vault index | Page | Status | Fingerprint | Sources | |---|---|---|---| | Authentication architecture | Current | git:5b237fa | raw/notes/auth-v1.md, raw/adr/0007-jwt.md |4.2log.md—— 追加式变更记录每个变更一行最新的在最后2026-09-01 compile wiki/auth-architecture.md from raw/adr/0007-jwt.md at git:5b237fa 2026-09-14 archive wiki/session-store.md: Outdated, src/auth/session.ts changed after git:5b237fa注意第二行演示了归档而非删除的约定页面移动进archive/时在日志中留下理由历史永不丢失。4.3 Pre-commit 钩子与 CI 门禁SKILL.md的 Commit gate 一节规定溯源与漂移检查必须构成提交门禁。details.md 给出了完整的 pre-commit 钩子.git/hooks/pre-commit#!/bin/sh python3 scripts/check_vault.py --strict || { echo vault check failed; fix the claim or the fingerprint before committing 2 exit 1 }【免费下载链接】agentsMulti-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity项目地址: https://gitcode.com/GitHub_Trending/agents24/agents创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →