公开记录
软件健康报告模式 0.27.0 · 指标 1.13.0 · 2026-07-28 02:54 UTC

cumberland-laboratories / gator

A harness for AI coding: repo-native memory, module charters, and a closed loop for navigation coding.

PythonMIT★ 0 星标⑂ 0 复刻始于 2026年5月在 GitHub 上查看 ↗

cumberland-laboratories/gator 的健康指数为 100 分中的 46 分,处于「存在风险」区间。 其得分最高的类别是Vitality(77/100),最低的是Security(32/100)。 最近一次更新在今天。 近期的大部分工作由 1 位贡献者完成。

46
总分 / 100
存在风险

软件健康指数

指标归入加权类别,统一采用 1–100 量表。总体分先取类别加权平均;当公开证据触发高风险司法辖区政策时,评级会按政策调整,并设置 49(有风险)的上限。AI 就绪度不计入总体分。

46
优秀85-100堪称典范;基本满足所有检验标准
良好70-84健康;仅有轻微不足
中等50-69可接受,但存在明显不足;建议进行审查
存在风险30-49存在重大薄弱环节;采用时应保持审慎
危急1-29问题严重(项目被弃置、仅有单一维护者、缺乏基本工程规范)
活力社区与采用可持续性与治理工程质量安全AI 就绪度

评分画像

每条轴代表一个类别。形状比平均值更重要——健康的对象会填满整个图形,而“一峰一谷”式画像意味着某一维度的优势正掩盖另一维度的风险。

所有权

0 关注者2 个公开仓库始于 2026年3月Cumberland Laboratories

该仓库由个人账户拥有。相较于组织支持的项目,单一所有者项目的延续性风险更高。

按类别列示的指标

活力

项目是否仍有生命——是否仍在编写代码,是否仍在发布版本?

77良好 · 占总体的 22%
评分方式
36/36推送新近度 — 最近一次推送于 0 天前
6.9/36提交节奏 — 52 周中有 10 周有提交
18/18提交量 — 最近一年 283 次提交
0/10OpenSSF Scorecard:Maintained — project was created within the last 90 days. Please review its contents carefully
所用输入
commits_last_year283
human_commit_share1
days_since_last_push0
active_weeks_last_year10

发布纪律

100优秀
评分方式
27/27有发布版本 — 已发布 2 个发布版本
36/36发布时效 — 最近一次发布版本于 24 天前
27/27发布节奏 — 约每 31.9 天发布一次
0/10OpenSSF Scorecard:Signed-Releases — 无数据
所用输入
releases_count2
latest_release_tagv1.8.10
releases_from_tags
days_since_latest_release24
mean_days_between_releases31.9
已排除计分(无数据或不适用):OpenSSF Scorecard:Signed-Releases。 其余权重已重新归一化。

社区与采用

项目是否拥有用户、下载量与关注度,并具备欢迎贡献者参与的配置?

33存在风险 · 占总体的 18%
评分方式
0/60星标 — 0 个星标
0/25复刻 — 0 个复刻
0/15关注者 — 0 位关注者
所用输入
forks0
stars0
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history

社区健康

70良好
评分方式
22.5/22.5README
22.5/22.5许可证 — 可识别的许可证(MIT)
18/18CONTRIBUTING 指南
0/13.5行为准则
0/7.2议题模板
0/6.3PR 模板
所用输入
has_readme
has_license
has_contributing
has_issue_template
has_code_of_conduct
has_pull_request_template

可持续性与治理

项目能否在其成员之外延续——巴士系数、响应能力、由谁支持,以及软件包的维护状况?

33存在风险 · 占总体的 24%
评分方式
9/54巴士系数 — 1 位贡献者贡献了半数提交
0.2/22.5提交分布 — 头号贡献者编写了 99% 的提交
2.7/13.5贡献者广度 — 2 位贡献者
0/10OpenSSF Scorecard:Contributors — project has 0 contributing companies or organizations -- score normalized to 0
所用输入
bus_factor1
contributors_sampled2
top_contributor_share0.993
评分方式
0/46.8议题解决 — 没有议题或无数据
38.2/38.3PR 接受 — 已裁定的 PR 中 1/1 已合并
0/15OpenSSF Scorecard:Code-Review — Found 0/16 approved changesets -- score normalized to 0
所用输入
merged_prs1
open_issues0
closed_issues0
issue_closed_ratio
closed_unmerged_prs0
已排除计分(无数据或不适用):议题解决。 其余权重已重新归一化。
评分方式
10/30所有权背书 — 个人(用户)账户
0/20已验证域名 — 不适用于个人账户
0/25所有者影响力 — cumberland-laboratories 有 0 位关注者
4.3/25既往记录 — 2 个公开仓库,账户约 0 年
所用输入
followers0
owner_typeUser
is_verified
owner_logincumberland-laboratories
public_repos2
account_age_days143
已排除计分(无数据或不适用):已验证域名。 其余权重已重新归一化。

工程质量

基础的工程与文档实践是否到位?

50中等 · 占总体的 20%

工程实践

24危急
评分方式
0/24CI 工作流
24/24存在测试
0/16Linter 配置
0/9.6Pre-commit 钩子
0/6.4.editorconfig
0/20OpenSSF Scorecard:CI-Tests — 0 out of 1 merged PRs checked by a CI test -- score normalized to 0
所用输入
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config

文档

90优秀
评分方式
30/30README
25/25文档目录
15/15文档 / 主页站点 — https://github.com/cumberland-laboratories/gator
10/10仓库描述
10/10主题标签 — 12 个主题标签
0/10Wiki
所用输入
topicsagentic-ai, ai-coding, architecture, code-review, coding-assistant, developer-tools, documentation, knowledge-layer, llm, repository-tools, software-engineering, navigation-coding
has_wiki
homepagehttps://github.com/cumberland-laboratories/gator
has_readme
has_docs_dir
has_description

安全

可见的安全与供应链实践是否稳固,且不存在未解决的高风险司法辖区暴露?

32存在风险 · 占总体的 16%

安全态势

32存在风险
评分方式
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — 0 out of 1 merged PRs checked by a CI test -- score normalized to 0
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/16 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
0/10Dangerous-Workflow — 无数据
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5许可证 — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
0/5Packaging — 无数据
0/5Pinned-Dependencies — 无数据
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — 无数据
0/7.5Token-Permissions — 无数据
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
所用输入
sourceopenssf_scorecard
checks_evaluated13
scorecard_versionv5.5.0
checks_inconclusive5
scorecard_aggregate3.2
已排除计分(无数据或不适用):dangerous_workflow, packaging, pinned_dependencies, signed_releases, token_permissions。 其余权重已重新归一化。

