Public record
Software health reportschema 0.27.0 · metrics 2.3.1 · 2026-07-30 20:59 UTC

tylerjrbuell / reactive-agents-ts

A composable framework for building reliable LLM agents on a harness you fully control. The same code runs the agentic loop on every model tier, local 4B to frontier with tool-call healing, verification, and durable crash-resume, on a typed 12-phase engine where every step emits an event you can hook into. Effect-TS, MCP-native, MIT

TypeScriptMIT★ 19 stars⑂ 4 forkssince Feb 2026View on GitHub ↗
KindLibraryFrameworkhow this is determined

tylerjrbuell/reactive-agents-ts holds a health index of 78 out of 100, placing it in the Good band. It scores highest on Vitality (87/100) and lowest on Sustainability & Governance (49/100). It was last updated 7 days ago. A single contributor accounts for most of its recent work.

78
overall / 100
Good

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean, calibrated against the distribution of the public record so bands carry percentile meaning; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At Risk ceiling of 34.

78
Exceptional93-100The record's top tier (≈ top 5%); essentially all checked criteria met
Excellent80-92Strong across the board; minor gaps
Good65-79Healthy; gaps are limited and manageable
Moderate50-64Acceptable with notable gaps; review recommended
Weak35-49Material weaknesses across several areas
At Risk20-34Significant weaknesses; adoption warrants caution
Critical1-19Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

The weighted overall 67 is calibrated to 78 on the published index scale (record calibration 2026-08-02).

Ownership

Tyler BuellPersonal account
3 followers12 public repossince Aug 2021@luduscom

This repository is owned by a personal account. A single-owner project carries more continuity risk than an organization-backed one.

Package ecosystems

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

87Excellent · 21% of overall
How it's scored
36/36Push recency — last push 7 days ago
14.5/36Commit cadence — 21/52 weeks with commits
18/18Commit volume — 3,410 commits in the last year
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
Inputs used
commits_last_year3,410
human_commit_share0.99
days_since_last_push7
active_weeks_last_year21

Release discipline

100Exceptional
How it's scored
27/27Ships releases — 35 releases published
36/36Release recency — latest release 8 days ago
27/27Release cadence — a release every ~8.6 days
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count35
latest_release_tagv0.14.0
releases_from_tagsno
days_since_latest_release8
mean_days_between_releases8.6
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

53Moderate · 17% of overall
How it's scored
20.4/60Stars — 19 stars
4/25Forks — 4 forks
0/15Watchers — 0 watchers
Inputs used
forks4
stars19
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (MIT)
18/18CONTRIBUTING guide
0/13.5Code of conduct
0/7.2Issue template
6.3/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
readme_badges
has_contributingyes
has_issue_templateno
has_code_of_conductno
readme_badge_services
has_pull_request_templateyes
How it's scored
53.9/80Monthly downloads — 11,005 downloads/month across npm
0/20Registry dependents — not reported by this ecosystem
Inputs used
packages@reactive-agents/cli, @reactive-agents/cortex, @reactive-agents/a2a, @reactive-agents/core, @reactive-agents/cost, @reactive-agents/eval, @reactive-agents/health, @reactive-agents/memory
dependents
ecosystemsnpm
total_downloads
monthly_downloads11,005
Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

49Weak · 23% of overall
How it's scored
9/54Bus factor — 1 contributor(s) cover half of all commits
0/22.5Commit distribution — top contributor authored 100% of commits
2.7/13.5Contributor breadth — 2 contributors
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Inputs used
bus_factor1
contributors_sampled2
top_contributor_share0.999
How it's scored
30.1/42Issue resolution — 72% of issues closed
20.4/30PR acceptance — 55/81 decided PRs merged
0/13Newcomer PR acceptance — no first-time contributor's PR decided in 30d
0/15OpenSSF Scorecard: Code-Review — Found 1/30 approved changesets -- score normalized to 0
Inputs used
merged_prs55
open_issues32
closed_issues81
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio0.717
closed_unmerged_prs26
first_time_authors_30d
first_time_prs_merged_30d
first_time_prs_decided_30d
Excluded from scoring (no data or not applicable): newcomer_pr_acceptance. Remaining weights renormalized.
How it's scored
10/30Ownership backing — personal (user) account
0/20Verified domain — not applicable to user accounts
4.3/25Owner reach — 3 followers of tylerjrbuell
17.9/25Track record — 12 public repos, account ~4 yr old
Inputs used
followers3
owner_typeUser
is_verified
owner_logintylerjrbuell
public_repos12
account_age_days1,795
Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.

Package maintenance

100Exceptional
How it's scored
25/25Published & resolvable — 8 package(s) on npm
35/35Publish recency — latest publish 8 days ago
20/20Version history — 42 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packages@reactive-agents/cli, @reactive-agents/cortex, @reactive-agents/a2a, @reactive-agents/core, @reactive-agents/cost, @reactive-agents/eval, @reactive-agents/health, @reactive-agents/memory
ecosystemsnpm
any_deprecatedno
min_days_since_publish8

Engineering Quality

Are baseline engineering and documentation practices in place?

86Excellent · 19% of overall
How it's scored
24/24CI workflows — 6 workflow(s)
24/24Tests present
16/16Linter config — eslint.config.mjs
0/9.6Pre-commit hooks
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 1 out of 1 merged PRs checked by a CI test -- score normalized to 10
Inputs used
has_ciyes
has_testsyes
has_editorconfigno
has_linter_configyes
has_precommit_configno

Documentation

90Excellent
How it's scored
30/30README
25/25Documentation directory
15/15Documentation / homepage site — https://docs.reactiveagents.dev
10/10Repository description
10/10Topics — 20 topics
0/10Wiki
Inputs used
topicsagent-framework, agent-observability, agent-orchestration, agentic-ai, anthropic, bun, composable, effect-ts, google-ai, llm, multi-agent, ollama, openai, type-safe, typescript, automation, ai-agents, gateway, mcp, streaming
has_wikino
homepagehttps://docs.reactiveagents.dev
has_readmeyes
has_docs_diryes
has_descriptionyes

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

55Moderate · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 1 out of 1 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 1/30 approved changesets -- score normalized to 0
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
5/5Fuzzing — project is fuzzed
2.5/2.5License — license file detected
7.5/7.5Maintained — 30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — no data
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
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 — no data
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 162 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate4.6
Excluded from scoring (no data or not applicable): packaging, signed_releases. Remaining weights renormalized.
How it's scored
35/35Direct dependencies free of known advisories — no direct dependency carries a known advisory
14.4/25Indirect dependencies free of known advisories — 1 affected: @opentelemetry/core 2.6.0 (moderate 5.3)
40/40No advisories left outstanding — no advisory has been public longer than 90 days
Inputs used
sourceosv
advisories1
affected_packages1
assessed_packages233
unassessed_packages0
affected_by_severitymoderate 1
direct_affected_packages0
Matched the npm:@reactive-agents/cli@0.14.0 runtime dependency closure — what installing the published package pulls in — 233 packages. Reachability is not analyzed.

AI Readiness

How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight (4%): agent tooling is a real maintenance signal, but a repository with none can still reach 100/100.

71Good · 4% of overall
How it's scored
45/45Agent instructions — .github/copilot-instructions.md, AGENTS.md, CLAUDE.md, apps/cortex/AGENTS.md
0/15Machine-readable docs (llms.txt)
40/40Legible commit history — 99 of 99 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share1
agent_instruction_files.github/copilot-instructions.md, AGENTS.md, CLAUDE.md, apps/cortex/AGENTS.md
agent_instruction_max_bytes65,593
How it's scored
0/18One-command bootstrap
22/22Automated tests
11/11Lint / format config — eslint.config.mjs
11/11Static type checking — apps/advocate/tsconfig.json, apps/cli/tsconfig.json, apps/cortex/tsconfig.json, apps/cortex/ui/tsconfig.json, apps/docs/tsconfig.json, apps/examples/tsconfig.json, apps/stackblitz/01-hello-agent/tsconfig.json, apps/stackblitz/02-tool-integration/tsconfig.json, apps/stackblitz/03-strategy-demo/tsconfig.json, docker/signal-mcp/server/tsconfig.json, packages/a2a/tsconfig.json, packages/benchmarks/tsconfig.json, packages/channels/tsconfig.json, packages/compose/tsconfig.json, packages/core/tsconfig.json, packages/cost/tsconfig.json, packages/create-reactive-agent/tsconfig.json, packages/diagnose/tsconfig.json, packages/eval/tsconfig.json, packages/gateway/tsconfig.json, packages/guardrails/tsconfig.json, packages/health/tsconfig.json, packages/identity/tsconfig.json, packages/interaction/tsconfig.json, packages/judge-server/tsconfig.json, packages/llm-provider/tsconfig.json, packages/memory/tsconfig.json, packages/observability/tsconfig.json, packages/observe/tsconfig.json, packages/prompts/tsconfig.json, packages/react/tsconfig.json, packages/reactive-agents/tsconfig.json, packages/reactive-intelligence/tsconfig.json, packages/reasoning/tsconfig.json, packages/replay/tsconfig.json, packages/runtime-shim/tsconfig.json, packages/runtime/tsconfig.json, packages/svelte/tsconfig.json, packages/testing/tsconfig.json, packages/tools/tsconfig.json, packages/trace/tsconfig.json, packages/ui-core/tsconfig.json, packages/verification/tsconfig.json, packages/vue/tsconfig.json, tsconfig.json
10/10Reproducible environment — devcontainer, Dockerfile
0/10Demonstrated agent practice — no agent-authored commits among the last 100
0/8Automated maintenance — no automated dependency updates observed
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfiles
has_dockerfileyes
typed_languageyes
bootstrap_files
has_devcontaineryes
has_linter_configyes
typecheck_configsapps/advocate/tsconfig.json, apps/cli/tsconfig.json, apps/cortex/tsconfig.json, apps/cortex/ui/tsconfig.json, apps/docs/tsconfig.json, apps/examples/tsconfig.json, apps/stackblitz/01-hello-agent/tsconfig.json, apps/stackblitz/02-tool-integration/tsconfig.json, apps/stackblitz/03-strategy-demo/tsconfig.json, docker/signal-mcp/server/tsconfig.json, packages/a2a/tsconfig.json, packages/benchmarks/tsconfig.json, packages/channels/tsconfig.json, packages/compose/tsconfig.json, packages/core/tsconfig.json, packages/cost/tsconfig.json, packages/create-reactive-agent/tsconfig.json, packages/diagnose/tsconfig.json, packages/eval/tsconfig.json, packages/gateway/tsconfig.json, packages/guardrails/tsconfig.json, packages/health/tsconfig.json, packages/identity/tsconfig.json, packages/interaction/tsconfig.json, packages/judge-server/tsconfig.json, packages/llm-provider/tsconfig.json, packages/memory/tsconfig.json, packages/observability/tsconfig.json, packages/observe/tsconfig.json, packages/prompts/tsconfig.json, packages/react/tsconfig.json, packages/reactive-agents/tsconfig.json, packages/reactive-intelligence/tsconfig.json, packages/reasoning/tsconfig.json, packages/replay/tsconfig.json, packages/runtime-shim/tsconfig.json, packages/runtime/tsconfig.json, packages/svelte/tsconfig.json, packages/testing/tsconfig.json, packages/tools/tsconfig.json, packages/trace/tsconfig.json, packages/ui-core/tsconfig.json, packages/verification/tsconfig.json, packages/vue/tsconfig.json, tsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
How it's scored
45/45Type-checkable code — TypeScript (statically typed)
54.7/55Manageable file sizes — 11/2,346 source files over 60KB
Inputs used
primary_languageTypeScript
largest_source_bytes117,970
source_files_sampled2,346
oversized_source_files11
How it's scored
0/40API schema (OpenAPI/GraphQL/proto)
20/20MCP server
40/40Runnable examples — cookbook, demos, examples
Inputs used
example_dirscookbook, demos, examples
has_mcp_signalyes
api_schema_files

Key facts

19GitHub stars
2contributors
3,410commits, last 12 months
7days since last push
35releases
1bus factor
32open issues
npmpackage ecosystems

Data collection warnings

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

More detail

Star and fork history 0 ★ / 4 ⇿
0Stars
4Forks
17Releases

When each star and fork was added, collected from GitHub and bucketed by day. Cumulative growth sits directly above the daily additions it is made of, so the two read against each other: steady organic accretion looks nothing like an abrupt, short-lived burst. Where that difference is measurable, it is reported as growth authenticity.

