{
  "snapshot_date": "2026-10-23",
  "scope": "GitHub author search for merged PRs outside repositories owned by mcc0nnell, as returned by connected GitHub search on this date; not an all-time or exhaustive count",
  "method": "Search query author:mcc0nnell is:merged -user:mcc0nnell. Search results inspected; representative PRs directly checked using GitHub PR metadata. No external CI was rerun for this inventory. On October 23, 2026, OpenThread PRs #13624 and #13759 were directly verified as merged and maintainer-approved; no hosted tests were rerun for this update.",
  "external_merged_prs": [
    {
      "repository": "openthread/openthread",
      "number": 13624,
      "title": "[mesh-forwarder] bind 6LoWPAN fragments to datagram source",
      "theme": "Security boundaries",
      "status": "merged",
      "merged_at": "2026-10-23T23:19:47Z",
      "reviewed_by": "jwhui",
      "url": "https://github.com/openthread/openthread/pull/13624"
    },
    {
      "repository": "openthread/openthread",
      "number": 13759,
      "title": "[tests] run multi-PAN RCP unit tests in CI",
      "theme": "Runtime correctness",
      "status": "merged",
      "merged_at": "2026-10-23T23:18:20Z",
      "reviewed_by": "jwhui",
      "url": "https://github.com/openthread/openthread/pull/13759"
    },
    {
      "repository": "lightpanda-io/browser",
      "number": 4130,
      "title": "webdriver: support switching to the current window",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/lightpanda-io/browser/pull/4130"
    },
    {
      "repository": "lightpanda-io/browser",
      "number": 4129,
      "title": "mcp: expose ARIA checked and expanded states in tree",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/lightpanda-io/browser/pull/4129"
    },
    {
      "repository": "SteelCrab/firecrab",
      "number": 197,
      "title": "fix(api): consume host-local MicroRegistry aliases",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/SteelCrab/firecrab/pull/197"
    },
    {
      "repository": "lightpanda-io/browser",
      "number": 4036,
      "title": "fix(accessibility): expose custom ARIA states and focusability",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/lightpanda-io/browser/pull/4036"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 3210,
      "title": "fix(wait_for): find text in dynamically attached iframes",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/3210"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 3212,
      "title": "feat(wait_for): support opt-in visible text matching",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/3212"
    },
    {
      "repository": "lightpanda-io/browser",
      "number": 4023,
      "title": "feat(server): optional Unix-domain socket for CDP",
      "theme": "Systems & IPC",
      "status": "merged",
      "url": "https://github.com/lightpanda-io/browser/pull/4023"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 2901,
      "title": "fix(browser): redact WebSocket headers from connection logs",
      "theme": "Security boundaries",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/2901"
    },
    {
      "repository": "apache/maven",
      "number": 13117,
      "title": "Normalize lazy StAX parse failures in MavenXpp3Reader",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/apache/maven/pull/13117"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 2797,
      "title": "fix(cli): serialize object daemon arguments",
      "theme": "Systems & IPC",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/2797"
    },
    {
      "repository": "apache/terraform-provider-iceberg",
      "number": 106,
      "title": "docs: complete provider configuration and examples",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/apache/terraform-provider-iceberg/pull/106"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 2767,
      "title": "fix(network): enforce URL policy across redirects",
      "theme": "Security boundaries",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/2767"
    },
    {
      "repository": "AOMediaCodec/libavif",
      "number": 3371,
      "title": "ci: attest release artifacts",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/AOMediaCodec/libavif/pull/3371"
    },
    {
      "repository": "ChromeDevTools/chrome-devtools-mcp",
      "number": 2766,
      "title": "fix(daemon): keep fallback socket in private runtime dir",
      "theme": "Security boundaries",
      "status": "merged",
      "url": "https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/2766"
    },
    {
      "repository": "emberjs/ember.js",
      "number": 21618,
      "title": "Keep alpha release token out of push URL",
      "theme": "Security boundaries",
      "status": "merged",
      "url": "https://github.com/emberjs/ember.js/pull/21618"
    },
    {
      "repository": "apache/fineract-consumer-facing",
      "number": 133,
      "title": "Fix/step up action fingerprint overloads",
      "theme": "Security boundaries",
      "status": "merged",
      "url": "https://github.com/apache/fineract-consumer-facing/pull/133"
    },
    {
      "repository": "apache/maven",
      "number": 13040,
      "title": "Fix reactor BOM imports in also-make graph",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/apache/maven/pull/13040"
    },
    {
      "repository": "google/osv-scalibr",
      "number": 2448,
      "title": "fix: restrict JS commit parameters to Git resolutions",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/google/osv-scalibr/pull/2448"
    },
    {
      "repository": "apache/struts",
      "number": 1966,
      "title": "ci: pin Scorecards checkout action by commit",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/apache/struts/pull/1966"
    },
    {
      "repository": "msgpack/msgpack-c",
      "number": 1187,
      "title": "ci: publish SBOMs for release archives",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/msgpack/msgpack-c/pull/1187"
    },
    {
      "repository": "gwtproject/gwt",
      "number": 10409,
      "title": "ci: pin reviewdog binary version",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/gwtproject/gwt/pull/10409"
    },
    {
      "repository": "SteelCrab/firecrab",
      "number": 210,
      "title": "feat(oci): generate SPDX SBOMs during import",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/SteelCrab/firecrab/pull/210"
    },
    {
      "repository": "CycloneDX/cyclonedx-maven-plugin",
      "number": 700,
      "title": "fix: calculate transformer lifecycle per reactor project",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/CycloneDX/cyclonedx-maven-plugin/pull/700"
    },
    {
      "repository": "sandialabs/wiretap",
      "number": 113,
      "title": "Add JSON output to status",
      "theme": "Systems & IPC",
      "status": "merged",
      "url": "https://github.com/sandialabs/wiretap/pull/113"
    },
    {
      "repository": "apache/maven",
      "number": 13039,
      "title": "Fix getDispatchedPaths() leaking mutable nested lists",
      "theme": "Runtime correctness",
      "status": "merged",
      "url": "https://github.com/apache/maven/pull/13039"
    },
    {
      "repository": "sandialabs/atlas-ui-3",
      "number": 886,
      "title": "Fix MCP prompt result text extraction",
      "theme": "Browser internals",
      "status": "merged",
      "url": "https://github.com/sandialabs/atlas-ui-3/pull/886"
    },
    {
      "repository": "SteelCrab/firecrab",
      "number": 211,
      "title": "chore(ci): refresh Clippy warning baseline",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/SteelCrab/firecrab/pull/211"
    },
    {
      "repository": "SteelCrab/firecrab",
      "number": 190,
      "title": "fix(release): add license compliance artifacts",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/SteelCrab/firecrab/pull/190"
    },
    {
      "repository": "SteelCrab/firecrab",
      "number": 189,
      "title": "ci: fail on Clippy warning regressions",
      "theme": "Release assurance",
      "status": "merged",
      "url": "https://github.com/SteelCrab/firecrab/pull/189"
    }
  ],
  "maintainer_adapted_upstream_commits": [
    {
      "repository": "apache/httpd",
      "originating_pr": 749,
      "originating_pr_url": "https://github.com/apache/httpd/pull/749",
      "originating_pr_status": "closed_unmerged",
      "status": "landed_in_trunk_via_maintainer_adaptation",
      "commit": "246ae2739ef8425af1a326a2bbe93548876b6ff7",
      "url": "https://github.com/apache/httpd/commit/246ae2739ef8425af1a326a2bbe93548876b6ff7",
      "landed_at": "2026-09-14T11:05:50Z",
      "maintainer": "Joe Orton",
      "summary": "Extract ap_cstr_stripws() to safely trim empty C strings across response/header paths; add core and proxy regression tests.",
      "verification": "Upstream commit credits Robert McConnell and closes PR #749. PR describes local build, 60/60 unit tests and 6/6 proxy/uWSGI tests; these tests were not rerun for the portfolio.",
      "counted_as_merged_pr": false
    }
  ],
  "total_merged": 31,
  "external_repositories": 16,
  "theme_counts": {
    "Browser internals": 6,
    "Runtime correctness": 8,
    "Systems & IPC": 3,
    "Security boundaries": 6,
    "Release assurance": 8
  },
  "research_in_progress": [],
  "owned_public_projects": [
    {
      "name": "6lowStick",
      "url": "https://github.com/mcc0nnell/6lowstick",
      "summary": "OpenThread POSIX simulation, modeled failover, bounded physical-signal research"
    },
    {
      "name": "Rizzer",
      "url": "https://github.com/mcc0nnell/rizzer",
      "summary": "Coverage-guided native fuzzing on synthetic fixtures"
    },
    {
      "name": "TRONIX",
      "url": "https://github.com/mcc0nnell/tronix",
      "summary": "Experimental C/C++ Celix agent scheduler and MessagePack IPC"
    },
    {
      "name": "WindAnvil Assurance Record",
      "url": "https://github.com/mcc0nnell/windanvil-assurance-record",
      "summary": "Portable fail-closed assertion and evidence-record primitives"
    },
    {
      "name": "TalkPipe MCP",
      "url": "https://github.com/mcc0nnell/talkpipe-mcp",
      "summary": "Restricted deterministic MCP pipeline adapter"
    }
  ],
  "caveats": [
    "Local test counts are claims documented in source PRs, not tests rerun to produce this portfolio.",
    "Merged status does not establish a shipped upstream release.",
    "Private repository sources are intentionally excluded.",
    "6lowStick is simulation-first, not verified physical RF or safety equipment.",
    "Do not infer broad accessibility compliance from narrow browser semantic tests."
  ]
}