AI 就绪度

该仓库在多大程度上具备与 AI 编码代理协同开发与维护的条件?这是一枚独立的实验性徽章——权重为 0.0,因此单独呈现,不影响总体健康评分。

41存在风险 · 占总体的 0%
评分方式
0/45代理指令 — 没有 CLAUDE.md / AGENTS.md / 编辑器规则
0/15机器可读文档(llms.txt)
40/40可读的提交历史 — 100 次人类提交中有 81 次说明了意图(结构化标题或解释性正文)
所用输入
has_llms_txt
legible_history_share0.81
agent_instruction_files
agent_instruction_max_bytes
评分方式
0/18一条命令的引导启动
22/22自动化测试
0/11Lint / 格式化配置
0/11静态类型检查
0/10可复现环境
10/10已体现的代理实践 — 最近 100 次提交中有 40 次由代理编写或署名代理
0/8自动化维护 — 未观察到自动依赖更新
0/10OpenSSF Scorecard:Pinned-Dependencies — 无数据
所用输入
has_nix
has_tests
lockfiles
has_dockerfile
typed_language
bootstrap_files
has_devcontainer
has_linter_config
typecheck_configs
agent_commit_share0.4
toolchain_manifests
dependency_bot_commit_share0
已排除计分(无数据或不适用):OpenSSF Scorecard:Pinned-Dependencies。 其余权重已重新归一化。
评分方式
0/45可类型检查的代码 — Python,未配置类型检查
53.6/55可控的文件大小 — 采样的 76 个源文件中有 2 个超过 60KB
所用输入
primary_languagePython
largest_source_bytes69,425
source_files_sampled76
oversized_source_files2

关键数据

0GitHub 星标
2贡献者
283最近 12 个月提交数
0距最近推送天数
2发布版本数
1巴士系数(bus factor)
0开放议题
软件包生态系统数

数据采集警告

  • GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

更多细节

OpenSSF Scorecard 3.2 / 10
3.2综合

来自开源项目 OpenSSF Scorecard 的独立、工具无关的安全评估。每项检查奖励的是安全实践本身,而非特定供应商的工具。Scorecard 无法判定的检查项标记为 不适用,并从安全评分中剔除(绝不按零分计)。Scorecard v5.5.0 · 2026-07-28 02:54 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
0CI-Tests0 out of 1 merged PRs checked by a CI test -- score normalized to 0
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/16 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
不适用Dangerous-Workflowno workflows found
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
不适用Packagingpackaging workflow not detected
不适用Pinned-Dependenciesno dependencies found
0SASTSAST tool is not run on all commits -- score normalized to 0
10Security-Policysecurity policy file detected
不适用Signed-Releasesno releases found
不适用Token-PermissionsNo tokens found
10Vulnerabilities0 existing vulnerabilities detected
全部依赖 未采集

本报告未能采集到解析后的依赖集合:GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