1223344412026-032026-052026-07
Major 0Minor 6Patch 11
OpenSSF Scorecard 4.6 / 10
4.6aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-30 20:59 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests1 out of 1 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 1/30 approved changesets -- score normalized to 0
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
10Fuzzingproject is fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
n/aPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
10Security-Policysecurity policy file detected
n/aSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities162 existing vulnerabilities detected
Direct dependencies 75
RegistryPackageVersion constraintManifest
npmreactive-agentsworkspace:*apps/advocate/package.json
npm@reactive-agents/composeworkspace:*apps/advocate/package.json
npm@reactive-agents/healthworkspace:*apps/advocate/package.json
npmeffect^3.10.0apps/advocate/package.json
npmeffect^3.10.0apps/cli/package.json
npm@reactive-agents/coreworkspace:*apps/cli/package.json
npm@reactive-agents/runtimeworkspace:*apps/cli/package.json
npm@reactive-agents/runtime-shimworkspace:*apps/cli/package.json
npm@reactive-agents/evalworkspace:*apps/cli/package.json
npm@reactive-agents/llm-providerworkspace:*apps/cli/package.json
npm@reactive-agents/a2aworkspace:*apps/cli/package.json
npm@reactive-agents/traceworkspace:*apps/cli/package.json
npm@reactive-agents/toolsworkspace:*apps/cli/package.json
npm@reactive-agents/memoryworkspace:*apps/cli/package.json
npm@reactive-agents/diagnoseworkspace:*apps/cli/package.json
npmchalk^5.4.0apps/cli/package.json
npmora^8.2.0apps/cli/package.json
npmboxen^8.0.1apps/cli/package.json
npmelysia^1.1.0apps/cortex/package.json
npmeffect^3.10.0apps/cortex/package.json
npm@reactive-agents/coreworkspace:*apps/cortex/package.json
npm@reactive-agents/memoryworkspace:*apps/cortex/package.json
npm@reactive-agents/runtimeworkspace:*apps/cortex/package.json
npm@reactive-agents/observabilityworkspace:*apps/cortex/package.json
npm@reactive-agents/gatewayworkspace:*apps/cortex/package.json
npm@reactive-agents/llm-providerworkspace:*apps/cortex/package.json
npm@reactive-agents/toolsworkspace:*apps/cortex/package.json
npm@reactive-agents/reactive-intelligenceworkspace:*apps/cortex/package.json
npm@reactive-agents/coreworkspace:*packages/a2a/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/a2a/package.json
npm@reactive-agents/coreworkspace:*packages/channels/package.json
npm@reactive-agents/gatewayworkspace:*packages/channels/package.json
npmeffect^3.10.0packages/channels/package.json
npm@reactive-agents/coreworkspace:*packages/compose/package.json
npmeffect^3.10.0packages/core/package.json
npmulid^2.3.0packages/core/package.json
npm@reactive-agents/coreworkspace:*packages/cost/package.json
npm@reactive-agents/llm-providerworkspace:*packages/cost/package.json
npm@reactive-agents/memoryworkspace:*packages/cost/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/cost/package.json
npm@reactive-agents/traceworkspace:*packages/diagnose/package.json
npm@reactive-agents/replayworkspace:*packages/diagnose/package.json
npm@reactive-agents/coreworkspace:*packages/eval/package.json
npm@reactive-agents/llm-providerworkspace:*packages/eval/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/eval/package.json
npm@reactive-agents/coreworkspace:*packages/gateway/package.json
npm@reactive-agents/coreworkspace:*packages/guardrails/package.json
npm@reactive-agents/llm-providerworkspace:*packages/guardrails/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/health/package.json
npm@reactive-agents/coreworkspace:*packages/identity/package.json
npm@noble/ed25519^2.0.0packages/identity/package.json
npm@reactive-agents/coreworkspace:*packages/interaction/package.json
npm@reactive-agents/reasoningworkspace:*packages/interaction/package.json
npm@reactive-agents/observabilityworkspace:*packages/interaction/package.json
npmulid^2.3.0packages/interaction/package.json
npm@reactive-agents/coreworkspace:*packages/judge-server/package.json
npm@reactive-agents/evalworkspace:*packages/judge-server/package.json
npm@reactive-agents/llm-providerworkspace:*packages/judge-server/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/judge-server/package.json
npmeffect*packages/judge-server/package.json
npm@reactive-agents/coreworkspace:*packages/llm-provider/package.json
npm@reactive-agents/memoryworkspace:*packages/llm-provider/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/llm-provider/package.json
npm@reactive-agents/coreworkspace:*packages/memory/package.json
npm@reactive-agents/runtime-shimworkspace:*packages/memory/package.json
npm@opentelemetry/api^1.9.0packages/observability/package.json
npm@opentelemetry/exporter-metrics-otlp-http^0.213.0packages/observability/package.json
npm@opentelemetry/exporter-trace-otlp-http^0.213.0packages/observability/package.json
npm@opentelemetry/resources^2.6.0packages/observability/package.json
npm@opentelemetry/sdk-metrics^2.6.0packages/observability/package.json
npm@opentelemetry/sdk-trace-base^2.6.0packages/observability/package.json
npm@opentelemetry/semantic-conventions^1.40.0packages/observability/package.json
npm@reactive-agents/coreworkspace:*packages/observability/package.json
npmchalk^5.4.0packages/observability/package.json
npmboxen^8.0.1packages/observability/package.json
All dependencies not collected

The resolved dependency set could not be collected for this report: GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

Dependency advisories 1

Installing npm:@reactive-agents/cli@0.14.0 pulls in 233 packages, direct and transitive: 1 carry known advisories, of which 0 are direct dependencies.

PackageVersionRelationSeverityAdvisoriesFixed in
@opentelemetry/core2.6.0indirectmoderate12.8.0