原始 JSON 报告 机器可读
{
  "data": {
    "repo": {
      "topics": [
        "agentic-ai",
        "ai-coding",
        "architecture",
        "code-review",
        "coding-assistant",
        "developer-tools",
        "documentation",
        "knowledge-layer",
        "llm",
        "repository-tools",
        "software-engineering",
        "navigation-coding"
      ],
      "is_fork": false,
      "size_kb": 1578,
      "has_wiki": false,
      "homepage": "https://github.com/cumberland-laboratories/gator",
      "languages": {
        "CSS": 28939,
        "HTML": 2683,
        "Shell": 66986,
        "Python": 1070369,
        "JavaScript": 88556
      },
      "pushed_at": "2026-07-28T02:51:34Z",
      "created_at": "2026-05-15T11:39:39Z",
      "owner_type": "User",
      "updated_at": "2026-07-28T02:51:39Z",
      "description": "A harness for AI coding: repo-native memory, module charters, and a closed loop for navigation coding.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Cumberland Laboratories",
      "type": "User",
      "login": "cumberland-laboratories",
      "company": "Cumberland Laboratories",
      "location": null,
      "followers": 0,
      "avatar_url": "https://avatars.githubusercontent.com/u/266200287?v=4",
      "created_at": "2026-03-07T01:49:06Z",
      "is_verified": null,
      "public_repos": 2,
      "account_age_days": 143
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v1.8.10",
          "kind": "patch",
          "published_at": "2026-07-03T10:10:14Z"
        },
        {
          "tag": "v1.0.0",
          "kind": "major",
          "published_at": "2026-06-01T11:32:22Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "ab58cad87d64f0235887b0926ac768a8b5ef99ff",
          "body": null,
          "is_bot": false,
          "headline": "Deploy v2.2.0: dashboard repo file browser overhaul",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-28T02:50:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f30faa9ccc129cd777654fc0cdfd247ec8ce8a5f",
          "body": null,
          "is_bot": false,
          "headline": "Deploy v2.1.1: keep scaffolding at user-visible root on v2 repos",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-27T20:05:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2af9e404a8dedff44e8c3138f18ada35ece521a1",
          "body": "Major release:\n- Gator Loop: governed planning debates between AI models (11 subcommands,\n  3-role tokens, wait command, round-versioned artifacts)\n- v2 directory layout: .includes/ ownership boundary for shipped content\n- Layout resolver: dual-layout compatibility for all scripts\n- Migration comman\n[…]\neliminates PR merge conflicts\n- Dashboard loop visibility\n- Cross-vendor loop orientation\n- Loop protocol, artifact formats, blueprint, architect override procedure\n\nSee CHANGELOG.md for full details.",
          "is_bot": false,
          "headline": "Deploy v2.1.0: Gator Loop, .includes/ layout, merge conflict fix",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-27T19:29:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3cc0654fca5930a45a19aa4f023712ae5f1981a0",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v2.0.0: Complete command-post retirement from Gator Individual",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-21T03:01:27Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "a2816168e1fe3f16a1027169922dffc39d6f7dab",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.9.3: Hook warning mode on ungoverned branches",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-19T20:44:13Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "0cb936cd597d17a3a4866ee6d4613331c4b308e1",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.9.2: Fix update fallback, dead test cleanup",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-19T20:32:25Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "af3cab0af2cb756bf1d6b099e307143565a0629a",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.9.1: Remove command-post dead code",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-19T19:44:13Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "7520df74d0aaeca1409ea5ff5d0e15e3fdadbb5c",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.9.0: Add Repository feature, retire command-post mode",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-19T15:45:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "0c19397a89b6058b703999399122970a9909feff",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.11: Dashboard logo + MIME support",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-19T14:41:34Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "0654246c39006db006c5f611b5165cb3a722b1d6",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.10: fix public docs — ship how-to-use and how-gator-works",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-03T10:15:17Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "800bdea22c5f6c822a3548fa739d2b81a665704f",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.9: How Gator Works doc, MVP docs complete",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-07-03T10:02:34Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "c9021b2dd6c950f29dc2520d0276ab9d16a9ae7c",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.8: Docs view in dashboard, How to Use Gator guide",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-30T14:50:13Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "690e3d70c46d48651f983b396bd00449749dfde2",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.7: hide shipped defaults, show user content only",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T22:42:37Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "e159633df497f41684b35c9a1a643ed4cde49a49",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.6: charter docs in public repo and dashboard",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T22:27:59Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d0c0770c2488af08815889519903a6e75e163440",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.5: charter docs ship locally, formation process for models",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T22:08:07Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "f67f2a9268cec416c515e1be9dcb7fbcdcc2a206",
          "body": "Merge main into dev",
          "is_bot": false,
          "headline": "Merge pull request #1 from cumberland-laboratories/main",
          "author_name": "Cumberland Laboratories",
          "author_login": "cumberland-laboratories",
          "committed_at": "2026-06-28T19:57:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "02b26712b9a38b30916a94aafe24fe3aa78f4d8e",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.4: curated docs, auto VERSION, CHANGELOG current",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T19:55:31Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d9ae8b72c3810bdae521a2eccd2b8266faea439c",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.3: curated public docs",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T19:38:48Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "2deaa4fc1cb367c758b80a0f501027a8c7a16b1e",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.2: CHANGELOG, VERSION, active-threads cleanup",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T19:29:31Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "837161298a63c3f07027edf72a13d9a85bf61a90",
          "body": null,
          "is_bot": false,
          "headline": "remove stale governance hooks (public repo is not self-governed)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T19:13:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b9e825c14bdefd8f59ed5468eff5bbfa0ece52d3",
          "body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.1: update overlays all knowledge directories",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T19:10:31Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "4a0117b29601d9efe6f103b0067477b4d0e67502",
          "body": "…doc cleanup\n\n- Deploy from gator-command 12f7483 (v1.8.0)\n- README + _template.md in all knowledge directories\n- Removed command-post references from public docs\n- Simplified architecture.md, command-reference.md\n- constitution.md visible in dashboard repo browser\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.8.0: knowledge directory templates, deploy simplification, …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T18:56:10Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "677b2b6a3318547f805de120c27e2d83c45757b6",
          "body": "Removed .gator/, gator-command/, CLAUDE.md, AGENTS.md, GEMINI.md,\nconstitution.md — command-post artifacts no longer needed. Public repo\nis now gator-engine/ + root files (README, docs, LICENSE).\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy v1.7.9: simplified deploy — public repo is source code only",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T18:30:35Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "ac95651331b5803e6706dc4f8609d50d09be26d2",
          "body": "- Deploy from gator-command 160238a (v1.7.8)\n- v1.7.8: README intro rewrite, roadmap update\n- docs: rewrite README intro — blockquote explaining what makes Gator different\n- roadmap: add How to Use Gator and How Gator Works docs to July 1-5 build\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.8: v1.7.8: README intro rewrite, roadmap update (+2 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T17:44:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a936cba3d76718ef4a0998c69f7721ee022bb2f9",
          "body": "- Deploy from gator-command 814a904 (v1.7.7)\n- v1.7.7: README polish, roadmap rewrite\n- docs: Gatorize -> Gator in Installation Notes\n- docs: move Safe to try paragraph to Quick Start, after gator gatorize command\n- docs: README copy tweaks — Gator Dashboard name, italicize cross-model\n- docs: move \n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.7: v1.7.7: README polish, roadmap rewrite (+10 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-28T15:01:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d3d8d7c873f2ccd4904ff7953e54233d358dfb78",
          "body": "- Deploy from gator-command 9642528 (v1.7.6)\n- v1.7.6: fix file indentation in repo browser\n- fix: indent all files inside section groups, not just subdirectory files\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.6: v1.7.6: fix file indentation in repo browser (+1 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T23:57:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2f368c2e24e6560696affc14f291150f7e7ea705",
          "body": "…ion (+1 more)\n\n- Deploy from gator-command 0ac827f (v1.7.5)\n- v1.7.5: fix upgrade restart, CMD window, file indentation\n- fix: upgrade restart uses gator CLI entry point, hide CMD window, fix file indentation\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.5: v1.7.5: fix upgrade restart, CMD window, file indentat…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T23:43:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d523e2eabf6156f2b285ad9bd2a2c25106a19823",
          "body": "…uplicate title cleanup (+3 more)\n\n- Deploy from gator-command 53406ec (v1.7.4)\n- v1.7.4: repo browser whitelist, sidebar indentation, duplicate title cleanup\n- dashboard: indent files under folders in repo sidebar\n- dashboard: whitelist .gator/ files in repo browser — show only knowledge base conte\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.4: v1.7.4: repo browser whitelist, sidebar indentation, d…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T23:32:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d58bdfb4fda6d013e129a8733a400eccd47d0706",
          "body": "…errors (+1 more)\n\n- Deploy from gator-command d58bad4 (v1.7.3)\n- v1.7.3: self-upgrade from dashboard without file lock errors\n- dashboard: Upgrade button stops server, runs pipx upgrade, relaunches automatically\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.3: v1.7.3: self-upgrade from dashboard without file lock …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T23:10:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4ff9c803e4377420b5c4185b10a3e661888e41c1",
          "body": "- Deploy from gator-command 974e0af (v1.7.2)\n- v1.7.2: consolidated version resolution\n- consolidate version resolution into canonical get_version() in gator_core\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.2: v1.7.2: consolidated version resolution (+1 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T22:59:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b7efd9f1fd7d594f6258b7af1ab3f39536360424",
          "body": "…n tracking, PyPI updates (+10 more)\n\n- Deploy from gator-command 108bbb2 (v1.7.1)\n- v1.7.1: dashboard Individual polish — fleet UX, version tracking, PyPI updates\n- dashboard: Updates view now uses PyPI version check and pipx upgrade\n- fix: enforcement dropdown persists across page refresh by updat\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.1: v1.7.1: dashboard Individual polish — fleet UX, versio…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T20:52:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a4dd346ad2124f5eb2bd8d64ba80ba591eb551a3",
          "body": "…ommit (+7 more)\n\n- Deploy from gator-command 4576779 (v1.7.0)\n- v1.7.0: module splits for gator-deploy and gator-pre-commit\n- exclude enterprise-only test files that reference enterprise-only scripts\n- fix commit-gate charter: correct template paths from gator-command/ to src/gator_command/\n- split\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.7.0: v1.7.0: module splits for gator-deploy and gator-pre-c…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-27T19:40:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46e39df73617aaacc301494ccdf55e8d68f5771c",
          "body": "…lic repo\n\n- Deploy from gator-command 8e13e57 (v1.6.2)\n- fix deploy: ship gatorize/ and legacy/ packages to public repo\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Override-Approved-By: PI\nGator-Override-Block: cde453a6\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.6.2: fix deploy: ship gatorize/ and legacy/ packages to pub…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-26T02:26:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a93c10533bcfc709b3d4e51477ba3baa586cbc93",
          "body": "- Deploy from gator-command 8e3a7b0 (v1.6.2)\n- v1.6.2: complete memex quarantine cleanup\n- fix remaining memex quarantine drift: procedure paths and test path\n- complete memex quarantine: fix procedures, charter header, legacy notices\n- v1.6.1: memex quarantine + charter fixes\n\nGator-Charters: 0\nGat\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.6.2: v1.6.2: complete memex quarantine cleanup (+3 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-26T02:16:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "50a3c5e0cfcb15c0480b7028447c8a3ee338b98d",
          "body": "…, legacy docstrings (+1 more)\n\n- Deploy from gator-command bcd19be (v1.6.0)\n- fix memex quarantine: broken test, stale charter paths, legacy docstrings\n- quarantine memex as legacy — move scripts to legacy/, declare product boundary\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.6.0: fix memex quarantine: broken test, stale charter paths…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-26T02:05:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ed54634a024867d1cfff8708aa4a0659fc1b968",
          "body": "…dule (+2 more)\n\n- Deploy from gator-command 357e8ed (v1.6.0)\n- fix dashboard session tests to patch extracted data module\n- split gatorize.py into focused modules (1295 → 608 lines)\n- v1.6.0: split gator-dashboard.py into focused modules\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.6.0: fix dashboard session tests to patch extracted data mo…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-26T01:35:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1d9e1237deb8e24388625497ab4843766a564567",
          "body": "…th .gator/\n\n- Deploy from gator-command 8cc3ef8 (v1.5.9)\n- v1.5.9: fix bare paths in constitution — prefix all with .gator/\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.9: v1.5.9: fix bare paths in constitution — prefix all wi…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T20:41:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "427502d0780c71c08fe5f04e1905dbc75a440cfd",
          "body": "…hooks\n\n- Deploy from gator-command d8dd725 (v1.5.8)\n- v1.5.8: remove gator-init from automatic SessionStart hooks\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.8: v1.5.8: remove gator-init from automatic SessionStart …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T20:27:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "912f17180135afbd62eaa19017e6bf2cdfde9dc6",
          "body": "…destructive hook merge\n\n- Deploy from gator-command f7746af (v1.5.7)\n- v1.5.7: fix session-start.py excluded from wheel, non-destructive hook merge\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.7: v1.5.7: fix session-start.py excluded from wheel, non-…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T20:15:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "29f934158fe6689aecb0c3ae8f16dcb6b7323a46",
          "body": "- Deploy from gator-command 42631e1 (v1.5.6)\n- v1.5.6: fix vendor hook templates excluded from pip wheel\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.6: v1.5.6: fix vendor hook templates excluded from pip wheel",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T19:49:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "28f0d2ab676f4e4977b1c238f1906298c8bf286b",
          "body": "…r vendor hook injection\n\n- Deploy from gator-command d44fee7 (v1.5.5)\n- v1.5.5: emit gator-init output as additionalContext for vendor hook injection\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.5: v1.5.5: emit gator-init output as additionalContext fo…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T19:38:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "326e8d044846c3a45d05f83fc3ac9c4a1e757d22",
          "body": "…tomatic boot display\n\n- Deploy from gator-command 92652e4 (v1.5.4)\n- v1.5.4: add gator-init.py to SessionStart hooks for automatic boot display\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.4: v1.5.4: add gator-init.py to SessionStart hooks for au…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T19:20:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e7efc89028f19b2f6367e950777cecb7624a3fa",
          "body": "…elf-heal at session start\n\n- Deploy from gator-command e617a45 (v1.5.3)\n- v1.5.3: add gator-session-open.py for automatic hook self-heal at session start\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.3: v1.5.3: add gator-session-open.py for automatic hook s…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-25T19:01:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4b5f528c6c6faa80506310cc88efbf7e91a130ed",
          "body": "- Deploy from gator-command cbd8fc9 (v1.5.2)\n- v1.5.2: fix standalone dashboard regressions\n- Fix standalone dashboard regressions: fleet subtitle counts and repo enrichment error visibility\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.2: v1.5.2: fix standalone dashboard regressions (+1 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-23T16:35:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36d392cd6e97cc7dc5193f9b3d2c513b203de08d",
          "body": "…dpoint (+1 more)\n\n- Deploy from gator-command 1d5f526 (v1.5.1)\n- v1.5.1: fix missing git import in dashboard history endpoint\n- Fix: import git() in dashboard for history endpoint\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.1: v1.5.1: fix missing git import in dashboard history en…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-23T00:17:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f265cd95cb29d307d1595feb45bc98f828288e71",
          "body": "- Deploy from gator-command bdc27bf (v1.5.0)\n- Fix: exclude audit tests from public deploy\n- v1.5.0: Gator Individual product cut — clean public surface, enterprise excluded\n- Fix dashboard startup and snapshot for Individual wheel\n- Implement Gator Individual product cut: enterprise code excluded f\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.5.0: Fix: exclude audit tests from public deploy (+10 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-22T22:15:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b9f83707a7b2450363d26337fad60040741143a9",
          "body": "…anscript slicing per commit (+3 more)\n\n- Deploy from gator-command 80a8579 (v1.4.0)\n- v1.4.0: session-block companion capture — CLI-first transcript slicing per commit\n- Tighten companion architecture: lossless contract, deterministic lookup, status/quality split, raw/encrypted policy\n- Refine sess\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.4.0: v1.4.0: session-block companion capture — CLI-first tr…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-21T21:19:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e39fa72762ed64b595839c32619b40c88c4ecdc3",
          "body": "…pulse workflow (+12 more)\n\n- Deploy from gator-command 4c8f755 (v1.3.0)\n- v1.3.0: vendor session identity, aggregator grouping, pulse workflow\n- Gator pulse: project assessment + update agent guidance for pulse workflow\n- Phase 5: document reduced role of agent canonicalization, mark plan complete\n\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.3.0: v1.3.0: vendor session identity, aggregator grouping, …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-21T14:10:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "22e4760bb60d27105721420eb805216aa54e5fb2",
          "body": "…ueprint update, search (+6 more)\n\n- Deploy from gator-command 8a576e4 (v1.2.2)\n- v1.2.2: 126 charter entries, schema disambiguation, blueprint update, search\n- Document [filename] disambiguation convention in charter-schema-v1\n- Fix charter review findings: stale render_html duplicate, parse_since \n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.2.2: v1.2.2: 126 charter entries, schema disambiguation, bl…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-20T23:11:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c5b43731435c4ff8aa856b5fcdf373668b2e1d07",
          "body": "…oolean search, 64 new tests (+6 more)\n\n- Deploy from gator-command 32ff4fb (v1.2.1)\n- v1.2.1: audit renderer extraction, B+ to A- Phase 1, boolean search, 64 new tests\n- Fix renderer import: lazy loading with explicit error, add assembler→renderer seam tests\n- Add renderer seam tests with structura\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.2.1: v1.2.1: audit renderer extraction, B+ to A- Phase 1, b…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-20T22:27:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2188dfb2d56dc0d2dcdfd19de4da430337f62f54",
          "body": "…ch, standalone audit (+23 more)\n\n- Deploy from gator-command e85def2 (v1.2.0)\n- v1.2.0: session aggregator, audit view, dashboard search, standalone audit\n- Update roadmap: session aggregator, audit view, search, standalone audit — all done\n- Show Audit tab in standalone mode — session summaries wo\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.2.0: v1.2.0: session aggregator, audit view, dashboard sear…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-20T16:08:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2c9fb4c4bc5721e82b4ca362c593f6505be48be6",
          "body": "…regator plan (+23 more)\n\n- Deploy from gator-command 46a737d (v1.1.9)\n- v1.1.9: dashboard file refresh button, mtime sort, aggregator plan\n- Session snippets and procedure refinement for blueprint vs plan review cadence\n- Dashboard UX: per-file refresh button, descending mtime sort for sidebar file\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.9: v1.1.9: dashboard file refresh button, mtime sort, agg…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-20T12:11:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cb10b6193ad03363bb035de839c653a91c3e51bd",
          "body": "- Deploy from gator-command 666425d (v1.1.8)\n- Release v1.1.8\n- Init auto-registers repos in dashboard registry on session start\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.8: Release v1.1.8 (+1 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-19T23:08:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77c34e8b8845ae916563dde570b2f7c6a9f031fd",
          "body": "- Deploy from gator-command 38fcc61 (v1.1.7)\n- Release v1.1.7\n- Tighten hook test assertions per Codex review\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.7: Release v1.1.7 (+1 more)",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-19T22:43:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0f9b465d15848aab6a46b7cc242de2d4708548f",
          "body": "…tifacts (+7 more)\n\n- Deploy from gator-command f2b5c4f (v1.1.6)\n- v1.1.6: Windows managed hook dir, test fixes, Codex artifacts\n- Fix tests for Windows managed hook dir — use real git init in fixture\n- Clean up charter warning drift\n- Fix Windows Git hook installation path\n- bat-hook-run-test\n- hoo\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.6: v1.1.6: Windows managed hook dir, test fixes, Codex ar…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-19T22:34:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ab84cb557819fe761b3be8c7909ed1a047791f6d",
          "body": "…edure (+2 more)\n\n- Deploy from gator-command af7a770 (v1.1.5)\n- v1.1.5: session artifact cleanup, updated release procedure\n- Deploy: clean session artifacts and gitignore snippets in public repo\n- v1.1.4: dashboard shows .json session snippets\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.5: v1.1.5: session artifact cleanup, updated release proc…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-19T02:18:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "293dc139eb2da9ee779133f633d214c0e4ad8ee4",
          "body": "… (+1 more)\n\n- Deploy from gator-command e691976 (v1.1.4)\n- Dashboard: show .json session snippets in file browser\n- Template system overhaul: cross-platform hooks, product-source resolution, full knowledge layer deploy\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.4: Dashboard: show .json session snippets in file browser…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-19T01:53:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a48c44b95c05338a87540608cc02b942deac671",
          "body": "…ion sync\n\n- Deploy from gator-command 3331d2f (v1.1.3)\n- v1.1.3: standalone dashboard, restart fix, deploy version sync\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.3: v1.1.3: standalone dashboard, restart fix, deploy vers…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T13:49:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f582551fb82590c4d5ca8dd69811ba70d7d191ee",
          "body": "…ment section\n\n- Deploy from gator-command 91be9d5 (v1.1.2)\n- Deploy: version from pyproject.toml, PyPI link, remove Development section\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.1.2: version from pyproject.toml, PyPI link, remove Develop…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T13:39:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0ce71fd5ed88a1c6db207a436f2d584d84ee4266",
          "body": "…id duplicate tabs\n\n- Deploy from gator-command 69d1a32 (v1.0.0)\n- Dashboard restart: skip browser open on restart to avoid duplicate tabs\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Dashboard restart: skip browser open on restart to avo…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T13:06:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "242d42fb54545250e68f2be2a665de98364190ff",
          "body": "…, no command-post references (+2 more)\n\n- Deploy from gator-command ad7a408 (v1.0.0)\n- v1.1.2: PyPI README rewrite — clean install/quickstart, no command-post references\n- v1.1.1: standalone dashboard with machine-local registry\n- Standalone dashboard: machine-local registry, enriched fleet view, A\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: v1.1.2: PyPI README rewrite — clean install/quickstart…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T12:58:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "00964e9c5f09c5c5c16f9838b5e2e8826f01b401",
          "body": "…Development section (+2 more)\n\n- Deploy from gator-command 949efa8 (v1.0.0)\n- README: pipx is the only install path, clone moved to Development section\n- Plan fix: align standalone dashboard with real repo-status schema, honest Audit scope\n- Plan: standalone dashboard — machine-local fleet console \n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: README: pipx is the only install path, clone moved to …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T12:21:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0f6052634086318c232009f1cc7ba6c93e469795",
          "body": "…odel thread and inbox (+1 more)\n\n- Deploy from gator-command 9edf24e (v1.0.0)\n- Capture pipx standalone adoption wedge in deployment-model thread and inbox\n- v1.1.0: gator gatorize and gator update wired into CLI, package-install compatible\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Capture pipx standalone adoption wedge in deployment-m…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T03:20:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ae561357c701a09ad6d6e48587a1c2c6a3d9aff",
          "body": "…nd gator CLI reference (+10 more)\n\n- Deploy from gator-command 3832d56 (v1.0.0)\n- Docs: pipx install path in blueprint, public README, and gator CLI reference\n- Packaging tests: verify real gator.exe entry point, not python -m\n- Packaging tests: build wheel, install into temp venv, verify gator wor\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Docs: pipx install path in blueprint, public README, a…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T02:29:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "93dcaad7591423c0406f00604c34fcb3b4b8cf98",
          "body": "…e_repo_gitignore() extracted\n\n- Deploy from gator-command 3f5b9ba (v1.0.0)\n- Gatorize: gitignore enforcement on upgrade path, ensure_repo_gitignore() extracted\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Gatorize: gitignore enforcement on upgrade path, ensur…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T00:58:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c633f7fd1d9aa445d6a1b58677813cef4789dad5",
          "body": "…ev to avoid branch conflict (+1 more)\n\n- Deploy from gator-command 96fd638 (v1.0.0)\n- Gatorize: add __pycache__ to gitignore, track origin/dev to avoid branch conflict\n- Session snippet v2: JSON-first format with intent derivation and immutability contract\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Gatorize: add __pycache__ to gitignore, track origin/d…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-18T00:45:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9301cbe069b759571e4229301d656d8146f57901",
          "body": "…_label comment (+7 more)\n\n- Deploy from gator-command c5a8e01 (v1.0.0)\n- Plan v7: align summary with overlay model, fix machine_label comment\n- Plan v6: remove stale anchor refs from committed schema, define transcript_ref URI format\n- Plan v5: snippet immutability rule, split committed vs enrichme\n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Plan v7: align summary with overlay model, fix machine…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-17T11:50:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0b009b892df000d5ce12edd460416365ce4d4582",
          "body": "… path resolution (+3 more)\n\n- Deploy from gator-command c14b6bf (v1.0.0)\n- Dashboard: fix _git_run cp1252 crash, fix file version path resolution\n- Dashboard: git history dropdowns, restart button, fleet button styling, Notion-with-Git positioning\n- Dashboard: self-restart button in Updates view\n- \n[…]\nunctions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Dashboard: fix _git_run cp1252 crash, fix file version…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-17T02:11:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d109bb4a8b0bdfd9cefa039148b7f69a1851fde3",
          "body": "…onboarding path\n\n- Deploy from gator-command bd9a929 (v1.0.0)\n- Document 'add local repo' workflow — gatorize as team onboarding path\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Document 'add local repo' workflow — gatorize as team …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-17T00:33:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e29ea1d24f49cbcf46fb1bb8c38d035ca200711d",
          "body": "…o agents don't chase untracked snippets\n\n- Deploy from gator-command 3765cdf (v1.0.0)\n- Constitution: document post-commit snippet lifecycle so agents don't chase untracked snippets\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Constitution: document post-commit snippet lifecycle s…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T21:00:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d3ab803d0041480ada51766dcba81e04c8e0a08b",
          "body": "…staller mappings (+1 more)\n\n- Deploy from gator-command e9b4332 (v1.0.0)\n- Charter INDEX: add gatorize.py and memex-lint.py to installer mappings\n- Fix gatorize vault bug, clarify gatorize/snippet terminology, add .vscode/ to gitignore\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Charter INDEX: add gatorize.py and memex-lint.py to in…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T20:49:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83374253beebe2108083be3a18e51532108e13e0",
          "body": "… large files across all repo shapes\n\n- Deploy from gator-command 9e6515d (v1.0.0)\n- Vault: gitignored directory for sensitive material and large files across all repo shapes\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: Vault: gitignored directory for sensitive material and…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T15:48:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "92a6adf975ff9421dee33ed2971be7c45b5094a2",
          "body": "…x in commit title (+1 more)\n\n- Deploy from gator-command 8fa4349 (v1.0.0)\n- Deploy: UTF-8 subprocess encoding, deduplicate 'Deploy:' prefix in commit title\n- Deploy: descriptive commit titles, auto-override for blank-charter targets\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: UTF-8 subprocess encoding, deduplicate 'Deploy:' prefi…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T14:24:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "632214b1c485dda940216686c237a686ba0b2eba",
          "body": "- Deploy from gator-command 459772c (v1.0.0)\n- Fix deploy changelog accumulation — hash finder now matches bullet-prefixed body lines\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Override-Approved-By: AG\nGator-Override-Block: 87a1c417\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: 1 change(s) from gator-command",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T14:14:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e6a450700a7b18c644040b57406aec18ae0b3ab",
          "body": "- Deploy from gator-command 3306930 (v1.0.0)\n- Deploy stamps README with source commit hash\n- Fix architect propagation bug, add 6 orchestration-level tests\n- Fix CRLF parser bug, machine-id field parsing, add 25 snippet pipeline tests\n- Session snippets: entry_record → ledger + snippet pipeline\n-\n[…]\nVersion: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Override-Approved-By: AG\nGator-Override-Block: 9b537584\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: 6 change(s) from gator-command",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T14:06:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "23f82a13751e0328cf9a8eb92a547d24b6ff779c",
          "body": "- Deploy from gator-command b8b1542 (v1.0.0)\n- Fix architect propagation bug, add 6 orchestration-level tests\n- Fix CRLF parser bug, machine-id field parsing, add 25 snippet pipeline tests\n- Session snippets: entry_record → ledger + snippet pipeline\n- Deploy script auto-populates target commit_dra\n[…]\nVersion: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Override-Approved-By: AG\nGator-Override-Block: 8999ffa1\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: 5 change(s) from gator-command",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T13:59:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "156c2b40c66ca20ca9221354e0c9bec6e8e2eebd",
          "body": "- Deploy from gator-command 1e36151 (v1.0.0)\n- Deploy script auto-populates target commit_draft from source changelog\n- Blueprint: document the intentional clone gap as an adoption feature\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: override-skip\nGator-Override-Approved-By: AG\nGator-Override-Block: 33c905be\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy\nGator-Significance: routine",
          "is_bot": false,
          "headline": "Deploy v1.0.0: 2 change(s) from gator-command",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T12:17:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d00e6c6f9a6a9e719eb69da5d85578d349fd810",
          "body": "- Deploy from gator-command b6e0897\n\nGator-Charters: 0\nGator-Functions: 0\nGator-Threads: 0\nGator-Generation: 0\nGator-Policy-Version: 2026-05-30\nGator-Charter-Changed: no\nGator-Change-Type: deploy\nGator-Decision-Tags: deploy,blueprints\nGator-Significance: routine\nGator-Agent: claude-opus-4-6\nGator-Architect: AG",
          "is_bot": false,
          "headline": "Deploy: document intentional clone gap as adoption feature",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-16T12:08:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "820def0128ba6838381c36691f76634dfcfdd365",
          "body": "From gator-command 116a4d0:\n- gator-init-command-post.py now calls ensure_git_hooks() at boot\n- Hook status displayed in boot output and JSON\n- Next session's `gator init` will auto-repair stale hooks\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: command-post init self-heals its own git hooks",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T23:37:11Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "c091e298b793de6ea9a473857eb056ea9cdc3128",
          "body": "From gator-command f18b844:\n- gator init self-heals missing/stale git hooks at session start\n- Platform-specific shebang: python (Windows) / python3 (Unix)\n- Shared build_git_hook_wrappers() across gatorize, gator-update, gator-init\n- Fix: commit-msg hook positional arg, false-green degraded state detection\n- New test_hooks.py (22 tests), install-and-upgrade blueprint\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: hook self-heal, cross-platform shebang fix, shared hook builder",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T23:28:55Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "444fe31a73161a69568b43e2c8809e1b366bf770",
          "body": "Removed double quotes from Python-path shebangs in gatorize.py and\ngator-update.py. Quoted shebangs fail on Windows CMD because git\npasses the quotes literally to the shell.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: fix quoted shebang in hook generation for Windows CMD",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T22:24:37Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "02d926bb98f7cdadf923eec09e50f35d1679dd60",
          "body": "Narrowed #-prefix stripping to exact match on \"# Session Change Log\" only.\nLines like \"#123 fix\" and markdown headings are now preserved.\nAdded 8 tests covering validation and message assembly.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: fix stub-heading filter, add commit-draft-as-message tests",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T19:35:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "76d275d64a8c369563b1a1fa20124839e65843c7",
          "body": "…e blueprint\n\nHook: commit-msg phase now assembles the full commit message from commit_draft.md\nwhen populated. Validation tightened so stub heading alone doesn't pass.\nNew session-intelligence blueprint. Concierge Operations section.\nRelease-and-deploy procedure.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: commit_draft.md as commit message source, session intelligenc…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T19:27:20Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "5e6785d0e1246d2c1b7b0af7a89c67c82058379b",
          "body": "…release procedure\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Deploy: concierge Operations section, dashboard-operations ref note, …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-15T11:55:17Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "ff587f7dfe267a8a37d2ccfc1f38f0ab1331f0e2",
          "body": "Deploy from gator-command 6351c1c.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: comment out docs sections pending update",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:45:54Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "707c6903eb239c77f437edfff78f9fd1489b29d5",
          "body": "Deploy from gator-command 7b83a48.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: feature branch safety language",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:42:53Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "11241dd8130e751c42b2dae8f431709c22966a6f",
          "body": "Deploy from gator-command d8c7ac7.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: Installation Notes, Quick Upgrade, simplified intro",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:35:44Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "8031997e8b8a02a253b8f9865cb9e9905a69839e",
          "body": "Deploy from gator-command 00300b0.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: simplified intro, no daily workflow",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:27:06Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "02f81958a44484a37d22743eacffb90c0204e6bc",
          "body": "Deploy from gator-command 9ca6f7e.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: Quick Upgrade section",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:21:26Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "b59977c529cb5d0fa8b4d6ed32f9011a7b1a633a",
          "body": "Deploy from gator-command 88e1c68.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "README: code block Quick Start, remove Cursor, standalone by default",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:17:48Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "69ca31e14ad342441622dbe7f2ec61c6465bd840",
          "body": "Deploy from gator-command fa9c87b.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Standalone by default — bare gator clone is not a command post",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T20:05:30Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "f0efe7cd8d1f226f654f1d81f3080bd22a403f59",
          "body": "Deploy from gator-command 903f183.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fix legacy entry point detection + Pre-Gator section preservation",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:54:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "88489212a54a50e5b2986a70f5bd876389c448e1",
          "body": "Deploy from gator-command 921eadd.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Entry points: sentinel-based managed block refresh on update",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:50:16Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "b2c46e5f38a38b552a132b8db5212645566c0579",
          "body": "…etc.)\n\nDeploy from gator-command 092633f.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Scenario 3/5 update now runs full common tail (entry points, outbox, …",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:44:20Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "167f28caf69e8ab8eb6ba130bf8549bddf634396",
          "body": "Deploy from gator-command 5f91b04.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Warn about stale entry points on re-gatorize update",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:41:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "764889fe2fa5a96291002089e42dc5523406d6b1",
          "body": "Deploy from gator-command d8d0820.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fix Codex findings: exit codes, Python shebangs, blueprint refresh",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:37:56Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "c6a6225ffd3f3900d5b2187ef11ce427ee97354f",
          "body": "Deploy from gator-command b1f19ef.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "gatorize.py: all 5 scenarios including memex morph — fully bash-free",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:27:21Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "9a5e247ef2787094e726f14e3aa5929b2b9202cc",
          "body": "…t.py\n\nDeploy from gator-command 5f9152e.\n\n- gatorize.py: cross-platform installer\n- gator-update: writes Python-shebang hooks\n- memex-lint.py: cross-platform knowledge layer linter\n- No bash required for any standard user flow\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Complete bash-free Python stack: gatorize.py, Python hooks, memex-lin…",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:21:10Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "719a8595d0097689c6e0dcca2aff6dd672d9a219",
          "body": "Deploy from gator-command 4ccc3ab.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "gator-update: Python-shebang hooks, no bash dependency",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:15:31Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "499043fd476e435cc11f77a3db6e1f2e3859fea3",
          "body": "Deploy from gator-command 41255f4.\n\n- python gatorize.py works on Windows CMD, PowerShell, Git Bash, macOS, Linux\n- README Quick Start now uses python (not bash)\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "gatorize.py cross-platform installer + README update",
          "author_name": "Alan Gillette",
          "author_login": "ag997al",
          "committed_at": "2026-06-14T19:11:16Z",
          "body_truncated": false,
          "is_coding_agent": true
        }
      ],
      "releases_count": 2,
      "commits_last_year": 283,
      "latest_release_at": "2026-07-03T10:10:14Z",
      "latest_release_tag": "v1.8.10",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 10,
      "days_since_latest_release": 24,
      "mean_days_between_releases": 31.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 85,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": []
    },
    "popularity": {
      "forks": 0,
      "stars": 0,
      "watchers": 0,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_stars": 0,
        "collected_at": null
      },
      "open_issues_and_prs": 0
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 69425,
      "source_files_sampled": 76,
      "oversized_source_files": 2,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [],
      "advisories": {
        "error": null,
        "scope": null,
        "source": null,
        "findings": [],
        "collected": false,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 0,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [],
      "dependencies": [],
      "all_dependencies": {
        "error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
        "source": null,
        "packages": [],
        "collected": false,
        "truncated": false,
        "total_count": null,
        "direct_count": null,
        "indirect_count": null
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 1,
        "open_issues": 0,
        "closed_ratio": null,
        "closed_issues": 0,
        "closed_unmerged_prs": 0
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "ag997al",
          "commits": 282,
          "avatar_url": "https://avatars.githubusercontent.com/u/130197573?v=4"
        },
        {
          "type": "User",
          "login": "cumberland-laboratories",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/266200287?v=4"
        }
      ],
      "contributors_sampled": 2,
      "top_contributor_share": 0.993
    },
    "quality_signals": {
      "has_ci": false,
      "has_tests": true,
      "ci_workflows": [],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 0,
            "reason": "0 out of 1 merged PRs checked by a CI test -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/16 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": null,
            "reason": "no dependencies found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "ab58cad87d64f0235887b0926ac768a8b5ef99ff",
        "ran_at": "2026-07-28T02:54:02Z",
        "aggregate_score": 3.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": true,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": null,
      "oldest_open_prs": [],
      "last_merged_pr_at": "2026-06-28T19:57:07Z",
      "ci_last_conclusion": null,
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/cumberland-laboratories/gator",
    "host": "github.com",
    "name": "gator",
    "owner": "cumberland-laboratories"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "at_risk",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 46,
      "inputs": {
        "security": 32,
        "vitality": 77,
        "community": 33,
        "governance": 33,
        "engineering": 50
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 77,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "commits_last_year": 283,
              "human_commit_share": 1,
              "days_since_last_push": 0,
              "active_weeks_last_year": 10
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "10/52 weeks with commits",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "283 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 283
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 2,
              "latest_release_tag": "v1.8.10",
              "releases_from_tags": false,
              "days_since_latest_release": 24,
              "mean_days_between_releases": 31.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "2 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 24 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 24
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~31.9 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 31.9
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 33,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 0,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "0 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 70,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "at_risk",
        "name": "Sustainability & Governance",
        "value": 33,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 12,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 2,
              "top_contributor_share": 0.993
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 99% of commits",
                "points": 0.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 99
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "2 contributors",
                "points": 2.7,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Issue resolution. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "issue_resolution"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 72,
            "inputs": {
              "merged_prs": 1,
              "open_issues": 0,
              "closed_issues": 0,
              "issue_closed_ratio": null,
              "closed_unmerged_prs": 0
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "no issues or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_issues_or_data",
                    "params": {}
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1/1 decided PRs merged",
                "points": 38.2,
                "status": "met",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1,
                      "decided": 1
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/16 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "critical",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 18,
            "inputs": {
              "followers": 0,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "cumberland-laboratories",
              "public_repos": 2,
              "account_age_days": 143
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "0 followers of cumberland-laboratories",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 0,
                      "login": "cumberland-laboratories"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "2 public repos, account ~0 yr old",
                "points": 4.3,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 2
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "moderate",
        "name": "Engineering Quality",
        "value": 50,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "critical",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 24,
            "inputs": {
              "has_ci": false,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "0 out of 1 merged PRs checked by a CI test -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "agentic-ai",
                "ai-coding",
                "architecture",
                "code-review",
                "coding-assistant",
                "developer-tools",
                "documentation",
                "knowledge-layer",
                "llm",
                "repository-tools",
                "software-engineering",
                "navigation-coding"
              ],
              "has_wiki": false,
              "homepage": "https://github.com/cumberland-laboratories/gator",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://github.com/cumberland-laboratories/gator",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "12 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 32,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Pinned-Dependencies, Signed-Releases, Token-Permissions. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "dangerous_workflow",
                    "packaging",
                    "pinned_dependencies",
                    "signed_releases",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 32,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 13,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 5,
              "scorecard_aggregate": 3.2
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "0 out of 1 merged PRs checked by a CI test -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/16 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "at_risk",
        "name": "AI Readiness",
        "value": 41,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.81,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "81 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 81,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "at_risk",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Pinned-Dependencies. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_pinned_dependencies"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 36,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0.4,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "40 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 40,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 69425,
              "source_files_sampled": 76,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/76 source files over 60KB",
                "points": 53.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 76,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-28T02:54:11.443687Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/cumberland-laboratories/gator.svg",
  "full_name": "cumberland-laboratories/gator",
  "license_state": "standard",
  "license_spdx": "MIT"
}

评分是信号,而非担保。 评分反映的是 GitHub 上公开可见的实践——不是代码审计,也不是安全保证。

缺失数据将被剔除并重新归一化权重,绝不按零分计。方法论已版本化并公开:指标 v1.13.0、模式 v0.27.0—— 完整方法论 · 指标知识库.

单项结果在整体记录中的位置: 汇总统计.