An advisory means the version recorded in the dependency graph falls inside an advisory’s affected range. Reachability is not analysed, and the graph includes development and test pins — a finding may concern tooling rather than shipped software.

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [
        "agent-framework",
        "agent-observability",
        "agent-orchestration",
        "agentic-ai",
        "anthropic",
        "bun",
        "composable",
        "effect-ts",
        "google-ai",
        "llm",
        "multi-agent",
        "ollama",
        "openai",
        "type-safe",
        "typescript",
        "automation",
        "ai-agents",
        "gateway",
        "mcp",
        "streaming"
      ],
      "is_fork": false,
      "size_kb": 32391,
      "has_wiki": false,
      "homepage": "https://docs.reactiveagents.dev",
      "languages": {
        "CSS": 85033,
        "MDX": 300190,
        "HTML": 239882,
        "Astro": 95564,
        "Shell": 53153,
        "Svelte": 725566,
        "Dockerfile": 6554,
        "JavaScript": 68067,
        "TypeScript": 13890804
      },
      "pushed_at": "2026-07-22T22:06:34Z",
      "created_at": "2026-02-19T14:01:27Z",
      "owner_type": "User",
      "updated_at": "2026-07-23T16:57:32Z",
      "description": "A composable framework for building reliable LLM agents on a harness you fully control. The same code runs the agentic loop on every model tier, local 4B to frontier with tool-call healing, verification, and durable crash-resume, on a typed 12-phase engine where every step emits an event you can hook into. Effect-TS, MCP-native, MIT",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Tyler Buell",
      "type": "User",
      "login": "tylerjrbuell",
      "company": "@luduscom",
      "location": "Kalamazoo, MI",
      "followers": 3,
      "avatar_url": "https://avatars.githubusercontent.com/u/89788783?v=4",
      "created_at": "2021-08-30T13:46:59Z",
      "is_verified": null,
      "public_repos": 12,
      "account_age_days": 1795
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2026-07-22T00:47:00Z"
        },
        {
          "tag": "v0.13.6",
          "kind": "patch",
          "published_at": "2026-07-06T12:58:07Z"
        },
        {
          "tag": "v0.13.5",
          "kind": "patch",
          "published_at": "2026-07-06T02:11:25Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2026-07-02T04:13:11Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2026-06-17T02:41:00Z"
        },
        {
          "tag": "v0.11.2",
          "kind": "patch",
          "published_at": "2026-06-11T00:10:54Z"
        },
        {
          "tag": "v0.11.1",
          "kind": "patch",
          "published_at": "2026-05-17T14:44:09Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-05-17T03:31:03Z"
        },
        {
          "tag": "v0.10.6",
          "kind": "patch",
          "published_at": "2026-05-06T01:23:56Z"
        },
        {
          "tag": "v0.10.4",
          "kind": "patch",
          "published_at": "2026-05-06T00:17:27Z"
        },
        {
          "tag": "v0.10.2",
          "kind": "patch",
          "published_at": "2026-05-05T03:31:10Z"
        },
        {
          "tag": "v0.10.1",
          "kind": "patch",
          "published_at": "2026-05-05T03:07:49Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2026-05-05T02:44:29Z"
        },
        {
          "tag": "v0.9.0",
          "kind": "minor",
          "published_at": "2026-03-29T03:01:32Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2026-03-15T23:06:36Z"
        },
        {
          "tag": "v0.7.8",
          "kind": "patch",
          "published_at": "2026-03-12T14:59:15Z"
        },
        {
          "tag": "v0.7.6",
          "kind": "patch",
          "published_at": "2026-03-12T14:14:40Z"
        },
        {
          "tag": "v0.7.5",
          "kind": "patch",
          "published_at": "2026-03-12T02:39:33Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2026-03-10T18:42:13Z"
        },
        {
          "tag": "v0.6.3",
          "kind": "patch",
          "published_at": "2026-03-05T16:06:54Z"
        },
        {
          "tag": "v0.6.2",
          "kind": "patch",
          "published_at": "2026-03-05T15:13:47Z"
        },
        {
          "tag": "v0.6.1",
          "kind": "patch",
          "published_at": "2026-03-05T14:13:56Z"
        },
        {
          "tag": "v0.6.0",
          "kind": "minor",
          "published_at": "2026-03-05T04:05:26Z"
        },
        {
          "tag": "v0.5.6",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:56Z"
        },
        {
          "tag": "v0.5.5",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:55Z"
        },
        {
          "tag": "v0.5.4",
          "kind": "patch",
          "published_at": "2026-03-05T00:38:48Z"
        },
        {
          "tag": "v0.5.3",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:53Z"
        },
        {
          "tag": "v0.5.2",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:52Z"
        },
        {
          "tag": "v0.5.0",
          "kind": "minor",
          "published_at": "2026-03-05T00:33:51Z"
        },
        {
          "tag": "v0.4.0",
          "kind": "minor",
          "published_at": "2026-03-05T00:33:50Z"
        },
        {
          "tag": "v0.3.1",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:49Z"
        },
        {
          "tag": "v0.3.0",
          "kind": "minor",
          "published_at": "2026-03-05T00:33:48Z"
        },
        {
          "tag": "v0.2.1",
          "kind": "patch",
          "published_at": "2026-03-05T00:33:47Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2026-03-05T00:33:46Z"
        },
        {
          "tag": "v0.1.0",
          "kind": "minor",
          "published_at": "2026-03-05T00:33:45Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "45cbacdb3acf81c05c706b2cefa5f732b1584175",
          "body": null,
          "is_bot": false,
          "headline": "test(replay): return replayed steps through harness handle (#197)",
          "author_name": "ZentropyLabs.ai",
          "author_login": "HarperZ9",
          "committed_at": "2026-07-22T22:06:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc051cf91b5d7ce5e57d2e83cedd2bfbdd816f9c",
          "body": "…-arena pass\n\nThe workflow (Probe→Diagnose→Hypothesize→Fix→Verify→Commit) and the core\ncommands (rax:diagnose, weakness-queue, apps/cli bench, rax eval\ngate/ledger) are all still current. Fixed five concrete staleness/gap items\nfound while actually running the loop:\n\n- Phase 5 'rebuild every package\n[…]\ntructured file → parse error, trust=claimed-but-wrong).\n- Calibrated-model set corrected: gemma4:* is NOT in STATIC_CAPABILITIES\n  (using it as an SUT yields 0 cells); listed the verified current set.",
          "is_bot": false,
          "headline": "docs(skill): update harness-improvement-loop from the 2026-07-22 eval…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T01:56:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c3d2ad98f547fa20377c1d9f62a7bae3324b1c37",
          "body": "…fence-unwrap fix)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — eval-arena harness hardening (file-write …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T01:48:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ce838abba5795bcf6ebca18923721b4344a971e",
          "body": "…erables\n\nCross-tier probe (haiku, rw-1, 2026-07-22) surfaced a real production\ndefect: asked to write databases.json, the model wrote the JSON wrapped\nin a ```json … ``` fence (a near-universal LLM habit). file-write stored\nit verbatim, so the .json deliverable failed to parse ('Unrecognized\ntoken \n[…]\nl wrote.\n\nRed-on-cut: 6 cases (lone json/csv unwrap, preamble extract, clean-file\nuntouched, .md untouched, non-parseable-kept); cutting the normalizer\nflips the 3 unwrap cases red. tools suite 934/0.",
          "is_bot": false,
          "headline": "fix(tools): unwrap markdown fences when writing structured-data deliv…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T01:47:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5e0dfdebf6ab94c826790e11c638133c5d3f440b",
          "body": null,
          "is_bot": false,
          "headline": "docs: update badge version to v0.14 in Astro config",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T01:32:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "66dc6857a84e4099622123254e344ba5bd7735ee",
          "body": "Verified each remaining 'deferred debt' item against code (the register's\nrecurring over-count problem — Nth instance):\n\n- success+empty-output edge: RESOLVED, not open. The completed⟹non-empty\n  invariant is enforced at the SHARED boundary (sense/step-utils.ts:84\n  forces empty→failed, HS-106/M7); \n[…]\nays honest at 2 and still catches new sites.\n\nNo code changed — the honest finding is these items are stale/closed or\nlow-value ceremony, so forcing them would add indirection or theater, not\nquality.",
          "is_bot": false,
          "headline": "docs(debt): register truth-pass on the deferred harness-hardening items",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T01:19:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f947aa33a2e245471f93c8671142911baa6efb02",
          "body": "…echeck-gap fix + lesson",
          "is_bot": false,
          "headline": "docs(agents): memory sync — v0.14.0 RELEASED (npm live) + release-typ…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T00:48:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5f0ade4189fd67042a438d7f32d2e14d582d7cec",
          "body": null,
          "is_bot": true,
          "headline": "chore(release): sync VERSION/CHANGELOG/changesets → 0.14.0 [skip ci]",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-22T00:46:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4cb2da3e78731e8e08bc23dcdce9e2ee9d42e025",
          "body": "…ocker)\n\nThe v0.14.0 tag's publish workflow failed at its Typecheck step — the\nrelease runs strict per-package `tsc --noEmit` (`bun run typecheck`),\nwhich the PR CI never did (its Typecheck job runs only `bun run build`,\nthe lenient tsup DTS emit). So 5 type errors rode green through PR CI and\nfirst\n[…]\nd — same strict check the release gates on — so this class fails a PR\ninstead of a tag. Verified: fresh `turbo run build --force` then\n`turbo run typecheck --force` = 67/67 tasks green; suite 8,294/0.",
          "is_bot": false,
          "headline": "fix(ci): close strict-typecheck rot + gate it on every PR (release bl…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T00:34:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "947b32e61b4c66cb02d700d67a476492edd8634e",
          "body": "… CI daemon)\n\nThe all-providers test built createAgent({ provider: 'ollama' }), whose\nbuild runs a live-server pre-flight (validateProviderConnection →\nlocalhost:11434, builder.ts:2325). CI has no Ollama daemon, so build()\nthrew 'Cannot connect to Ollama' and the test failed — it passed locally\nonly\n[…]\ne for a\n  provider-union claim.\n\nRed-on-cut reverified: re-inlining the 6-member union fails both the\ndecode and build assertions. Suite 8,294/0 (net +1 from the split);\nmetrics cache + README synced.",
          "is_bot": false,
          "headline": "fix(ci): createAgent provider test must not build an Ollama agent (no…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-22T00:09:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6d634d76d725de35c65089177039a50c4cf7b21d",
          "body": "…staged, dry-run green)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — v0.14.0 release prep complete (changeset …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T23:52:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41306cf6c8fc6933fd5deb78ffce695f129c1ca4",
          "body": "…] notes\n\nrelease.ts always prepends a generated '## [<version>] — <date>' header and\naggregates .changeset/*.md bodies into it; with no changeset it writes\n'_No notable changes._'. The v0.14 notes were hand-curated under a\n'## [Unreleased]' heading, which the generator does not consume — so a tag\nt\n[…]\nprose) and drop the [Unreleased]\nsection from CHANGELOG.md. At tag time release.ts now renders a correct\n'## [0.14.0]' section and consumes the changeset. No hand-edited release\nnotes in CHANGELOG.md.",
          "is_bot": false,
          "headline": "chore(release): stage v0.14.0 changeset — migrate curated [Unreleased…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T23:49:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fbb6808bc93b9ff1ab6884ad2d2488ad953dc49a",
          "body": "…lmCalls, dead test acceptance keys)\n\nturbo run typecheck (not in the CI gate — CI typechecks via the tsup DTS\nbuild) surfaced 4 pre-existing errors, one in a SOURCE file:\n\n- ReActKernelResult was missing the llmCalls field that react-kernel.ts:271\n  actually emits (state.llmCalls ?? 0) and plan-exe\n[…]\nableSpec field\n  removed in the Wave 3 delete pass — dropped the 3 dead keys (the live\n  RequirementSpec.acceptance on spec:{} is untouched).\n\nFull workspace typecheck now 0 errors; build 37/37 green.",
          "is_bot": false,
          "headline": "fix(reasoning): close pre-existing typecheck rot (ReActKernelResult.l…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T23:47:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1c52477ede1ef5495c7a4b03f6e6b179454fdb59",
          "body": "…work superseded\n\nPrune pass verified index claims against code:\n- _enableMemory line ref 113→147, withLeanHarness 227→1355 (facts true,\n  line numbers drifted) — fixed in the personal index.\n- Current Status header refreshed 0.13.6/226-ahead/OVERDUE → v0.14\n  release-ready + pushed.\n- The 2026-07-1\n[…]\nen closed work; kept the 226-commit process analysis + doctrine.\nConfirmed still-true (no change): kernel capabilities/loop layout,\nwithOutputSchema/streamObject/withApprovalPolicy live, 8 strategies.",
          "is_bot": false,
          "headline": "docs(agents): prune-memory — mark 2026-07-12 state-of-framework open-…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T23:13:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e3ff2e8a797e5ecfa0e931daac9a179ab28ed375",
          "body": "…ixes + doc/scaffolder repair)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — v0.14 first-timer quality sweep (4 code f…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T22:25:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d88ec81fe1b0f4c617fd17bbb9bb037426b7ddf3",
          "body": "…uality-sweep tests",
          "is_bot": false,
          "headline": "chore(metrics): refresh snapshot to 8,293 tests / 1,061 files after q…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T22:24:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a132a7aaae1bb93128e1373b5380f1f2447d892f",
          "body": "… v0.14\n\nAudit of bunx create-reactive-agent + rax init/create found the emitted\nprojects broken in ways a first-time user hits immediately. Fixed and\nverified (4 templates generated + typechecked against v0.14 worktree types):\n\n- BLOCKER: version pin ^0.11.0 resolved to 0.11.2, which lacks\n  withOu\n[…]\nproject-local path' claim contradicted runtime-construction.ts:449).\n\nScaffolder + cli suites green (140 pass); minimal/streaming/\nstructured-output/with-memory scaffolds typecheck clean against 0.14.",
          "is_bot": false,
          "headline": "fix(scaffold): first-touch scaffolder templates current + correct for…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T22:21:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5ad31ba78bb7a70a8a4c2865d8a8d283e7dbf592",
          "body": "…ath, funnel order\n\n14-finding onboarding audit applied to the Get Started trail (all\nverified against code):\n\n- BLOCKER: quickstart's first command 'bunx rax init' resolves to\n  Alibaba's unrelated rax package in a fresh directory — now\n  'bunx reactive-agents init' (our package ships both bin alia\n[…]\nachine, all\n  opt-outs incl. the new DO_NOT_TRACK / REACTIVE_AGENTS_TELEMETRY env\n  switches) + sidebar entry.\n\ndocs:examples:check 355/0; SKIP_CEILING ratcheted 250 → 249 (one more\nblock un-skipped).",
          "is_bot": false,
          "headline": "docs: first-timer onboarding fixes — broken first command, zero-key p…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T18:26:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3fc986a813a7747fec04d5d0ef9e503a31398213",
          "body": "…, counts reconciled\n\n15-finding first-time-user audit applied (all verified against code):\n\n- API-key setup now sits directly above the first runnable example (was\n  750 lines later, unlinked) + Environment Variables table completed for\n  all 8 providers (GROQ/XAI/LITELLM/OLLAMA vars were undocumen\n[…]\n- Three jargon-wall bullets rewritten outcome-first (entropy sensor,\n  adaptive harness — still clearly experimental/opt-in, evidence ledger).\n\nGates: docs:examples:check 352/0; metrics:check in sync.",
          "is_bot": false,
          "headline": "docs(readme): first-timer audit fixes — key setup, complete env table…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T18:25:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "464e1e74425027b1b419cec2824569507868b577",
          "body": "… env opt-out\n\nRI telemetry could only be disabled in code\n(.withReactiveIntelligence({ telemetry: false })). Industry convention\nand CI environments expect an environment-level kill switch:\n\n- telemetryOptedOut(): DO_NOT_TRACK set-and-not-'0' (console DNT\n  convention) or REACTIVE_AGENTS_TELEMETRY=\n[…]\nes (first-run notice + report emit), so the notice never\n  claims telemetry the environment has killed.\n- Red-on-cut suite: opted-out sends make zero sink attempts; control pins\n  the default-on path.",
          "is_bot": false,
          "headline": "feat(reactive-intelligence): DO_NOT_TRACK / REACTIVE_AGENTS_TELEMETRY…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T18:25:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "564fce3e3a8cc76a3318520f20242c3ca23a599e",
          "body": "A first run with no API key surfaced the raw SDK text ('Could not resolve\nauthentication method. Expected either apiKey or authToken to be set.')\n— which never names ANTHROPIC_API_KEY, leaving a new user to search for\nthe variable. mapProviderError now maps 401/403/credential-phrased\nfailures to one\n[…]\nlus the provider's\noriginal reason. Keyless providers (ollama) and bring-your-own-layer\nproviders never get an invented env var. Auth errors stay permanent\n(never retried). TDD: 5 new cases red first.",
          "is_bot": false,
          "headline": "fix(llm-provider): credential failures name the env var to set",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T18:25:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "86bf665444cf6b8136a5a3c886b75edc40f925d1",
          "body": "…n from the canonical source\n\nThe declarative front door (the README quickstart API) rejected two of the\neight shipped providers: agent-config.ts carried a stale 6-member inline\ncopy of the provider union, so createAgent({ provider: 'groq' }) failed\nschema decode while the fluent builder accepted it\n[…]\ns, collapses union mismatches to one\n  expected-one-of line, and links the public docs reference instead of a\n  repo-relative path.\n- Generated config-field-reference block regenerated (provider row).",
          "is_bot": false,
          "headline": "fix(runtime): createAgent accepts groq/xai — derive the provider unio…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T18:25:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2dc278020efb282703dcdd830d4f1258a534bcda",
          "body": ".agents/MEMORY.md: doc-sync entry (all surfaces truthful for 0.14; verified\nfact sheet + 3 parallel writers; orchestration dir = untracked build residue;\nadapter hooks = 4 live + parseToolCalls). Personal Claude memory index\ncompacted 20.5KB→16.8KB in parallel (burndown detail collapsed to a pointer;\ntopic file holds the waves).",
          "is_bot": false,
          "headline": "docs(agents): memory sync — v0.14 full doc sync complete",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:34:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6379e94a3d14274648681f68aeaab8925bf30a50",
          "body": "Full doc sweep for the v0.14 release across every user-facing surface,\nevery claim verified against code (three parallel sweeps + spot checks).\n\nwhats-new.mdx: new v0.14 section — trust receipt (result.receipt),\nprocess model (inspect/fork/rax ps/attach), enforcement-caught-up-to-docs\n(tool policy o\n[…]\n to v0.14 release-ready state.\n\nVerified: docs:examples:check 352/0, metrics:check in sync. No published\nbenchmark numbers introduced; opt-in harness flags kept out of the\nrecommended/default framing.",
          "is_bot": false,
          "headline": "docs: sync all documentation to v0.14.0",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:32:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8158c757d33564340d4bbb53d52e628c5112d751",
          "body": "…ischarged, P0-21 drift-skips gone\n\n- P0-4/B1: code-action residual CLOSED (d22e784f) — sandbox handlers gate\n  through the shared evaluateToolPolicy; red-on-cut.\n- P0-21: all 6 drift-hiding skips discharged; SKIP_CEILING 283→250;\n  corrected the register's own over-count (session persist/id are real +\n  test-pinned; the true rot was context key / table name / end()\n  semantics / dead persistOnEnd).\n- .agents/MEMORY.md: release-readiness entry (gates green, owner-gated\n  tag remains).",
          "is_bot": false,
          "headline": "docs(debt): register + memory — release-readiness sweep; P0-4 fully d…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:06:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11c1e99980402cd709524eb0ad89706595525ca4",
          "body": "…ate.test.ts, solution.ts)\n\nLive bench agents wrote deliverables to the worktree root during the\n2026-07-21 cross-tier campaign; a git add -A swept them into the metrics\ncommit. Neither is repo code.",
          "is_bot": false,
          "headline": "chore: remove stray bench-run artifacts committed by accident (parseD…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:04:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c5c2530b8543f392b85f6594cc4b73a2dd0458c",
          "body": "…grand-total sync pattern\n\nThe metrics cache still pinned the 2026-07-19 count (8,253/1045); the\nresilience fixes, policy-gate suite, and doc-example un-skips moved it to\n8,276 tests across 1,060 files (0 fail). Also removed the sync script's\n'grand-total header' pattern — its README target line was deleted in the\nWave 1 claims takedown, so it warned on every run against nothing.",
          "is_bot": false,
          "headline": "chore(metrics): refresh test snapshot to 8,276/1060 + drop the stale …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:04:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae5825cf67ec45628e46e7816abb79803ce374ea",
          "body": "…lBuilder flow\n\nRegister P0-21's six drift-hiding skips, discharged with the docs now\nmatching verified code (positive scratch snippets compile under strict\ntsc; negative reproductions confirmed each fabrication before the fix):\n\n- agent.session(): the register's own claim ('persist/id fabricated') \n[…]\nied at\n  registration; defineTool for typed handlers).\n\ndocs:examples:check: 348 blocks, 0 failed; 6 previously-skipped broken\nblocks now compile and are un-skipped — SKIP_CEILING ratcheted 256 → 250.",
          "is_bot": false,
          "headline": "docs: fix fabricated API options — session(), withContextProfile, Too…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T17:00:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "848f5aed9a12f7fc62514d10235228f781d0de51",
          "body": "26 verified live-drift sites across 13 files still taught APIs removed in\nv0.14 (register P0-21 residue). A visitor following these docs on day one\nof the release would hit compile errors or silently-missing tools.\n\n- .withTelemetry / .withoutTracing → folded into .withObservability\n  ({ telemetry, \n[…]\neractionManager); runs green (exit 0);\n  interaction READMEs updated to match.\n\nVerification: docs:examples:check 342/342 blocks typecheck; zero\nremaining live-drift mentions across all touched files.",
          "is_bot": false,
          "headline": "docs: purge drift — remove v0.14-removed APIs from live documentation",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T16:50:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c19d20ebe4d3cdba05ebae5842b569b561cfdec6",
          "body": "…fix + policy-gate test files",
          "is_bot": false,
          "headline": "fix(ci): re-sync README test-file count (1057→1060) after resilience-…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T16:47:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f870e5394ce64152bd6dd1f3404dc854491b7409",
          "body": "…enforcement, run integrity\n\nThe Wave-1 rewrite predated the spine (Wave 2), the delete wave (Wave 3),\nand the resilience fixes; the section was missing three breaking removals\n(orchestration + scenarios packages, .withCacheTimeout) and every\nuser-visible behavior change since (tool-policy enforceme\n[…]\nhase stream events, requirement lifecycle, kernel-path memory extraction,\ntransient-error retry, critique graceful degrade). A v0.14 cut without\nthese entries would ship breaking changes undocumented.",
          "is_bot": false,
          "headline": "docs(changelog): cover Waves 2-5 in [Unreleased] — package removals, …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T16:45:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d22e784fa4e23ac112930189b503b7a313bb9397",
          "body": "…P0-4 residual)\n\ncode-action executes tools inside the sandbox Worker via bridged handler\nclosures, not through the kernel act phase — so the Wave 2 B1 boundary\n(evaluateToolPolicy inside executeToolAndObserve) never covered it. The\nclosures called toolSvc.execute() with zero policy checks: LLM-gene\n[…]\nen, contract-seeded, whitelist); controls pin unchanged\n  behavior with no policy.\n- Fixed the stale plan-execute.ts header comment still describing the\n  pre-B1 direct toolService.execute() dispatch.",
          "is_bot": false,
          "headline": "fix(reasoning): enforce tool policy on code-action sandbox handlers (…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T16:43:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2099aa077987cd9562e9a857a2fb8267b51a9d8d",
          "body": "…ce fixes",
          "is_bot": false,
          "headline": "docs(agents): memory sync — cross-tier diagnosis + 2 harness resilien…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T13:50:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a26b21266990585de158e8ae2dc885272c9ce56",
          "body": "Root cause (Wave 5 cross-tier diagnosis): mapProviderError routed status 429 to\nLLMRateLimitError (which retry.ts retries) but let EVERY other failure —\nincluding 5xx, Anthropic/Groq 529 overloaded, and network faults (ECONNRESET,\nsocket hang up, fetch failed) — fall through to the catch-all LLMErro\n[…]\nest.ts asserts 5xx/529/network → retryable\nand 4xx → not (red before, green after). Updated the JSON-dedup test to use 400\n(the 5xx it used is now transient). Build green; 382 llm-provider tests pass.",
          "is_bot": false,
          "headline": "fix(llm-provider): retry transient 5xx/529/network errors, not just 429",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T13:47:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "761115898ef450ba33bb604fcfd58c0bb6759174",
          "body": "…ing the run\n\nRoot cause (Wave 5 cross-tier diagnosis): runCritiquePass mapped ANY LLM error\nto a strategy-attributed ExecutionError that propagated fatally, so a single\ntransient provider blip (429 / 5xx overload / timeout) during the critique pass\nzeroed a reflexion or plan-execute run that had AL\n[…]\nicitly left\nuntested — 'defer to integration') asserting the Effect RESOLVES with a degraded\nresult rather than rejecting. Red before, green after. Build green; 871\nstrategy+verify tests pass, 0 fail.",
          "is_bot": false,
          "headline": "fix(reasoning): critique pass degrades on LLM failure instead of kill…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T13:41:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a8e51043faa890c45c7258bc9d59801ba0429fcf",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 5 entry gate (bench P2) conversion done",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T00:50:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "917bdef023aed5196381beef6de88d75f67c995d",
          "body": "…d, re-baseline owed",
          "is_bot": false,
          "headline": "docs(debt): register — Wave 5 P2 conversion done, sd framing correcte…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T00:49:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "86a8ef9a3b0b1833e9ca5f027362f0fd03906cc0",
          "body": "The 2026-07-10 plan's '7 llm-judge tasks' was already down to 2 (rw-1..rw-9 were\nconverted in the 2026-07-11 keyword->graded wave). This finishes the entry gate:\n\n- rw-5 (zero-downtime migration): converted llm-judge -> deterministic\n  partial-credit 'verifiable'. The prompt now pins the deliverable\n[…]\n  passThreshold; no solvedThreshold (a judge verdict is deliberately never a\n  pass^k solve).\n\n1 llm-judge success criterion remains (rw-10, graded, by design). Build green;\n398 benchmarks tests pass.",
          "is_bot": false,
          "headline": "test(bench): Wave 5 P2 — deterministic-grade the last 2 llm-judge tasks",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-21T00:48:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "96edce39428e784a0ee0cb0db40f7c02bde7aef9",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 4 complete (derive-from-impl gates)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T22:12:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c0935f61fccdeecb994d1ea04a219ee895c65398",
          "body": null,
          "is_bot": false,
          "headline": "docs(debt): register — Wave 4 derive-from-impl gates shipped",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T22:11:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3702fb853164ac927e07940c10ffbe40fa6e88c0",
          "body": "…nds (Wave 4)\n\nThe derived LedgerEntryKind kills kind<->interface drift at compile time. This\nguard catches the residue types cannot: a kind interface that EXISTS but that\nnothing ever appends — an always-empty projection that reads as a silent lie.\n\nEvery declared ledger kind must have >=1 non-test\n[…]\ns at a throwaway tree: green on the real tree,\nred when a fixture kind loses its writer, red when a baselined kind gains one.\n\nenforcement-scripts.test.ts 10 pass; the guard is green on the real tree.",
          "is_bot": false,
          "headline": "feat(gate): check-orphans.sh — declaration-orphan guard for ledger ki…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T22:09:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "59861c8da70db942a14adaee45fcdfbb2806a299",
          "body": "LedgerEntryKind was a hand-maintained union of 9 string literals kept in sync\nby hand with the LedgerEntry interface union — the exact drift class Wave 4\nretires. Derive it: 'type LedgerEntryKind = LedgerEntry[\"kind\"]'. A kind\nliteral no entry interface declares is now impossible, and a new entry\nin\n[…]\ndant 'kind'\nfield from LedgerEntryBase so the derivation is non-circular (every concrete\nentry already declares its own literal kind).\n\nBuild green (DTS typecheck authoritative); 45 ledger tests pass.",
          "is_bot": false,
          "headline": "refactor(ledger): derive LedgerEntryKind from the entry union (Wave 4)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T22:05:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "12a11d95c467d3ba3447986c6be0fcaeb962b393",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 3 COMPLETE (remainder shipped)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:57:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9595f7260f5e012218983afee7eff065cd291d2",
          "body": null,
          "is_bot": false,
          "headline": "docs(debt): register — Wave 3 remainder ratchet note (withers 85->84)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:56:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "044a9eab28a1c9afdc2e2f4d719fa3677167adf4",
          "body": "…(T3.10)\n\nBoth were public exports of @reactive-agents/tools but NEVER registered as\ncallable in production — the live meta-tool registration in\ntool-capabilities.ts wires recall/writeResultToFile/find/checkpoint/\ndiscover-tools/brief/pulse/todo, not these. Only tests referenced them.\n\n- task-comple\n[…]\nument-retrieval FEATURE (.withDocuments()/ingest()) is unchanged and\nlive via find. Build 20/20; all 8 architectural-invariant scripts + capability\nmanifest green; 931 tool+runtime tests pass, 0 fail.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 §3b — delete dead task-complete + rag-search tools …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:54:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6c7f780bd9dca3875e7cfbc53507eb3b0728ca6d",
          "body": "…ot definitions\n\nThe control-plane grandfather list had 4 entries, but 'Which control action\nfires this iteration' has only 2 real un-reconciled forcing sites. Two entries —\nstrategy-switch.ts and force-abstention.ts — were only on the list because the\nprimitive regex applyStrategySwitch\\( / decideF\n[…]\nesolveControlPlane is behavioral kernel work with a red-on-cut\ntest — the genuine one-per-PR ratchet, deferred to a dedicated kernel PR.\n\nGuard still green (exit 0); no test pins the grandfather list.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 §3b — tighten check-control-plane guard to calls, n…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:47:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a1c6361cc2f57e0ba9ed778ac594308ef0be4a76",
          "body": "…ve 1 landmine)\n\nWave 1 (P0-10) removed withProgressCheckpoint() from the builder and pinned its\nabsence, but missed the cortex consumer — build-cortex-agent.ts still called\nb.withProgressCheckpoint(params.progressCheckpoint), which throws\n'b.withProgressCheckpoint is not a function' at runtime when\n[…]\nnd 3 cortex tests. checkpointEvery/withDurableRuns (a separate,\nlive feature) untouched.\n\nCortex 'tsc --noEmit' now reports 0 errors (was 1); cortex build green (23/23);\n323 cortex tests pass, 0 fail.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 — remove dead cortex progressCheckpoint control (Wa…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:40:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f046299f1c7276c926dbda28ca7d4c6766536516",
          "body": "…BudgetChars\n\nThe DEBT-REGISTER premise 'recencyBudgetChars governs the compaction threshold'\nwas a documentation lie. compactHistoryStage truncates the whole thread at\nwindow*4 chars (a full-window safety valve) and never referenced\nrecencyBudgetChars. The field's real, live role is the generous pe\n[…]\ndead).\n\nProactive earlier compaction (firing below full window) is a behavioral change\nthat can strip recall context — deferred to the Wave 5 bench, not forced blind.\n\nAssembly suite green (136 pass).",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 §3b — correct compaction doc lie + delete dead aged…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:39:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d4ed0ea806793cdba164d39d78815ad8e5fb1d35",
          "body": "…Timeout control\n\nwithCacheTimeout()/execution.cacheTimeoutMs was a confirmed no-op: the value\nthreaded builder → runtime-construction → runtime.ts, but ToolResultCacheLive()\nis always constructed with no args, so the tool-result cache always used its\ndefault 300s TTL. The knob never did anything.\n\n\n[…]\nrift gates and 4 cortex tests updated consistently.\n\nBuild green (37/37); all 8 architectural-invariant scripts, capability\nmanifest, and North Star gate green; 1360 runtime+cortex tests pass, 0 fail.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 — remove dead withCacheTimeout no-op + cortex cache…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T21:34:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "526fa7255c2bf50e23e182cca1e6aa58c468f8e3",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 3 delete round 2 shipped",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T16:32:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4517f5b3ad265536da1f447e64755defb44de998",
          "body": "…narios, orphan fields\n\nRegister §4 deletions, each grep-verified for zero non-test readers first.\n\nLedger kinds (reasoning): checkpoint-marker, deliverable-commit, contract-amended\n+ amendContract()/ContractAmendment REMOVED (zero writers AND readers). Ledger\nsingle-writer invariant green. process-\n[…]\nparity suite has only the\npre-existing load/timing flakes (CLI process-spawn, perf-timing, 5-20s bench\ncells — all pass isolated, green in CI on fresh runners), zero new failures.\nRegister §4 flipped.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 (round 2) — dead ledger kinds, dead vocabulary, sce…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T16:24:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f8e1226542c3f1ef094aef538c87f401448fec58",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 3 delete round 1 shipped",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T15:22:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "10e63d5cee8dc22f104daf345235283a745de7a4",
          "body": "…gate)\n\nThe orchestration deletion removed apps/examples/09-orchestration.ts; the\nexamples guide still linked to it on GitHub (404). Removed the row; the\nDocs Link Check gate is the only thing that caught it (Test/Typecheck/docs-gates\nwere already green).",
          "is_bot": false,
          "headline": "fix(docs): drop the deleted 09-orchestration example link (dead link …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T15:16:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d13fa3c2233620176d5376ad388310b818a62014",
          "body": "… flags\n\nRegister §4 deletions (LOC goes down; wire-or-delete):\n\npackages/orchestration REMOVED (net -2833 LOC). OrchestrationService/WorkerPool/\nWorkflowEngine had zero live consumers (worker-pool.spawn() built a struct in a\nRef, nothing ran). Removed the whole package, the published\n`reactive-agen\n[…]\neen at ceiling 256. Full-suite run showed only load/timing flakes\n(CLI process-spawn, perf-<500ms, 20s bench cells) that pass isolated, plus the\nAGENTS.md drift now fixed. Register §4 + P0-12 flipped.",
          "is_bot": false,
          "headline": "fix(debt): Wave 3 (round 1) — delete orchestration package + dead RA_…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T15:08:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8809adeb251af4c3a21c9a9f350bfc58c2186f4a",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 2 spine COMPLETE (all 7 boundaries)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T14:16:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1a2d9c16152b0abc5381e136a3e42b368378ed9c",
          "body": "B8 part 2 (T4 fork/cancellation, T3b depth correlation, T5 nesting) landed in\nc889ca7d/b0431110/cb19cda9. Flip register B8 to RESOLVED; re-sync README for the\n3 new subagent tests (cancellation, depth-correlation, nesting-depth).\n\nVerified: full CI-parity suite 0 fail / 8300 tests; no-cascade gate green; the\nabort-signal 'mid-stream abort' timing test is a pre-existing full-suite flake\n(passes isolated + in an independent full runtime run) — not a fork regression.",
          "is_bot": false,
          "headline": "docs(debt): Wave 2 B8 COMPLETE — register + README",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T14:16:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb19cda9f9a4ec1b83c2bf5cc2c949cf3fa32d32",
          "body": "Teams were structurally flat: depth was a literal 0 at every call site so the\ndepth>=max guard never fired, and children never got spawn tools so nesting was\nunreachable even with a live guard. The guard now reads RunContext.depth (the\nspawning agent's), and children are given their own spawn-agent/\n[…]\n; delegation refused past maxRecursionDepth 1 stays at depth 1 with no\nRangeError. Cutting child spawn registration drops depth 2 → 1 and fails.\nFull subagent suite + no-cascade gate green (66 tests).",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B8-T5 — nesting; the recursion cap is live (G7)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T13:49:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b0431110673fcb054c4622f1089c0ae5b227d2ac",
          "body": "A delegated child's trace events shared no rootRunId/depth with the parent — an\nunlinked island. The child's RunContext (rootRunId/parentRunId/depth) now rides\non its task metadata; the execution engine stamps those fields onto the child's\nAgentStarted/AgentCompleted, and the trace normalizer copies\n[…]\ncut proven): child trace events have depth===1, rootRunId===parent\nrunId, runId!==parent runId; dropping runContext from the child metadata drops\ndepth 1 and fails the test. trace + core suites green.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B8-T3b — correlate sub-agent trace events at depth 1",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T13:43:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c889ca7d9cfed71b54c1467596531cbba89a191f",
          "body": "…e (real cancellation)\n\nThe delegation boundary ran the child on a DETACHED root fiber\n(await Effect.runPromise(subEffect.pipe(Effect.provide(subRuntime)))), which\nFiber.interrupt on the parent could not reach — interrupting the parent orphaned\nin-flight children. buildSubAgentTask now returns an Ef\n[…]\n the fork, terminate() interrupts the\nin-flight child; reverting to runPromise lets the orphan complete → test fails.\nNo-cascade gate (m8-sub-agent-delegation) stayed GREEN. Full subagent suite green.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B8-T4 — sub-agents fork into the parent's fiber tre…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T13:35:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fea9ef8d8760e03eb94cb822751d2b929ed33fd1",
          "body": "…+ G1 shared bus\n\nRATIFIED re-scoped B8 (owner sign-off): Tasks 1-5 of the subagents-and-logging\nplan. This lands the safe, non-regressing foundation (T1, T2, T3a); the\nconcurrency-sensitive fork rewrite (T3b/T4/T5) follows in part 2.\n\n- T1: packages/core/src/run-context.ts — the explicit RunContext\n[…]\nols 961 (no-cascade green),\ncore+trace 250 — all 0 fail; full CI-parity suite 0 fail / 8296 tests;\ncore/trace/runtime/tools build clean. Plan RATIFIED re-scoped; register B8\nPARTIAL; README re-synced.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B8 (part 1) — RunContext spine + trace correlation …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T12:56:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "52428cb578f1998b1dfdf91a7f3e015973abe295",
          "body": "…ated",
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 2 6/7 boundaries shipped, B8 owner-g…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T11:55:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42e188ec3e7b26cc721fb19cebe4f1af8d2f15e8",
          "body": "… sweep\n\nThe builder->runtime seam crosses every field via\n`self as unknown as BuilderRuntimeStateView`, a structural cast that won't\ncatch a renamed/removed field, and the wither tests asserted private `_*`\nfields, not behavior — so deleting a wiring line in runtime-construction.ts left\nthe suite g\n[…]\ne 1339 pass/0 fail; full CI-parity suite 0\nfail / 8289 tests; runtime build clean (strict, DTS); wither-discipline +\nwither-ratchet gates green. Register B3 + runtime-as-any flipped; README\nre-synced.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B3 — builder-seam behavioral tests + runtime as-any…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T11:54:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e304ac6fb0dc528816b06634fd6deeb60dbe1fed",
          "body": "…linkage\n\nThe register's '19 orphaned KernelMeta fields' was an overcount conflating\nthree populations. Triaged each:\n- Already projected (healthy): the honesty markers + terminatedBy family cross\n  via CompletionEnvelope / ReActKernelResult (envelopeFromKernelState,\n  react-kernel.ts) and are consu\n[…]\ny 0 fail / 8282 tests; check-ledger-writes green;\nreasoning+runtime build clean. Register B4 + §5.3 + #44 flipped; §4 orphan\nrecount (3 dead retired, rest reclassified); README re-synced (1053->1055).",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B4 — kernel->strategy projection triage + verifier …",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T11:08:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bb99ad8e72965c884c25c4d938508416eb21d80d",
          "body": "… gate\n\nThe RunLedger \"requirement\" kind (declared->satisfied|blocked) had ZERO\nnon-test writers, so its two live readers (assess.ts:207, standing-frame.ts:193)\nalways saw [] — the meta-loop's requirement lifecycle was fiction; the Projector\nrendered no outstanding work and evidenceRefs were double-\n[…]\nages/reasoning 2401 pass/0 fail; check-ledger-writes.sh\ngreen; full CI-parity suite 0 fail / 8277 tests; reasoning build clean. Register\nB7 + §3b #39 flipped; README re-synced (1051->1053 test files).",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B7 — mint requirement ledger lifecycle at compile +…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T10:45:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0adbcafaf3def730e4d0688fd2fe54509970063a",
          "body": "PhaseStarted/PhaseCompleted were declared in AgentStreamEvent and advertised as\ndensity:\"full\" events (ui-core protocol + docs/features/streaming.md), but the\nEventBus->public-stream projection in execute-stream.ts subscribed only to\niteration/step/tool events — both phase events had ZERO stream wri\n[…]\nt density emits neither. Flipping the guard to\nif(false) drops the full-density chunks (red); restored.\n\nVerified: bun test packages/runtime 1330 pass/0 fail; runtime build clean.\nRegister B5 flipped.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B5 — project phase events onto the public stream",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T10:45:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7b257c4009c00930d19f0e47024cfbcbffc7a251",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — Wave 2 B1+B2 shipped, CI green",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T03:31:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cc595f0d8b45ae3ed7995ea79d70bb732271359",
          "body": "…trategies\n\nOnly reactive forwarded terminatedBy + abstention across the strategy->engine\nresult boundary, so execution-engine.ts:1096 (terminatedBy ?? \"end_turn\")\nmislabeled every non-reactive run and projectAbstention never fired —\nreceipt.abstained was permanently false on 8 of 9 paths (P0-5).\n\nB\n[…]\ned the old end_turn default); full CI-parity\nsuite (keys stripped) 0 fail / 8267 tests; reasoning build clean; WS-5b cast\nceiling respected. Register P0-5 + B2 + §5.1 + §5.2 flipped; README re-synced.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B2 — terminatedBy + abstention forward across all s…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T03:25:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3038eb03ec0a10b9d00e4d837be823d89b205ff6",
          "body": null,
          "is_bot": false,
          "headline": "fix(ci): re-sync README file count after B1 mutation test (1049→1050)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T03:05:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d5dffadac4b7ae3afd3b5484a3cd6e30d6c10f12",
          "body": "… point\n\nThe shared executeToolAndObserve primitive is the one path every hand-rolled\nstrategy (plan-execute, blueprint) routes tool calls through, yet it inherited\nno policy enforcement and minted no ledger — so a forbidden or hallucinated\ntool arriving via a planned step executed unchecked (P0-4, \n[…]\nkages/reasoning 2389 pass/0 fail; full CI-parity suite\n(keys stripped) 0 fail across 8263 tests; reasoning+runtime build clean;\nledger single-writer + WS-5 ceilings intact. Register P0-4 + B1 flipped.",
          "is_bot": false,
          "headline": "fix(debt): Wave 2 B1 — tool-policy gate + RunLedger mint at the choke…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T02:56:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d1f4e2e5d7ca3fd85148b966c7fce3c4b9969317",
          "body": "…l env\n\nThe replay-golden keystone recorded its run's trace into a dir chosen by the\nprocess-global REACTIVE_AGENTS_TRACE_DIR. Bun executes test FILES concurrently\nin one process, and two other suites (diagnose, meta-tools-default-surface)\nmutate that same env var, so the recorder's LLM exchanges co\n[…]\no concurrent env mutation. Same global-state-race\nclass as the Wave 0 mock.module leak fixes.\n\nVerified: the 3 env-racing files run green together keyless; full CI-parity\nsuite (keys stripped) 0 fail.",
          "is_bot": false,
          "headline": "fix(ci): replay-golden sets trace dir explicitly, not via raced globa…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T02:39:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "16b3038ea254e7ae161a9b5dc8785178e16cd533",
          "body": "…8→1049)\n\nThe rebase onto main pulled in PR #196's packages/replay/src/e2e.test.ts,\nbumping the live test-file count by one after Wave 1's metrics sync. CI's\nmetrics:check counts test files from the tree, so README drifted. Re-synced.",
          "is_bot": false,
          "headline": "fix(ci): re-sync README test-file count after replay test landed (104…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T02:27:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7c44226bc53a7d9bf19336d1a2df2cdda9269d51",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — debt burndown Wave 1 shipped",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T01:12:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80337d2623ffd86d96a4b5e79195210de2e8bb4d",
          "body": "Every shipped API that promised behavior it did not deliver is now removed,\nwired, or fixed; every false published claim is gone. v0.14 is already a\nbreaking release, so lying surfaces are removed outright rather than deprecated.\n\nPublic API (register P0-1,2,3,6,7,8,9,10,11):\n- REMOVED no-op options\n[…]\ne.\n\nVerified: bun test — Docs + provider + runtime + RI green; the only non-Docker\nsuite failure was a stray untracked orphan test (imported a deleted export),\nmoved aside. Both anti-rot gates exit 0.",
          "is_bot": false,
          "headline": "fix(debt): Wave 1 — stop the lies (public API + published claims)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T01:10:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9df97ceeda427cec8a41fd997c211b99ea8b7016",
          "body": "Main goes green and the anti-rot gates become real:\n\n1. Fix the 3 environment-independent failures:\n   - builder-with-budget: both regexes pin the real broadened message.\n   - WS-5 silent-swallow ceiling: the new killSwitchAction site\n     (reactive-agent.ts) typed to Effect<void> (KillSwitchService\n[…]\nics-cache.json refreshed.\n\nVerified: bun test twice — 8224 pass / 0 fail / 8253 tests / 1045 files.\nBoth gates exit 0. Register §1 ratchet + P0-15 (PROVEN) + P0-21 (gate\nPROVEN, skips remain) updated.",
          "is_bot": false,
          "headline": "fix(debt): Wave 0 — make the signal trustworthy",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T00:51:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3bdf7388b817cb73d7d7c56c49c2aa9f201eebb4",
          "body": "… 09 amended\n\nReview found the burndown plan sound in shape and order but failing its own\ndefinition of done: the register it defers to had holes, and the governance it\nprescribes (amend 09, never fork direction) it had not followed.\n\n1. Absorb-or-defer pass (register 3b): every open item from the t\n[…]\nmbers on the sd-0.50 instrument would repeat July with fresher branding.\n4. Register 5 latent bugs assigned to Wave 2 (ride B2/B4).\n5. Subagent disposition recorded: debt repair, not new architecture.",
          "is_bot": false,
          "headline": "docs(debt): close the five plan-review defects — register exhaustive,…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T00:51:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5efa8a9a3bcaa0981574bf19a6f1c831063a3fa3",
          "body": "Seven waves, ordered by dependency rather than severity. The plan deliberately\ncontains no item list: the Debt Register is the single source of truth, and this\ndocument holds only the order and the rules. Thirteen plans rotted in July\nbecause each re-listed its own items and then drifted.\n\nThe order\n[…]\nred; wire-or-delete with no third option;\nboundary-first; the ratchet only decreases; v0.14 is already breaking, so removing\na lying API is cheaper and more honest than implementing it under pressure.",
          "is_bot": false,
          "headline": "docs(plan): debt burndown — sequence only, register holds the items",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T00:51:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "886b5d0a581b548eea24f45fe755feb978f58101",
          "body": "Fifth and final validation sweep. 23 published claims are FALSE, 6 unvalidated.\n\nVerified by running the suite: main is RED. 8,199 pass / 21 fail / 8,247 tests /\n1,045 files. Eighteen failures are Docker-daemon-dependent; three are\nenvironment-independent and gate CI (ci.yml:82 runs bare `bun test`)\n[…]\nnces drift by marking failing blocks as\nskipped. The claims did not rot randomly — the two mechanisms built to prevent\nrot were never connected to anything that could fail. Same disease, one level up.",
          "is_bot": false,
          "headline": "docs(debt): register — published-claims sweep; main is red",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T00:51:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "02fa631f2d830729bd445c895dd53e57b9b1433a",
          "body": "Replaces the scattered findings across six audit-report directories with one\nledger. Nothing is \"known debt\" unless it has a row here; every row carries a\nverdict, primary evidence, and the gate that keeps it fixed.\n\nMethod: five parallel read-only sweeps (builder withers, strategy x mechanism\nmatri\n[…]\ntention and goalAchieved across eight.\n\nRatchet: the counts may only go down. Definition of done is now declaration +\nwriter + reader + a mutation that goes red — prose findings do not discharge debt.",
          "is_bot": false,
          "headline": "docs(debt): canonical Debt Register — 5-sweep validation, ratcheted",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-20T00:51:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9c9e1f63647946cda563c431314da7e1884bd69f",
          "body": "Co-authored-by: Zain Dana Harper <zain@aurora-framework.dev>",
          "is_bot": false,
          "headline": "test(replay): add deterministic end-to-end replay coverage (#196)",
          "author_name": "ZentropyLabs.ai",
          "author_login": "HarperZ9",
          "committed_at": "2026-07-19T23:49:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e0a7a2b274f164bb920bf5d021a617ed2feddc7d",
          "body": "… one open-work list\n\nComprehensive map + health audit of the July harness fortnight (226 unpushed\ncommits), synthesized from four parallel read-only audits: program completion\nvs git, built-never-wired code sweep, docs/authority accuracy, and churn\nanalysis.\n\nDeliverable: wiki/Research/Audit-Report\n[…]\nbefore the probe fleet gave it a regression\ngate. Corrective doctrine recorded in §4b: boundary-first fixing, probes as the\ngate, a sole-caller grep before deletion, measurement freeze, sync-per-wave.",
          "is_bot": false,
          "headline": "docs(audit): state-of-the-framework 2026-07-12 — one authority chain,…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T23:02:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "68bcb046db04da239bc866abf01853c58e0a61ce",
          "body": "…h, without .withKillSwitch()\n\nAll four are documented public methods on ReactiveAgent, and all four requested\nKillSwitchService by its raw Context tag. That service is only in the layer when\n.withKillSwitch() was called — Layer.empty otherwise, which is the DEFAULT\n(builder.ts: _enableKillSwitch = \n[…]\nnd .withKillSwitch(), never leaks the Effect defect text, and that the\nopted-in path still terminates — so the guard cannot be satisfied by breaking\nthe feature.\n\nVerified: runtime 1013 pass / 0 fail.",
          "is_bot": false,
          "headline": "fix(runtime): pause/resume/stop/terminate must fail clearly, not cras…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T15:28:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1c4c670f854c9976be4d828e6ec72463321c0b91",
          "body": "…, ToT guard reachability",
          "is_bot": false,
          "headline": "docs(agents): memory sync — stream tool events, unhandled-fiber noise…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T14:14:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e41006e918e30b14155c1879858e2f05eca37bf4",
          "body": "… become reachable\n\nTwo findings from the probe fleet, both the same shape: a mechanism that exists,\nis documented, and cannot fire.\n\n1. Six of the nine action-step sites in act.ts minted their step without\n   `metadata.toolUsed` — the allowedTools block, the meta-tool handler,\n   final-answer accep\n[…]\n84\ntok / 117s -> 11 calls / 17,919 tok / 55s, still writing the correct sum, all\nchecks pass. Cost is measured; quality-neutrality at other tiers is NOT claimed\nhere and needs the cross-tier ablation.",
          "is_bot": false,
          "headline": "fix(kernel,tot): every started tool call completes; ToT's cost guards…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T14:10:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "61f05489452dd8caeb0d0822fc9fe1bb765f76d2",
          "body": "… stop reporting as unhandled fibers\n\nProbe fleet rerun (12/12 graded checks passing) surfaced three defects that were\ninvisible to the checks and visible only in stderr. The instrument was the first\nbug: probe-harness graded the returned AgentResult and nothing else, so a run\ncould scream during ex\n[…]\n Live on ollama/gemma4:\np8 stream now shows ToolCallStarted x2 + ToolCallCompleted x2 with paired callIds\nand streamed tools exactly matching receipt.toolsUsed; p6 hygiene clean against a\nreal ENOENT.",
          "is_bot": false,
          "headline": "fix(stream,tools): tool events reach the public stream; failing tools…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T13:53:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b03a1b73bbacb82dfe08ffa573605a7f0ed43983",
          "body": "…100)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — wave 9 full interventions coverage (23f34…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T13:41:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23f341000c70d67565347e3e8e18313f37bb92ae",
          "body": "…l actor named (#54)\n\nCompletes the receipt-as-debugging-spine (north-star spec §5b). W-J shipped\nthe slice (gate + grounding redirects); this annotates the remaining control\nactors at their EXISTING emission points, so a c4e964e8-class misfire is\ndiagnosable from result.receipt.interventions[] inst\n[…]\n entry absent → red). reasoning 2372 pass, core 186 pass; W-J\nauthority-exits + receipt-interventions kept green; tsc clean (excl. the\nparallel workstream's pre-existing step-executor llmCalls error).",
          "is_bot": false,
          "headline": "feat(reasoning): full receipt.interventions[] coverage — every contro…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T13:41:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c7d5ddef8733da73d2ec3e42855f5e0f9f20382f",
          "body": "…ed (ee9a1471)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — wave 8 docs gate honest + error-lies kill…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T12:45:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ee9a147186f8b16b2e58e20f7a89b1302d5fb267",
          "body": "…gestion lies (#58)\n\nThe docs examples gate was green because ~35 real-drift blocks were marked\ndocs-skip-typecheck instead of fixed (a false green — the metric-gaming the\ngate exists to prevent). Fixed each to the real API and UNMARKED it, so the\ngreen now means \"docs are correct,\" not \"failures hi\n[…]\nthe test).\n\ndocs:examples:check green (349 checked); docs:gen:api clean; docs:build 92\npages; runtime tsc clean (excl. the parallel logging workstream's pre-existing\neffect-log-capture.test.ts break).",
          "is_bot": false,
          "headline": "fix(docs,runtime): make the anti-rot gate honest + kill the error-sug…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T12:45:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "70d87a0cef43d1ea41474d2823116d57e28bda42",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — result-boundary verification (b6745426)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T12:25:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6745426455f4396645b78673799db247950468c",
          "body": "…es every run\n\nEmpirical: the terminal verifier ran ONLY inside the react kernel. Strategy\npaths (blueprint / plan-execute / tree-of-thought / reflexion / code-action)\nand the engine's inline loop shipped their answers UNVERIFIED — `rax:diagnose`\nreported \"0 verifier verdicts\" on every strategy trac\n[…]\nict events; p9 matrix\n+ p1 ALL CHECKS PASS. A pre-existing test comment (\"no verifier pass is\nforwarded to the receipt sites … bump if that plumbing lands\") is now the\nassertion — the plumbing landed.",
          "is_bot": false,
          "headline": "feat(runtime,core): result-boundary verification — the verifier reach…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T12:24:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "31933c9e51a4fabb830ce7076afb1aeaea7057cb",
          "body": "…f8f0ef2)",
          "is_bot": false,
          "headline": "docs(agents): memory sync — wave 7 doc propagation + anti-rot gate (2…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T02:05:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2f8f0ef28d210f59f92aae01fccc5156716def42",
          "body": "… (#57)\n\nPublic-facing surfaces reframed to the shipped createAgent(config) front door,\nper the ratified dual-API spec (declarative front door -> fluent builder ->\ncompose). Additive: no builder docs deleted, the hierarchy is reframed.\n\n- Anti-rot gate (durable): scripts/check-doc-examples.ts, `docs\n[…]\norts) — pre-existing doc bugs the gate surfaced. The green means \"no\nUNMARKED block fails,\" not \"all docs correct.\" #58 fixes them so the green is\nhonest; the gate catches all FUTURE drift regardless.",
          "is_bot": false,
          "headline": "docs: propagate createAgent dual API + examples-compile anti-rot gate…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T02:04:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5cc9cafdee3da4838adcac45108ed49f7b01ce11",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync — probe-fleet wave 2 (12d86630)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T02:03:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "12d8663009a2bce2d31d4c7a864999df1fb45da2",
          "body": "…ce policy parity\n\nFleet rerun after wave 1 went 12/12 clean; this wave takes the ranked backlog.\nThree coordinated fixes on the ENGINE's inline path plus the regressions the\nfleet itself caught while fixing them.\n\n1. Empty-output success invariant (M7's engine mirror). Deterministic repro:\n   tool-\n[…]\net drift\nfails); reasoning 2370, llm-provider 381, benchmarks 398 all 0 fail; bench:t0\ndeterministic gate green; live fleet spot-checks p2/p6/p10 ALL PASS and p4\nhonest-failure as above; builds clean.",
          "is_bot": false,
          "headline": "fix(runtime,reasoning,llm-provider): inline-path honesty + tool-surfa…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T02:02:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "61fcdfe9ad1e189c40bde047307c93b3295a37aa",
          "body": null,
          "is_bot": false,
          "headline": "docs(agents): memory sync + debrief — probe-fleet QA wave (4 fixes)",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:38:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f65722f6d31fe331839705b2ca1b38285dbd1b4e",
          "body": "…d receipt-vs-disk cross-checks\n\nPermanent QA tooling for the harness-improvement loop: build agents the way\nusers would (public builder API, live model), run realistic tasks, grade with\ndeterministic checks including receipt-claims-vs-disk-truth cross-checks.\nArchetypes: research-writer, multi-file\n[…]\neep (2026-07-11, gemma4) surfaced 8 findings; 4 fixed same-day\n(309a5c3a inline ledger, ed5caa07 code-action, d4623073 llmCalls,\nb1755ff4 goalAchieved). Reports committed as the before/after evidence.",
          "is_bot": false,
          "headline": "feat(probes): real-world agent probe fleet — 10 archetypes with grade…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:37:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b1755ff40512b8623652c0b87511d7e700fc282f",
          "body": "…urn's \"maybe\" answered deterministically\n\nEmpirical: probe p5 (gemma4, .withLongHorizon()) — success:true, file\nproduced, goalAchieved:null. Every end_turn run stayed null forever while the\ndeterministic answer (RunContract × step-ledger deliverable scan) sat one\nfield away on receipt.deliverables.\n[…]\nse on a run whose\nfile genuinely didn't land (receipt agrees with disk) — the null is gone in\nboth directions. runtime 1246 tests, same 2 pre-existing withBudget fails\n(parallel session); build clean.",
          "is_bot": false,
          "headline": "fix(runtime): goalAchieved resolves from deliverable evidence — end_t…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:36:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d4623073b907a47b9a1d2611695d894b7d0e9902",
          "body": "…mCalls (was 0)\n\nEmpirical: probe p9 (gemma4, same hermetic file task through all three\nstrategies) — every run reported metadata.llmCalls:0. The kernel counts its\nown calls (state.llmCalls, think.ts) and blueprint was fixed in 02e5d12b; the\nsiblings never read the counter or shipped a count.\n\nWirin\n[…]\nrategy; reasoning 2370 tests 0 fail; build clean.\n\nPerf note (unfixed, tracked): ToT burned 19 calls / 32k tokens / ~2min adding\nthree numbers — strategy cost on trivial tasks is its own backlog item.",
          "is_bot": false,
          "headline": "fix(reasoning): reflexion/plan-execute/tree-of-thought report real ll…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:30:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ed5caa07007f69271ecc2b278f25796881812789",
          "body": "…ools — five defects, one probe\n\nEmpirical: probe p7 (gemma4, \"sum of squares 1..250 → write file\"). Before:\nrun FAILED with \"Unexpected token '-'\" and reported tokensUsed:0 / llmCalls:0\nbeside a real plan call in the trace. After: exact answer 5239625 on disk,\nproduced:true, tokensUsed/llmCalls exa\n[…]\n     examples.\n\nVerification: sandbox/tool-binding/ledger pins RED→GREEN (36+40 tests);\nreasoning package 2370 pass 0 fail; live p7 rerun ALL CHECKS PASS;\nturbo build --force (reasoning, tools) clean.",
          "is_bot": false,
          "headline": "fix(reasoning,tools): code-action was structurally broken with real t…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:22:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "309a5c3ada14296755f03960c5d9558c315ab947",
          "body": "…ault-path receipts stop lying\n\nEmpirical: real-world probe fleet (2026-07-11, gemma4) — EVERY default-strategy\nrun reported receipt.deliverables[].produced:false with the file on disk\n(probes p1/p2/p4/p5/p10), and the new deliverable verdict cap (e247e6b8) then\ndowngraded those honest runs to parti\n[…]\nom\n    the parallel session); reasoning 2368 pass 0 fail.\n\nSurfaced, not fixed here: p10 second run shipped success:true with empty\noutput (inline-path output ownership); tracked in the probe backlog.",
          "is_bot": false,
          "headline": "fix(runtime): inline agent loop mints the canonical tool ledger — def…",
          "author_name": "Tyler Buell",
          "author_login": "tylerjrbuell",
          "committed_at": "2026-07-12T00:13:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 35,
      "commits_last_year": 3410,
      "latest_release_at": "2026-07-22T00:47:00Z",
      "latest_release_tag": "v0.14.0",
      "releases_from_tags": false,
      "days_since_last_push": 7,
      "active_weeks_last_year": 21,
      "days_since_latest_release": 8,
      "mean_days_between_releases": 8.6
    },
    "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": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@reactive-agents/cli",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "cli",
            "typescript",
            "llm",
            "reactive-agents",
            "mcp",
            "agent-cli",
            "developer-tools"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/cli",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 42,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1071,
          "first_published_at": "2026-02-20T17:14:08.787000Z",
          "latest_published_at": "2026-07-22T00:46:54.944000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/cortex",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "reactive-agents",
            "cortex",
            "agent-studio",
            "agent-ui",
            "agent-observability",
            "ai-agents",
            "elysia"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/cortex",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 11,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1678,
          "first_published_at": "2026-05-05T17:36:49.186000Z",
          "latest_published_at": "2026-07-22T00:46:53.401000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/a2a",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "a2a",
            "agent-to-agent",
            "agent-protocol",
            "json-rpc",
            "agent-card",
            "multi-agent",
            "sse"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/a2a",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 26,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1145,
          "first_published_at": "2026-02-25T01:34:52.143000Z",
          "latest_published_at": "2026-07-22T00:46:28.843000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/core",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "eventbus",
            "pubsub",
            "agent-lifecycle",
            "state-machine",
            "core"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/core",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 27,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2202,
          "first_published_at": "2026-02-20T17:13:25.532000Z",
          "latest_published_at": "2026-07-22T00:46:06.042000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/cost",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "cost-tracking",
            "budget",
            "model-routing",
            "complexity-routing",
            "token-cost",
            "llm-cost"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/cost",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 27,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1201,
          "first_published_at": "2026-02-20T17:13:56.840000Z",
          "latest_published_at": "2026-07-22T00:46:32.134000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/eval",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "evaluation",
            "llm-as-judge",
            "benchmark",
            "regression-testing",
            "scoring",
            "eval"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/eval",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 26,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 946,
          "first_published_at": "2026-02-21T01:32:58.329000Z",
          "latest_published_at": "2026-07-22T00:46:33.646000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/health",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "health-check",
            "readiness",
            "liveness",
            "probe",
            "production"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/health",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 15,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1057,
          "first_published_at": "2026-03-12T14:16:44.001000Z",
          "latest_published_at": "2026-07-22T00:46:12.740000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        },
        {
          "name": "@reactive-agents/memory",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "ai",
            "agents",
            "ai-agents",
            "llm",
            "effect-ts",
            "typescript",
            "memory",
            "sqlite",
            "vector-search",
            "embeddings",
            "fts5",
            "rag",
            "semantic-memory",
            "agent-memory"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reactive-agents/memory",
          "is_deprecated": false,
          "latest_version": "0.14.0",
          "repository_url": "https://github.com/tylerjrbuell/reactive-agents-ts",
          "versions_count": 26,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1705,
          "first_published_at": "2026-02-20T17:13:48.885000Z",
          "latest_published_at": "2026-07-22T00:46:19.525000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        }
      ]
    },
    "popularity": {
      "forks": 4,
      "stars": 19,
      "watchers": 0,
      "fork_history": {
        "days": [
          {
            "date": "2026-03-12",
            "count": 1
          },
          {
            "date": "2026-04-17",
            "count": 1
          },
          {
            "date": "2026-05-17",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 4,
        "total_forks": 4
      },
      "star_history": null,
      "open_issues_and_prs": 32
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "cookbook",
        "demos",
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": true,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": true,
      "typecheck_configs": [
        "apps/advocate/tsconfig.json",
        "apps/cli/tsconfig.json",
        "apps/cortex/tsconfig.json",
        "apps/cortex/ui/tsconfig.json",
        "apps/docs/tsconfig.json",
        "apps/examples/tsconfig.json",
        "apps/stackblitz/01-hello-agent/tsconfig.json",
        "apps/stackblitz/02-tool-integration/tsconfig.json",
        "apps/stackblitz/03-strategy-demo/tsconfig.json",
        "docker/signal-mcp/server/tsconfig.json",
        "packages/a2a/tsconfig.json",
        "packages/benchmarks/tsconfig.json",
        "packages/channels/tsconfig.json",
        "packages/compose/tsconfig.json",
        "packages/core/tsconfig.json",
        "packages/cost/tsconfig.json",
        "packages/create-reactive-agent/tsconfig.json",
        "packages/diagnose/tsconfig.json",
        "packages/eval/tsconfig.json",
        "packages/gateway/tsconfig.json",
        "packages/guardrails/tsconfig.json",
        "packages/health/tsconfig.json",
        "packages/identity/tsconfig.json",
        "packages/interaction/tsconfig.json",
        "packages/judge-server/tsconfig.json",
        "packages/llm-provider/tsconfig.json",
        "packages/memory/tsconfig.json",
        "packages/observability/tsconfig.json",
        "packages/observe/tsconfig.json",
        "packages/prompts/tsconfig.json",
        "packages/react/tsconfig.json",
        "packages/reactive-agents/tsconfig.json",
        "packages/reactive-intelligence/tsconfig.json",
        "packages/reasoning/tsconfig.json",
        "packages/replay/tsconfig.json",
        "packages/runtime-shim/tsconfig.json",
        "packages/runtime/tsconfig.json",
        "packages/svelte/tsconfig.json",
        "packages/testing/tsconfig.json",
        "packages/tools/tsconfig.json",
        "packages/trace/tsconfig.json",
        "packages/ui-core/tsconfig.json",
        "packages/verification/tsconfig.json",
        "packages/vue/tsconfig.json",
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 117970,
      "source_files_sampled": 2346,
      "oversized_source_files": 11,
      "agent_instruction_files": [
        ".github/copilot-instructions.md",
        "AGENTS.md",
        "CLAUDE.md",
        "apps/cortex/AGENTS.md"
      ],
      "agent_instruction_max_bytes": 65593
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [
          {
            "name": "@opentelemetry/core",
            "direct": false,
            "version": "2.6.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-8988-4f7v-96qf"
            ],
            "fixed_version": "2.8.0",
            "advisory_count": 1,
            "oldest_advisory_days": 45
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "moderate": 1
        },
        "advisory_count": 1,
        "affected_count": 1,
        "assessed_count": 233,
        "malicious_count": 0,
        "assessed_package": "npm:@reactive-agents/cli@0.14.0",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "reactive-agents",
          "manifest": "apps/advocate/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/compose",
          "manifest": "apps/advocate/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/health",
          "manifest": "apps/advocate/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "effect",
          "manifest": "apps/advocate/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "effect",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/eval",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/a2a",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/trace",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/tools",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/memory",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/diagnose",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "chalk",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.4.0"
        },
        {
          "name": "ora",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.2.0"
        },
        {
          "name": "boxen",
          "manifest": "apps/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.0.1"
        },
        {
          "name": "elysia",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.0"
        },
        {
          "name": "effect",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/memory",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/observability",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/gateway",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/tools",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/reactive-intelligence",
          "manifest": "apps/cortex/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/a2a/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/a2a/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/channels/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/gateway",
          "manifest": "packages/channels/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "effect",
          "manifest": "packages/channels/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/compose/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "effect",
          "manifest": "packages/core/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "ulid",
          "manifest": "packages/core/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.3.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/cost/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "packages/cost/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/memory",
          "manifest": "packages/cost/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/cost/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/trace",
          "manifest": "packages/diagnose/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/replay",
          "manifest": "packages/diagnose/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/eval/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "packages/eval/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/eval/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/gateway/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/guardrails/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "packages/guardrails/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/health/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/identity/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@noble/ed25519",
          "manifest": "packages/identity/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/interaction/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/reasoning",
          "manifest": "packages/interaction/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/observability",
          "manifest": "packages/interaction/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "ulid",
          "manifest": "packages/interaction/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.3.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/judge-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/eval",
          "manifest": "packages/judge-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/llm-provider",
          "manifest": "packages/judge-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/judge-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "effect",
          "manifest": "packages/judge-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/llm-provider/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/memory",
          "manifest": "packages/llm-provider/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/llm-provider/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/memory/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@reactive-agents/runtime-shim",
          "manifest": "packages/memory/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "@opentelemetry/api",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.9.0"
        },
        {
          "name": "@opentelemetry/exporter-metrics-otlp-http",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.213.0"
        },
        {
          "name": "@opentelemetry/exporter-trace-otlp-http",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.213.0"
        },
        {
          "name": "@opentelemetry/resources",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.6.0"
        },
        {
          "name": "@opentelemetry/sdk-metrics",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.6.0"
        },
        {
          "name": "@opentelemetry/sdk-trace-base",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.6.0"
        },
        {
          "name": "@opentelemetry/semantic-conventions",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.40.0"
        },
        {
          "name": "@reactive-agents/core",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:*"
        },
        {
          "name": "chalk",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.4.0"
        },
        {
          "name": "boxen",
          "manifest": "packages/observability/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.0.1"
        }
      ],
      "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": 55,
        "open_issues": 32,
        "closed_ratio": 0.717,
        "closed_issues": 81,
        "closed_unmerged_prs": 26
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "tylerjrbuell",
          "commits": 3394,
          "avatar_url": "https://avatars.githubusercontent.com/u/89788783?v=4"
        },
        {
          "type": "User",
          "login": "HarperZ9",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/17142659?v=4"
        }
      ],
      "contributors_sampled": 2,
      "top_contributor_share": 0.999
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "backfill-releases.yml",
        "ci.yml",
        "docs.yml",
        "eval.yml",
        "publish.yml",
        "regression-gate.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.mjs"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "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": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "1 out of 1 merged PRs checked by a CI test -- score normalized to 10",
            "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 1/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "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": 10,
            "reason": "project is 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": 10,
            "reason": "30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10",
            "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": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "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": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "162 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "45cbacdb3acf81c05c706b2cefa5f732b1584175",
        "ran_at": "2026-07-30T20:59:33Z",
        "aggregate_score": 4.6,
        "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": "2026-07-22T22:11:00Z",
      "oldest_open_prs": [],
      "last_merged_pr_at": "2026-07-22T22:06:34Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 30,
          "created_at": "2026-05-15T01:57:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 31,
          "created_at": "2026-05-15T01:57:44Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 32,
          "created_at": "2026-05-15T01:57:45Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 33,
          "created_at": "2026-05-15T01:57:46Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 34,
          "created_at": "2026-05-15T01:57:47Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 35,
          "created_at": "2026-05-15T01:57:48Z",
          "last_comment_at": "2026-06-16T17:57:16Z",
          "last_comment_author": "tylerjrbuell"
        },
        {
          "number": 36,
          "created_at": "2026-05-15T01:57:50Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 37,
          "created_at": "2026-05-15T01:57:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 38,
          "created_at": "2026-05-15T01:57:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 42,
          "created_at": "2026-05-15T01:57:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 43,
          "created_at": "2026-05-15T01:57:58Z",
          "last_comment_at": "2026-06-16T17:57:16Z",
          "last_comment_author": "tylerjrbuell"
        },
        {
          "number": 44,
          "created_at": "2026-05-15T01:58:00Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 45,
          "created_at": "2026-05-15T01:58:01Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 47,
          "created_at": "2026-05-15T01:58:03Z",
          "last_comment_at": "2026-06-16T17:57:15Z",
          "last_comment_author": "tylerjrbuell"
        },
        {
          "number": 48,
          "created_at": "2026-05-15T01:58:04Z",
          "last_comment_at": "2026-06-11T00:45:23Z",
          "last_comment_author": "tylerjrbuell"
        },
        {
          "number": 49,
          "created_at": "2026-05-15T01:58:05Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 50,
          "created_at": "2026-05-15T01:58:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 51,
          "created_at": "2026-05-15T01:58:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 52,
          "created_at": "2026-05-15T01:58:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 53,
          "created_at": "2026-05-15T01:58:11Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/tylerjrbuell/reactive-agents-ts",
    "host": "github.com",
    "name": "reactive-agents-ts",
    "owner": "tylerjrbuell"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": "The weighted overall 67 is calibrated to 78 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 67,
            "calibrated": 78,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 78,
      "inputs": {
        "security": 55,
        "vitality": 87,
        "community": 53,
        "governance": 49,
        "calibration": "2026-08-02",
        "engineering": 86,
        "ai_readiness": 71,
        "weighted_overall_raw": 67
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 87,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 78,
            "inputs": {
              "commits_last_year": 3410,
              "human_commit_share": 0.99,
              "days_since_last_push": 7,
              "active_weeks_last_year": 21
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 7 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 7
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "21/52 weeks with commits",
                "points": 14.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 21
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "3410 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 3410
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "exceptional",
            "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": 35,
              "latest_release_tag": "v0.14.0",
              "releases_from_tags": false,
              "days_since_latest_release": 8,
              "mean_days_between_releases": 8.6
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "35 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 35
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 8 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 8
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~8.6 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 8.6
                    }
                  }
                ],
                "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": "exceptional",
            "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": "moderate",
        "name": "Community & Adoption",
        "value": 53,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "at_risk",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 24,
            "inputs": {
              "forks": 4,
              "stars": 19,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "19 stars",
                "points": 20.4,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 19
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "4 forks",
                "points": 4,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": null,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "readme_badge_services": [],
              "has_pull_request_template": true
            },
            "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": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "good",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 67,
            "inputs": {
              "packages": [
                "@reactive-agents/cli",
                "@reactive-agents/cortex",
                "@reactive-agents/a2a",
                "@reactive-agents/core",
                "@reactive-agents/cost",
                "@reactive-agents/eval",
                "@reactive-agents/health",
                "@reactive-agents/memory"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 11005
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "11,005 downloads/month across npm",
                "points": 53.9,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 11005,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "weak",
        "name": "Sustainability & Governance",
        "value": 49,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 15,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 2,
              "top_contributor_share": 0.999
            },
            "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 100% of commits",
                "points": 0,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "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 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "newcomer_pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 58,
            "inputs": {
              "merged_prs": 55,
              "open_issues": 32,
              "closed_issues": 81,
              "prs_merged_7d": null,
              "prs_decided_7d": null,
              "prs_merged_30d": null,
              "prs_decided_30d": null,
              "issue_closed_ratio": 0.717,
              "closed_unmerged_prs": 26,
              "first_time_authors_30d": null,
              "first_time_prs_merged_30d": null,
              "first_time_prs_decided_30d": null
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "72% of issues closed",
                "points": 30.1,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 72
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "55/81 decided PRs merged",
                "points": 20.4,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 55,
                      "decided": 81
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "no first-time contributor's PR decided in 30d",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_newcomer_prs",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 1/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "weak",
            "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": 40,
            "inputs": {
              "followers": 3,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "tylerjrbuell",
              "public_repos": 12,
              "account_age_days": 1795
            },
            "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": "3 followers of tylerjrbuell",
                "points": 4.3,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 3,
                      "login": "tylerjrbuell"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "12 public repos, account ~4 yr old",
                "points": 17.9,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 12
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 4
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "exceptional",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "@reactive-agents/cli",
                "@reactive-agents/cortex",
                "@reactive-agents/a2a",
                "@reactive-agents/core",
                "@reactive-agents/cost",
                "@reactive-agents/eval",
                "@reactive-agents/health",
                "@reactive-agents/memory"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 8
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "8 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 8,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 8 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 8
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "42 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 42
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 86,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "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": "eslint.config.mjs",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.mjs"
                    }
                  }
                ],
                "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": "1 out of 1 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "agent-framework",
                "agent-observability",
                "agent-orchestration",
                "agentic-ai",
                "anthropic",
                "bun",
                "composable",
                "effect-ts",
                "google-ai",
                "llm",
                "multi-agent",
                "ollama",
                "openai",
                "type-safe",
                "typescript",
                "automation",
                "ai-agents",
                "gateway",
                "mcp",
                "streaming"
              ],
              "has_wiki": false,
              "homepage": "https://docs.reactiveagents.dev",
              "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://docs.reactiveagents.dev",
                "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": "20 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "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": "moderate",
        "name": "Security",
        "value": 55,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "weak",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 46,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 4.6
            },
            "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 is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "1 out of 1 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "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 1/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "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 fuzzed",
                "points": 5,
                "status": "met",
                "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": "30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "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": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "162 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Matched the npm:@reactive-agents/cli@0.14.0 runtime dependency closure — what installing the published package pulls in — 233 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:@reactive-agents/cli@0.14.0",
                  "assessed": 233
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 89,
            "inputs": {
              "source": "osv",
              "advisories": 1,
              "affected_packages": 1,
              "assessed_packages": 233,
              "unassessed_packages": 0,
              "affected_by_severity": "moderate 1",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "1 affected: @opentelemetry/core 2.6.0 (moderate 5.3)",
                "points": 14.4,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "@opentelemetry/core 2.6.0 (moderate 5.3)"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "exceptional",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 233,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "exceptional",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 71,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [
                ".github/copilot-instructions.md",
                "AGENTS.md",
                "CLAUDE.md",
                "apps/cortex/AGENTS.md"
              ],
              "agent_instruction_max_bytes": 65593
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": ".github/copilot-instructions.md, AGENTS.md, CLAUDE.md, apps/cortex/AGENTS.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".github/copilot-instructions.md, AGENTS.md, CLAUDE.md, apps/cortex/AGENTS.md"
                    }
                  }
                ],
                "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": "99 of 99 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 99,
                      "sampled": 99
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": true,
              "has_linter_config": true,
              "typecheck_configs": [
                "apps/advocate/tsconfig.json",
                "apps/cli/tsconfig.json",
                "apps/cortex/tsconfig.json",
                "apps/cortex/ui/tsconfig.json",
                "apps/docs/tsconfig.json",
                "apps/examples/tsconfig.json",
                "apps/stackblitz/01-hello-agent/tsconfig.json",
                "apps/stackblitz/02-tool-integration/tsconfig.json",
                "apps/stackblitz/03-strategy-demo/tsconfig.json",
                "docker/signal-mcp/server/tsconfig.json",
                "packages/a2a/tsconfig.json",
                "packages/benchmarks/tsconfig.json",
                "packages/channels/tsconfig.json",
                "packages/compose/tsconfig.json",
                "packages/core/tsconfig.json",
                "packages/cost/tsconfig.json",
                "packages/create-reactive-agent/tsconfig.json",
                "packages/diagnose/tsconfig.json",
                "packages/eval/tsconfig.json",
                "packages/gateway/tsconfig.json",
                "packages/guardrails/tsconfig.json",
                "packages/health/tsconfig.json",
                "packages/identity/tsconfig.json",
                "packages/interaction/tsconfig.json",
                "packages/judge-server/tsconfig.json",
                "packages/llm-provider/tsconfig.json",
                "packages/memory/tsconfig.json",
                "packages/observability/tsconfig.json",
                "packages/observe/tsconfig.json",
                "packages/prompts/tsconfig.json",
                "packages/react/tsconfig.json",
                "packages/reactive-agents/tsconfig.json",
                "packages/reactive-intelligence/tsconfig.json",
                "packages/reasoning/tsconfig.json",
                "packages/replay/tsconfig.json",
                "packages/runtime-shim/tsconfig.json",
                "packages/runtime/tsconfig.json",
                "packages/svelte/tsconfig.json",
                "packages/testing/tsconfig.json",
                "packages/tools/tsconfig.json",
                "packages/trace/tsconfig.json",
                "packages/ui-core/tsconfig.json",
                "packages/verification/tsconfig.json",
                "packages/vue/tsconfig.json",
                "tsconfig.json"
              ],
              "agent_commit_share": 0,
              "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": "eslint.config.mjs",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.mjs"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "apps/advocate/tsconfig.json, apps/cli/tsconfig.json, apps/cortex/tsconfig.json, apps/cortex/ui/tsconfig.json, apps/docs/tsconfig.json, apps/examples/tsconfig.json, apps/stackblitz/01-hello-agent/tsconfig.json, apps/stackblitz/02-tool-integration/tsconfig.json, apps/stackblitz/03-strategy-demo/tsconfig.json, docker/signal-mcp/server/tsconfig.json, packages/a2a/tsconfig.json, packages/benchmarks/tsconfig.json, packages/channels/tsconfig.json, packages/compose/tsconfig.json, packages/core/tsconfig.json, packages/cost/tsconfig.json, packages/create-reactive-agent/tsconfig.json, packages/diagnose/tsconfig.json, packages/eval/tsconfig.json, packages/gateway/tsconfig.json, packages/guardrails/tsconfig.json, packages/health/tsconfig.json, packages/identity/tsconfig.json, packages/interaction/tsconfig.json, packages/judge-server/tsconfig.json, packages/llm-provider/tsconfig.json, packages/memory/tsconfig.json, packages/observability/tsconfig.json, packages/observe/tsconfig.json, packages/prompts/tsconfig.json, packages/react/tsconfig.json, packages/reactive-agents/tsconfig.json, packages/reactive-intelligence/tsconfig.json, packages/reasoning/tsconfig.json, packages/replay/tsconfig.json, packages/runtime-shim/tsconfig.json, packages/runtime/tsconfig.json, packages/svelte/tsconfig.json, packages/testing/tsconfig.json, packages/tools/tsconfig.json, packages/trace/tsconfig.json, packages/ui-core/tsconfig.json, packages/verification/tsconfig.json, packages/vue/tsconfig.json, tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "apps/advocate/tsconfig.json, apps/cli/tsconfig.json, apps/cortex/tsconfig.json, apps/cortex/ui/tsconfig.json, apps/docs/tsconfig.json, apps/examples/tsconfig.json, apps/stackblitz/01-hello-agent/tsconfig.json, apps/stackblitz/02-tool-integration/tsconfig.json, apps/stackblitz/03-strategy-demo/tsconfig.json, docker/signal-mcp/server/tsconfig.json, packages/a2a/tsconfig.json, packages/benchmarks/tsconfig.json, packages/channels/tsconfig.json, packages/compose/tsconfig.json, packages/core/tsconfig.json, packages/cost/tsconfig.json, packages/create-reactive-agent/tsconfig.json, packages/diagnose/tsconfig.json, packages/eval/tsconfig.json, packages/gateway/tsconfig.json, packages/guardrails/tsconfig.json, packages/health/tsconfig.json, packages/identity/tsconfig.json, packages/interaction/tsconfig.json, packages/judge-server/tsconfig.json, packages/llm-provider/tsconfig.json, packages/memory/tsconfig.json, packages/observability/tsconfig.json, packages/observe/tsconfig.json, packages/prompts/tsconfig.json, packages/react/tsconfig.json, packages/reactive-agents/tsconfig.json, packages/reactive-intelligence/tsconfig.json, packages/reasoning/tsconfig.json, packages/replay/tsconfig.json, packages/runtime-shim/tsconfig.json, packages/runtime/tsconfig.json, packages/svelte/tsconfig.json, packages/testing/tsconfig.json, packages/tools/tsconfig.json, packages/trace/tsconfig.json, packages/ui-core/tsconfig.json, packages/verification/tsconfig.json, packages/vue/tsconfig.json, tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "devcontainer, Dockerfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "devcontainer, Dockerfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "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": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "exceptional",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 117970,
              "source_files_sampled": 2346,
              "oversized_source_files": 11
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "11/2346 source files over 60KB",
                "points": 54.7,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 2346,
                      "oversized": 11
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "cookbook",
                "demos",
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "cookbook, demos, examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "cookbook, demos, examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "classification": {
      "labels": [
        "library",
        "framework"
      ],
      "scores": {
        "cli": 2,
        "library": 6,
        "framework": 4,
        "mcp-server": 3
      },
      "primary": "library",
      "evidence": [
        {
          "tier": "distribution",
          "label": "library",
          "source": "registry:npm",
          "weight": 6
        },
        {
          "tier": "structure",
          "label": "mcp-server",
          "source": "mcp_signal",
          "weight": 3
        },
        {
          "tier": "tags",
          "label": "cli",
          "source": "tag:cli",
          "weight": 2
        },
        {
          "tier": "description",
          "label": "framework",
          "source": "description:framework",
          "weight": 2
        },
        {
          "tier": "tags",
          "label": "framework",
          "source": "tag:agent-framework",
          "weight": 2
        }
      ],
      "artifacts": [],
      "confidence": "medium",
      "host_extension": false,
      "runs_as_process": false,
      "consumed_by_code": true
    },
    "metrics_version": "2.3.1"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-30T20:59:44.195726Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/t/tylerjrbuell/reactive-agents-ts.svg",
  "full_name": "tylerjrbuell/reactive-agents-ts",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v2.3.1, schema v0.27.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statisticsnpm.