Öffentliches Register
Software-GesundheitsberichtSchema 0.27.0 · Metriken 2.3.1 · 2026-08-01 07:56 UTC

meta-pytorch / tritonparse

TritonParse: A Compiler Tracer, Visualizer, and Reproducer for Triton Kernels

Python · TypeScriptBSD-3-Clause★ 212 Sterne⑂ 26 Forksseit Apr. 2025Auf GitHub ansehen ↗
ArtBibliothekWeboberflächewie das ermittelt wird

meta-pytorch/tritonparse erreicht einen Gesundheitsindex von 91 von 100 und liegt damit im Bereich Exzellent. Am stärksten schneidet es bei Vitality (98/100) ab, am schwächsten bei Sustainability & Governance (62/100). Zuletzt heute aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

91
gesamt / 100
Exzellent

Software-Gesundheitsindex

Metriken werden auf einer standardisierten Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr gewichtetes Mittel, kalibriert auf die Verteilung des öffentlichen Registers, sodass die Stufen Perzentilbedeutung tragen; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze Gefährdet von 34.

91
Außergewöhnlich93-100Die Spitzengruppe des Registers (≈ obere 5 %); erfüllt im Wesentlichen alle geprüften Kriterien
Exzellent80-92Durchgehend stark; geringfügige Lücken
Gut65-79Gesund; Lücken sind begrenzt und beherrschbar
Mittel50-64Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Schwach35-49Wesentliche Schwächen in mehreren Bereichen
Gefährdet20-34Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-19Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Der gewichtete Gesamtwert 77 wird auf der veröffentlichten Indexskala auf 91 kalibriert (Register-Kalibrierung 2026-08-02).

Eigentümerschaft

Meta PyTorchOrganisation
1.390 Follower60 öffentliche Reposseit Juni 2022

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlicht
PyPItritonparse0.5.14.898178vor 21 Tagen

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

98Außergewöhnlich · 21 % des Gesamtindex

Entwicklungsaktivität

97Außergewöhnlich
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 0 Tagen
33.2/36Commit-Rhythmus — 48/52 Wochen mit Commits
18/18Commit-Volumen — 456 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year456
human_commit_share0,9
days_since_last_push0
active_weeks_last_year48

Release-Disziplin

100Außergewöhnlich
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 14 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 21 Tagen
27/27Release-Rhythmus — ein Release etwa alle 29,9 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count14
latest_release_tagv0.5.1
releases_from_tagsnein
days_since_latest_release21
mean_days_between_releases29,9
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

66Gut · 17 % des Gesamtindex
Wie die Bewertung erfolgt
37.7/60Stars — 212 Stars
11.7/25Forks — 26 Forks
3.9/15Watcher — 6 Watcher
Verwendete Eingangsdaten
forks26
stars212
watchers6
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (BSD-3-Clause)
18/18CONTRIBUTING-Leitfaden
13.5/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
readme_badges
has_contributingja
has_issue_templatenein
has_code_of_conductja
readme_badge_services
has_pull_request_templatenein
Wie die Bewertung erfolgt
49.2/80Downloads pro Monat — 4.898 Downloads/Monat über pypi
0/20Abhängige in der Registry — von diesem Ökosystem nicht ausgewiesen
Verwendete Eingangsdaten
packagestritonparse
dependents
ecosystemspypi
total_downloads
monthly_downloads4.898
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Abhängige in der Registry. Die verbleibenden Gewichte wurden renormalisiert.

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

62Mittel · 23 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
5.1/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 77 % der Commits
13.5/13.5Breite der Beitragenden — 21 Beitragende
10/10OpenSSF Scorecard: Contributors — project has 6 contributing companies or organizations
Verwendete Eingangsdaten
bus_factor1
contributors_sampled21
top_contributor_share0,773
Wie die Bewertung erfolgt
29.1/42Issue-Lösungsquote — 69 % der Issues geschlossen
0.4/30PR-Annahme — 4/311 entschiedene PRs gemergt
0/13Newcomer PR acceptance — kein PR eines Erstbeitragenden in 30 Tagen entschieden
13.5/15OpenSSF Scorecard: Code-Review — Found 29/30 approved changesets -- score normalized to 9
Verwendete Eingangsdaten
merged_prs4
open_issues33
closed_issues74
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio0,692
closed_unmerged_prs307
first_time_authors_30d
first_time_prs_merged_30d
first_time_prs_decided_30d
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): newcomer_pr_acceptance. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
22.6/25Reichweite des Inhabers — 1.390 Follower von meta-pytorch
21.3/25Kontohistorie — 60 öffentliche Repos, Kontoalter ca. 4 Jahre
Verwendete Eingangsdaten
followers1.390
owner_typeOrganization
is_verified
owner_loginmeta-pytorch
public_repos60
account_age_days1.513

Paketpflege

100Außergewöhnlich
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 1 Paket(e) auf pypi
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 21 Tagen
20/20Versionshistorie — 178 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagestritonparse
ecosystemspypi
any_deprecatednein
min_days_since_publish21

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

88Exzellent · 19 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 7 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — eslint.config.js
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
0/20OpenSSF Scorecard: CI-Tests — keine Daten
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_configja
has_precommit_confignein
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: CI-Tests. Die verbleibenden Gewichte wurden renormalisiert.

Dokumentation

100Außergewöhnlich
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://meta-pytorch.org/tritonparse/
10/10Repository-Beschreibung
10/10Topics — 9 Topics
10/10Wiki
Verwendete Eingangsdaten
topicscompiler, debugging, interactive-visualization, ir-analysis, pytorch, structured-logging, triton, gpu-kernel, ir-visualization
has_wikija
homepagehttps://meta-pytorch.org/tritonparse/
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

70Gut · 16 % des Gesamtindex
Wie die Bewertung erfolgt
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
0/2.5CI-Tests — keine Daten
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
6.8/7.5Code-Review — Found 29/30 approved changesets -- score normalized to 9
2.5/2.5Contributors — project has 6 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
0/5SAST — no SAST tool detected
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate6,3
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): ci_tests, signed_releases. Die verbleibenden Gewichte wurden renormalisiert.

Abhängigkeits-Advisories

100Außergewöhnlich
Wie die Bewertung erfolgt
35/35Direkte Abhängigkeiten ohne bekannte Advisories — keine direkte Abhängigkeit trägt ein bekanntes Advisory
25/25Indirekte Abhängigkeiten ohne bekannte Advisories — keine indirekte Abhängigkeit trägt ein bekanntes Advisory
0/40Keine offenen Advisories — kein Advisory trägt ein Veröffentlichungsdatum
Verwendete Eingangsdaten
sourceosv
advisories0
affected_packages0
assessed_packages6
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Keine offenen Advisories. Die verbleibenden Gewichte wurden renormalisiert. Abgeglichen wurde die Laufzeit-Abhängigkeitshülle von pypi:tritonparse@0.5.1 — das, was die Installation des veröffentlichten Pakets nach sich zieht — mit 6 Paketen. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Trägt ein bewusst kleines Gewicht (4 %): Agenten-Tooling ist ein echtes Pflegesignal, doch ein Repository ohne jedes Signal kann weiterhin 100/100 erreichen.

67Gut · 4 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungen — keine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
40/40Lesbare Commit-Historie — 90 von 90 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share1
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
18/18Bootstrap mit einem Befehl — Makefile
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — eslint.config.js
11/11Statische Typprüfung — website/tsconfig.json
10/10Reproduzierbare Umgebung — lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
8/8Automatisierte Wartung — 8 der letzten 100 Commits sind automatisierte Abhängigkeits-Updates
1/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilespackage-lock.json
has_dockerfilenein
typed_languagenein
bootstrap_filesMakefile
has_devcontainernein
has_linter_configja
typecheck_configswebsite/tsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0,08
Wie die Bewertung erfolgt
27/45Typprüfbarer Code — Python mit Typprüfungs-Konfiguration (website/tsconfig.json)
54.5/55Handhabbare Dateigrößen — 2/215 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languagePython
largest_source_bytes85.231
source_files_sampled215
oversized_source_files2

Eckdaten

212GitHub-Sterne
21Mitwirkende
456Commits, letzte 12 Monate
0Tage seit letztem Push
14Releases
1Bus-Faktor
33offene Issues
npm, PyPIPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

Weitere Details

Stern- und Fork-Verlauf 0 ★ / 26 ⇿
0Sterne
26Forks
12Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

0510152025302622025-062025-112026-05
Major 0Minor 4Patch 8
OpenSSF Scorecard 6.3 / 10
6.3Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-08-01 07:56 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
k. A.CI-Testsno pull request found
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
9Code-ReviewFound 29/30 approved changesets -- score normalized to 9
10Contributorsproject has 6 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
1Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 1
0SASTno SAST tool detected
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Direkte Abhängigkeiten 14
RegistryPaketVersionsvorgabeManifest
PyPIorjson>=3.9pyproject.toml
PyPIrich>=13.0pyproject.toml
PyPIzstandard>=0.19.0pyproject.toml
npm@heroicons/react^2.2.0website/package.json
npm@monaco-editor/react^4.7.0website/package.json
npm@types/react-syntax-highlighter^15.5.13website/package.json
npmclp-ffi-js^0.7.0-beta.3website/package.json
npmmonaco-editor^0.55.1website/package.json
npmprismjs^1.30.0website/package.json
npmreact^19.2.7website/package.json
npmreact-dom^19.2.7website/package.json
npmreact-resizable-panels^4.12.0website/package.json
npmreact-syntax-highlighter^16.1.1website/package.json
npmreact-window^2.2.7website/package.json
Alle Abhängigkeiten 258

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 14 direkte und 244 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
npm@heroicons/react2.2.0direkt
npm@monaco-editor/react4.7.0direkt
npm@types/react-syntax-highlighter15.5.13direkt
npmclp-ffi-js0.7.0-beta.3direkt
npmmonaco-editor0.55.1direkt
npmprismjs1.30.0direkt
npmreact19.2.7direkt
npmreact-dom19.2.7direkt
npmreact-resizable-panels4.12.0direkt
npmreact-syntax-highlighter16.1.1direkt
npmreact-window2.2.7direkt
PyPIorjsondirekt
PyPIrichdirekt
PyPIzstandarddirekt
npm@babel/code-frame7.29.7indirekt
npm@babel/compat-data7.29.7indirekt
npm@babel/core7.29.7indirekt
npm@babel/generator7.29.7indirekt
npm@babel/helper-compilation-targets7.29.7indirekt
npm@babel/helper-globals7.29.7indirekt
npm@babel/helper-module-imports7.29.7indirekt
npm@babel/helper-module-transforms7.29.7indirekt
npm@babel/helper-string-parser7.29.7indirekt
npm@babel/helper-validator-identifier7.29.7indirekt
npm@babel/helper-validator-option7.29.7indirekt
npm@babel/helpers7.29.7indirekt
npm@babel/parser7.29.7indirekt
npm@babel/runtime7.29.2indirekt
npm@babel/template7.29.7indirekt
npm@babel/traverse7.29.7indirekt
npm@babel/types7.29.7indirekt
npm@emnapi/core1.11.1indirekt
npm@emnapi/runtime1.11.1indirekt
npm@emnapi/wasi-threads1.2.2indirekt
npm@eslint-community/eslint-utils4.9.1indirekt
npm@eslint-community/regexpp4.12.2indirekt
npm@eslint/config-array0.23.5indirekt
npm@eslint/config-helpers0.6.0indirekt
npm@eslint/core1.2.1indirekt
npm@eslint/js10.0.1indirekt
npm@eslint/object-schema3.0.5indirekt
npm@eslint/plugin-kit0.7.2indirekt
npm@humanfs/core0.19.1indirekt
npm@humanfs/node0.16.7indirekt
npm@humanwhocodes/module-importer1.0.1indirekt
npm@humanwhocodes/retry0.4.3indirekt
npm@jridgewell/gen-mapping0.3.13indirekt
npm@jridgewell/remapping2.3.5indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/sourcemap-codec1.5.5indirekt
npm@jridgewell/trace-mapping0.3.31indirekt
npm@monaco-editor/loader1.7.0indirekt
npm@napi-rs/wasm-runtime1.1.6indirekt
npm@oxc-project/types0.137.0indirekt
npm@rolldown/binding-android-arm641.1.3indirekt
npm@rolldown/binding-darwin-arm641.1.3indirekt
npm@rolldown/binding-darwin-x641.1.3indirekt
npm@rolldown/binding-freebsd-x641.1.3indirekt
npm@rolldown/binding-linux-arm-gnueabihf1.1.3indirekt
npm@rolldown/binding-linux-arm64-gnu1.1.3indirekt
npm@rolldown/binding-linux-arm64-musl1.1.3indirekt
npm@rolldown/binding-linux-ppc64-gnu1.1.3indirekt
npm@rolldown/binding-linux-s390x-gnu1.1.3indirekt
npm@rolldown/binding-linux-x64-gnu1.1.3indirekt
npm@rolldown/binding-linux-x64-musl1.1.3indirekt
npm@rolldown/binding-openharmony-arm641.1.3indirekt
npm@rolldown/binding-wasm32-wasi1.1.3indirekt
npm@rolldown/binding-win32-arm64-msvc1.1.3indirekt
npm@rolldown/binding-win32-x64-msvc1.1.3indirekt
npm@rolldown/pluginutils1.0.1indirekt
npm@tailwindcss/node4.3.2indirekt
npm@tailwindcss/oxide4.3.2indirekt
npm@tailwindcss/oxide-android-arm644.3.2indirekt
npm@tailwindcss/oxide-darwin-arm644.3.2indirekt
npm@tailwindcss/oxide-darwin-x644.3.2indirekt
npm@tailwindcss/oxide-freebsd-x644.3.2indirekt
npm@tailwindcss/oxide-linux-arm-gnueabihf4.3.2indirekt
npm@tailwindcss/oxide-linux-arm64-gnu4.3.2indirekt
npm@tailwindcss/oxide-linux-arm64-musl4.3.2indirekt
npm@tailwindcss/oxide-linux-x64-gnu4.3.2indirekt
npm@tailwindcss/oxide-linux-x64-musl4.3.2indirekt
npm@tailwindcss/oxide-wasm32-wasi4.3.2indirekt
npm@tailwindcss/oxide-win32-arm64-msvc4.3.2indirekt
npm@tailwindcss/oxide-win32-x64-msvc4.3.2indirekt
npm@tailwindcss/vite4.3.2indirekt
npm@tybys/wasm-util0.10.3indirekt
npm@types/esrecurse4.3.1indirekt
npm@types/estree1.0.8indirekt
npm@types/hast3.0.4indirekt
npm@types/json-schema7.0.15indirekt
npm@types/node26.1.0indirekt
npm@types/prismjs1.26.6indirekt
npm@types/react19.2.17indirekt
npm@types/react-dom19.2.3indirekt
npm@types/trusted-types2.0.7indirekt
npm@types/unist2.0.11indirekt
npm@types/unist3.0.3indirekt
npm@typescript-eslint/eslint-plugin8.62.1indirekt
npm@typescript-eslint/parser8.62.1indirekt
npm@typescript-eslint/project-service8.62.1indirekt
npm@typescript-eslint/scope-manager8.62.1indirekt
npm@typescript-eslint/tsconfig-utils8.62.1indirekt
npm@typescript-eslint/type-utils8.62.1indirekt
npm@typescript-eslint/types8.62.1indirekt
npm@typescript-eslint/typescript-estree8.62.1indirekt
npm@typescript-eslint/utils8.62.1indirekt
npm@typescript-eslint/visitor-keys8.62.1indirekt
npm@vitejs/plugin-react6.0.3indirekt
npmacorn8.16.0indirekt
npmacorn-jsx5.3.2indirekt
npmajv6.14.0indirekt
npmautoprefixer10.5.2indirekt
npmbalanced-match4.0.4indirekt
npmbaseline-browser-mapping2.10.40indirekt
npmbrace-expansion5.0.7indirekt
npmbrowserslist4.28.4indirekt
npmcaniuse-lite1.0.30001800indirekt
npmcharacter-entities2.0.2indirekt
npmcharacter-entities-legacy3.0.0indirekt
npmcharacter-reference-invalid2.0.1indirekt
npmcomma-separated-tokens2.0.3indirekt
npmconvert-source-map2.0.0indirekt
npmcross-spawn7.0.6indirekt
npmcsstype3.2.3indirekt
npmdebug4.4.3indirekt
npmdecode-named-character-reference1.3.0indirekt
npmdeep-is0.1.4indirekt
npmdetect-libc2.1.2indirekt
npmdompurify3.4.11indirekt
npmelectron-to-chromium1.5.382indirekt
npmenhanced-resolve5.21.6indirekt
npmescalade3.2.0indirekt
npmescape-string-regexp4.0.0indirekt
npmeslint10.6.0indirekt
npmeslint-plugin-react-hooks7.1.0-canary-404b38c7-20260408indirekt
npmeslint-plugin-react-refresh0.5.3indirekt
npmeslint-scope9.1.2indirekt
npmeslint-visitor-keys3.4.3indirekt
npmeslint-visitor-keys5.0.1indirekt
npmespree11.2.0indirekt
npmesquery1.7.0indirekt
npmesrecurse4.3.0indirekt
npmestraverse5.3.0indirekt
npmesutils2.0.3indirekt
npmfast-deep-equal3.1.3indirekt
npmfast-json-stable-stringify2.1.0indirekt
npmfast-levenshtein2.0.6indirekt
npmfault1.0.4indirekt
npmfdir6.5.0indirekt
npmfile-entry-cache8.0.0indirekt
npmfind-up5.0.0indirekt
npmflat-cache4.0.1indirekt
npmflatted3.4.2indirekt
npmformat0.2.2indirekt
npmfraction.js5.3.4indirekt
npmfsevents2.3.3indirekt
npmgensync1.0.0-beta.2indirekt
npmglob-parent6.0.2indirekt
npmglobals17.7.0indirekt
npmgraceful-fs4.2.11indirekt
npmhast-util-parse-selector4.0.0indirekt
npmhastscript9.0.1indirekt
npmhermes-estree0.25.1indirekt
npmhermes-parser0.25.1indirekt
npmhighlight.js10.7.3indirekt
npmhighlightjs-vue1.0.0indirekt
npmignore5.3.2indirekt
npmignore7.0.5indirekt
npmimurmurhash0.1.4indirekt
npmis-alphabetical2.0.1indirekt
npmis-alphanumerical2.0.1indirekt
npmis-decimal2.0.1indirekt
npmis-extglob2.1.1indirekt
npmis-glob4.0.3indirekt
npmis-hexadecimal2.0.1indirekt
npmisexe2.0.0indirekt
npmjiti2.7.0indirekt
npmjs-tokens4.0.0indirekt
npmjsesc3.1.0indirekt
npmjson-buffer3.0.1indirekt
npmjson-schema-traverse0.4.1indirekt
npmjson-stable-stringify-without-jsonify1.0.1indirekt
npmjson52.2.3indirekt
npmkeyv4.5.4indirekt
npmlevn0.4.1indirekt
npmlightningcss1.32.0indirekt
npmlightningcss-android-arm641.32.0indirekt
npmlightningcss-darwin-arm641.32.0indirekt
npmlightningcss-darwin-x641.32.0indirekt
npmlightningcss-freebsd-x641.32.0indirekt
npmlightningcss-linux-arm-gnueabihf1.32.0indirekt
npmlightningcss-linux-arm64-gnu1.32.0indirekt
npmlightningcss-linux-arm64-musl1.32.0indirekt
npmlightningcss-linux-x64-gnu1.32.0indirekt
npmlightningcss-linux-x64-musl1.32.0indirekt
npmlightningcss-win32-arm64-msvc1.32.0indirekt
npmlightningcss-win32-x64-msvc1.32.0indirekt
npmlocate-path6.0.0indirekt
npmlowlight1.20.0indirekt
npmlru-cache5.1.1indirekt
npmmagic-string0.30.21indirekt
npmmarked14.0.0indirekt
npmminimatch10.2.5indirekt
npmms2.1.3indirekt
npmnanoid3.3.16indirekt
npmnatural-compare1.4.0indirekt
npmnode-releases2.0.50indirekt
npmoptionator0.9.4indirekt
npmp-limit3.1.0indirekt
npmp-locate5.0.0indirekt
npmparse-entities4.0.2indirekt
npmpath-exists4.0.0indirekt
npmpath-key3.1.1indirekt
npmpicocolors1.1.1indirekt
npmpicomatch4.0.4indirekt
npmpostcss8.5.25indirekt
npmpostcss-value-parser4.2.0indirekt
npmprelude-ls1.2.1indirekt
npmproperty-information7.1.0indirekt
npmpunycode2.3.1indirekt
npmrefractor5.0.0indirekt
npmrolldown1.1.3indirekt
npmscheduler0.27.0indirekt
npmsemver6.3.1indirekt
npmsemver7.8.5indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex3.0.0indirekt
npmsource-map-js1.2.1indirekt
npmspace-separated-tokens2.0.2indirekt
npmstate-local1.0.7indirekt
npmtailwindcss4.3.2indirekt
npmtapable2.3.3indirekt
npmtinyglobby0.2.17indirekt
npmts-api-utils2.5.0indirekt
npmtslib2.8.1indirekt
npmtype-check0.4.0indirekt
npmtypescript6.0.3indirekt
npmtypescript-eslint8.62.1indirekt
npmundici-types8.3.0indirekt
npmupdate-browserslist-db1.2.3indirekt
npmuri-js4.4.1indirekt
npmvite8.1.2indirekt
npmwhich2.0.2indirekt
npmword-wrap1.2.5indirekt
npmyallist3.1.1indirekt
npmyocto-queue0.1.0indirekt
npmzod4.3.6indirekt
npmzod-validation-error4.0.2indirekt
PyPIcoverageindirekt
PyPIparameterizedindirekt
PyPIpytorch-tritonindirekt
PyPIruff0.16.0indirekt
PyPIruff-api0.2.0indirekt
PyPIsetuptoolsindirekt
PyPIsetuptools-scmindirekt
PyPItritonindirekt
PyPIufmt2.9.0indirekt
PyPIusort1.1.0indirekt
Abhängigkeits-Advisories 0

Die Installation von pypi:tritonparse@0.5.1 zieht 6 Pakete nach sich, direkt und transitiv: 0 tragen bekannte Advisories, davon 0 direkte Abhängigkeiten.

Keine bekannten Advisories betreffen die bewerteten Abhängigkeiten.

Ein Advisory bedeutet, dass die im Abhängigkeitsgraphen erfasste Version in den betroffenen Bereich eines Advisories fällt. Erreichbarkeit wird nicht analysiert, und der Graph enthält Entwicklungs- und Test-Pins — ein Fund kann das Werkzeug betreffen und nicht die ausgelieferte Software.

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "compiler",
        "debugging",
        "interactive-visualization",
        "ir-analysis",
        "pytorch",
        "structured-logging",
        "triton",
        "gpu-kernel",
        "ir-visualization"
      ],
      "is_fork": false,
      "size_kb": 4803,
      "has_wiki": true,
      "homepage": "https://meta-pytorch.org/tritonparse/",
      "languages": {
        "CSS": 2662,
        "HTML": 750,
        "Sass": 3903,
        "Shell": 84061,
        "Python": 1849360,
        "Makefile": 2725,
        "JavaScript": 6956,
        "TypeScript": 293307
      },
      "pushed_at": "2026-07-31T14:36:13Z",
      "created_at": "2025-04-30T20:37:26Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-31T14:37:03Z",
      "description": "TritonParse: A Compiler Tracer, Visualizer, and Reproducer for Triton Kernels",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "BSD-3-Clause",
      "default_branch": "main",
      "license_spdx_raw": "BSD-3-Clause",
      "primary_language": "Python",
      "significant_languages": [
        "Python",
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://pytorch.org",
      "name": "Meta PyTorch",
      "type": "Organization",
      "login": "meta-pytorch",
      "company": null,
      "location": null,
      "followers": 1390,
      "avatar_url": "https://avatars.githubusercontent.com/u/107212512?v=4",
      "created_at": "2022-06-09T18:30:11Z",
      "is_verified": null,
      "public_repos": 60,
      "account_age_days": 1513
    },
    "license": {
      "state": "standard",
      "spdx_id": "BSD-3-Clause",
      "raw_spdx": "BSD-3-Clause",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.5.1",
          "kind": "patch",
          "published_at": "2026-07-10T19:16:05Z"
        },
        {
          "tag": "v0.5.0",
          "kind": "minor",
          "published_at": "2026-06-10T03:36:37Z"
        },
        {
          "tag": "v0.4.4",
          "kind": "patch",
          "published_at": "2026-04-23T03:32:17Z"
        },
        {
          "tag": "v0.4.3",
          "kind": "patch",
          "published_at": "2026-04-08T23:24:20Z"
        },
        {
          "tag": "v0.4.2",
          "kind": "patch",
          "published_at": "2026-04-01T02:33:27Z"
        },
        {
          "tag": "v0.4.1",
          "kind": "patch",
          "published_at": "2026-02-25T18:56:57Z"
        },
        {
          "tag": "v0.4.0",
          "kind": "minor",
          "published_at": "2026-01-22T18:07:22Z"
        },
        {
          "tag": "v0.3.2",
          "kind": "patch",
          "published_at": "2025-12-26T18:12:40Z"
        },
        {
          "tag": "v0.3.1",
          "kind": "patch",
          "published_at": "2025-11-06T03:13:06Z"
        },
        {
          "tag": "v0.3.0",
          "kind": "minor",
          "published_at": "2025-10-15T03:34:52Z"
        },
        {
          "tag": "v0.2.3",
          "kind": "patch",
          "published_at": "2025-09-19T20:26:46Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2025-09-11T23:08:51Z"
        },
        {
          "tag": "v0.1.1",
          "kind": "patch",
          "published_at": "2025-07-25T17:52:57Z"
        },
        {
          "tag": "v0.1.0",
          "kind": "minor",
          "published_at": "2025-07-21T19:05:18Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "e37aed84a05e4a6020ef7b3f7cc7ad45d934a451",
          "body": "Summary:\nBumps [postcss](https://github.com/postcss/postcss) from 8.5.16 to 8.5.25.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a href=\"https://github.com/postcss/postcss/releases\">postcss's releases</a>.</em></p>\n<blockquote>\n<h2>8.5.25</h2>\n<ul>\n<li>Fixed 8.5.17 visitor regress\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/420\n\nReviewed By: xuzhao9\n\nDifferential Revision: D114271578\n\nPulled By: FindHao\n\nfbshipit-source-id: d92848e1a20a93441b35fb4455c49984c1f8f9bb",
          "is_bot": true,
          "headline": "Bump postcss from 8.5.16 to 8.5.25 in /website (#420)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-31T14:34:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0410aeff334647225d0c60c1262fded61d568ebf",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/419\n\nPin the standalone Ruff CLI and explicitly preserve the pre-0.16 default rule set so upstream default-rule changes cannot silently redefine the OSS lint policy.\n\nSeparate formatting and linting targets, and make ch\n[…]\nsts for command construction and tool selection, and update the formatting guide.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D114009567\n\nfbshipit-source-id: 8ebd136f0fb1c77c0e253163ff2d2f63bf077045",
          "is_bot": false,
          "headline": "Stabilize OSS Python lint checks (#419)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-07-30T20:33:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0793c086714c53d78b617daf81552dda08878531",
          "body": "Summary:\nAdd a portable `CodexClient` implementation for non-interactive, read-only analysis. The client sends prompts through stdin, maps system guidance to invocation-scoped developer instructions, disables mutable agent features, and retries only transient capacity failures.\n\nUse Meta trusted sub\n[…]\nion internally while preserving an OSS fallback that uses a shell-free argv list.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D113447666\n\nfbshipit-source-id: 105f66fe933cd8757bcc2653c221dd5cac7f01e6",
          "is_bot": false,
          "headline": "Add a read-only Codex client to `tritonparse.ai`",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-07-29T00:17:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46310cf40b14a02ab12f725dca667f93025266f6",
          "body": "Reviewed By: FindHao\n\nDifferential Revision: D110480523\n\nfbshipit-source-id: b57c8872e15c28dee2407ac7290711cba9e44dc1",
          "is_bot": false,
          "headline": "Fix 2 broken tests",
          "author_name": "generatedunixname2012458493028417",
          "author_login": null,
          "committed_at": "2026-07-15T03:35:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fafad5f60a26f09ee8e8ea3b5c1949ba27d336e2",
          "body": "…olve relative imports on disk\n\nSummary:\nCOPY/embed-mode reproducers could fail to run standalone due to two import-handling bugs:\n\n1. `get_dependent_source_map` emitted `from <module> import <name>` even when\n   `<name>` had already been extracted and embedded as a function definition.\n   When the \n[…]\ne relative\n   imports (level > 0) against the importing file's directory on disk.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D111381394\n\nfbshipit-source-id: 7e6b5a5fd1deab94ee6f80cd410fa886593facb9",
          "is_bot": false,
          "headline": "Make embedded reproducers self-contained: prune inlined imports + res…",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-07-10T19:00:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "81cc7847dddd7a4c372a0662e5e5b8990dcdf10e",
          "body": "Summary:\nExtends the tritonparse analyzer registry to support **launch-level** analyzers (results depend on each launch's grid + input sizes) alongside the existing **compile-level** analyzers, and migrates `roofline` from a special-cased emitter into the registry.\n\n**`backend.py`**\n- Replaces `NON_\n[…]\nb.com/intern/devai/devmate/inspector/?id=ce8f88eb-f117-4938-b31e-c7f956b82e88)\n\nReviewed By: bhuang7477\n\nDifferential Revision: D110210549\n\nfbshipit-source-id: c9160a2f7d065886b7105820252850d5c55c920a",
          "is_bot": false,
          "headline": "Support launch-level analyzers in registry",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-07-01T22:09:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cec214e9f0837556af3c8eefb09d742806231275",
          "body": "Summary:\nBumps the website-all group in /website with 2 updates: [types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).\n\nUpdates `types/node` from 26.0.1 to 26.1.0\n<details>\n<summary>Commits</summary>\n\n[…]\nlved: https://github.com/meta-pytorch/tritonparse/pull/418\n\nReviewed By: bhuang7477\n\nDifferential Revision: D110336466\n\nPulled By: FindHao\n\nfbshipit-source-id: 523d1526963e8ae326b9cc84cf4d103f13576abb",
          "is_bot": true,
          "headline": "Bump the website-all group in /website with 2 updates (#418)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-01T21:53:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9364b967bf753dc038bfb316263176dc518ad207",
          "body": "Summary:\nRefreshes the `website/` npm dependencies to current releases. This rolls in the security fixes for the open Dependabot alerts plus routine bumps of the build/lint toolchain.\n\nSecurity fixes (Dependabot alerts):\n- Bumps the `monaco-editor` -> `dompurify` override in `website/package.json` f\n[…]\n` was regenerated to match (`npm install --package-lock-only` + `npm audit fix`).\n\nReviewed By: xuzhao9\n\nDifferential Revision: D110199678\n\nfbshipit-source-id: c8a1f0ffb20fff68fbd24b3059546e2295aec7ec",
          "is_bot": false,
          "headline": "Bump website npm dependencies (clears Dependabot alerts)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-06-30T17:11:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "36669076711035d75ada28f01ad83ea8472db127",
          "body": "Summary:\nSurfaces the per-launch `roofline` event (added in the previous diff) in the\nKernel Overview page, in two tiers:\n\n- RooflineSummary (Tier 1): the launch-invariant character — is_gemm, arithmetic\n  intensity, bytes/FLOPs per CTA — plus aggregate stats across launches (count,\n  total bytes mo\n[…]\ner-launch kernel durations\nthe trace does not capture (a profiler / NCU concern).\n\nReviewed By: xuzhao9\n\nDifferential Revision: D110110473\n\nfbshipit-source-id: 4a5a9531aaac291182329d58a2cb65a178d16aca",
          "is_bot": false,
          "headline": "tritonparse: show per-launch roofline in the web UI",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-06-30T04:38:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7b2da36963d61c14cb6637908647ed137db4bf94",
          "body": "Summary:\nRoofline (global-memory bytes moved, plus FLOPs / arithmetic intensity for GEMM)\nis a per-LAUNCH quantity: one compiled kernel is launched many times with\ndifferent grids and input sizes, so the total bytes moved differs per launch.\nThe previous static estimate lived in the per-compilation \n[…]\non; reverted the roofline\n  additions to ir_analysis.schema.json.\n- docs updated.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D110110450\n\nfbshipit-source-id: 35c6654bbe74a66ac311154a2d6ad7a8729402bf",
          "is_bot": false,
          "headline": "tritonparse: add per-launch roofline event",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-06-30T04:38:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1de8f1705da00deb73573b6cb5123f7ff7d7dd3a",
          "body": "Summary:\nWhen `nvdisasm` emits an inlined call stack for a SASS instruction, it prints one `//## File` comment per inlined frame, ordered innermost-first, e.g.:\n\n```\n//## File \".../blackwell_fa_ws_pipelined_persistent.py\", line 2005 inlined at \".../blackwell_fa_ws_pipelined_persistent.py\", line 2452\n[…]\nckwell FA trace, this corrects attribution for 1306 of 3768 SASS instructions.\n\nReviewed By: bhuang7477\n\nDifferential Revision: D109761445\n\nfbshipit-source-id: 66b83dc982ab34d68937c44c4134004a413051dc",
          "is_bot": false,
          "headline": "Fix SASS source mapping to use innermost inlined frame",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-06-26T01:59:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8ab60d0d2bae5072b7617bc24119e7ca14645fc3",
          "body": "…roved AI prompts\n\nSummary:\nThree related changes to the compat builder that improve AI fix reliability, validated on two real regression cases (vLLM DeepSeek MoE perf regression and Inductor `test_max_pool2d_with_indices_backward2` numeric regression).\n\n**Build error → log file:** Instead of trunca\n[…]\n`gcc`/`g++` instead of conda `clang++`, matching the `bisect_llvm.sh` workaround.\n\nReviewed By: FindHao\n\nDifferential Revision: D106855115\n\nfbshipit-source-id: 385860edb8630c267175c35052f29c1129ddba7b",
          "is_bot": false,
          "headline": "Compat builder: verify-and-retry loop, build error log files, and imp…",
          "author_name": "Prithvi Patel",
          "author_login": "prithvip0524",
          "committed_at": "2026-06-09T10:49:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2f9f50693d60a0efffeada99d9260803adfb82f5",
          "body": "…llvm.sh\n\nSummary: Adds debug logging to the Claude CLI client for better diagnostics during AI fix attempts. Fixes a missing `header_skipped = True` assignment in `pair_tester.py`. Updates `bisect_llvm.sh` to optionally allow using gcc as the compiler\n\nReviewed By: FindHao\n\nDifferential Revision: D106855103\n\nfbshipit-source-id: a7b5e253e179f43f05ea2a104d2b70ee5910ce6a",
          "is_bot": false,
          "headline": "Add debug logging, pair_tester bugfix, and gcc workaround for bisect_…",
          "author_name": "Prithvi Patel",
          "author_login": "prithvip0524",
          "committed_at": "2026-06-09T10:49:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "200e9651da74e951bc043dd76c71a1a99a55fa54",
          "body": "Summary:\nBumps the website-all group in /website with 12 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.5` | `19.2.7` |\n| [types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19\n[…]\n2450</a>) (<a href=\"https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217\">e8e9a34</a>)</li>\n<li><strong>html:</strong> handle trailing slash paths in transformIndexHtml (<a …",
          "is_bot": true,
          "headline": "Bump the website-all group in /website with 12 updates (#416)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-03T16:54:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dd0cdf2bf35286a1824cec904d2e1a6eba2e4d82",
          "body": "…413)\n\nSummary:\nTritonParse has finished the universal backend refactoring. New backends can be integrated without modifying shared core code. This PR adds integration guidelines for new backend developers and provides a complete example based on Ascend NPU to demonstrate the full backend access pro\n[…]\n resolved: https://github.com/meta-pytorch/tritonparse/pull/413\n\nReviewed By: wychi\n\nDifferential Revision: D106458975\n\nPulled By: FindHao\n\nfbshipit-source-id: eb3faee7f43023b81c9b838c48326ee47a0b313a",
          "is_bot": false,
          "headline": "Add multi-backend support guidelines and Ascend practical examples (#…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-27T14:56:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "04de03c186a6ecb3c70999a645245d87264b2e61",
          "body": "…I Renaming, Docstring & Type Hint Unification (#414)\n\nSummary:\nThis PR cleans up internal consistency in the backend adapter layer across three focused commits:\n\n1. simplify registry implementations and analyzer internals\n2. clarify adapter listing APIs and update call sites\n3. unify docstrings, ty\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/414\n\nReviewed By: xuzhao9\n\nDifferential Revision: D106383357\n\nPulled By: FindHao\n\nfbshipit-source-id: e161ebe491dbc09e47c74881de1befaac81da831",
          "is_bot": false,
          "headline": "backend.py Internal Consistency Cleanup — Registry Simplification, AP…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-26T17:45:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "265d8db08cc494996c9370d7506375974d35a0f7",
          "body": "… Isolation Tests (#411)\n\nSummary:\n## Context\n\n- **Preceding PR**: https://github.com/meta-pytorch/tritonparse/pull/409 (Registry Architecture Refactor — Eliminate Circular Dependencies & Introduce Instance-Level Isolation)\n\nDuring the review of the preceding PR, the question arose whether `procedur\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/411\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D105967884\n\nPulled By: FindHao\n\nfbshipit-source-id: 9618af7621d58aa42cf3dc8185225509683fdc0c",
          "is_bot": false,
          "headline": "Introduce AnalyzerContext to Unify Analyzer Signatures & Add Registry…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-22T16:51:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fa20ff90728d8bb58df27e69de42c55a24e64e37",
          "body": "Summary:\nDrop the `TORCHINDUCTOR_WORKER_START=spawn` workaround attempted in the previous version of this diff and set `TORCHINDUCTOR_COMPILE_THREADS=1` instead. Inductor now compiles Triton kernels inline in the main process, so the test no longer touches the compile-worker pool that races with ups\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/412\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D105902628\n\nPulled By: FindHao\n\nfbshipit-source-id: 9d0821f6b24c013c5e5a11e65f462bafb48dba4e",
          "is_bot": false,
          "headline": "Compile inline in main process for GPU multiprocess inductor test (#412)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-21T22:28:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46a25f662e464b533ca5b80b845550dcee370b40",
          "body": "Summary:\n`structured_logging.py` is loaded during `import triton` via `triton/fb/config_backend/configs.py:27`, which imports `tritonparse.structured_logging` at module top. Since D100891381 made `import torch` unconditional at the top of `structured_logging.py`, this creates a circular import path:\n[…]\nitonparse diff` CLI subcommand and tests respectively — so they remain unchanged.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D105975165\n\nfbshipit-source-id: dcf63261964ef0b04f2d190c322296c9bdbdc6b2",
          "is_bot": false,
          "headline": "Make torch import lazy in structured_logging.py to avoid circular import",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-21T18:52:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "60969bc1067941dc3a737e2672d16f802219899a",
          "body": "…ges` (#408)\n\nSummary:\n## Background\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n- **Prior PRs**:\n  - https://github.com/meta-pytorch/tritonparse/pull/387 (Reader-side infrastructure & generic parse logic)\n  - https://github.com/meta-pytorch/tritonparse/pull/394 (Parser dispat\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/408\n\nReviewed By: xuzhao9\n\nDifferential Revision: D105702781\n\nPulled By: FindHao\n\nfbshipit-source-id: 139e457bb158b8676e7c990a7ae62e11e6faf5f1",
          "is_bot": false,
          "headline": "Frontend Generalization — Eliminate Hardcoded Stage Names via `ir_sta…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-20T16:24:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bc171126d4277c38174586441b18f90b4c23555b",
          "body": "…troduce Instance-Level Isolation (#409)\n\nSummary:\n## Background\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n\nThis PR contains two core refactors that completely resolve the circular dependency between `backend.py`, `ir_analysis.py`, `ir_parser.py`, and `shared_vars.py`, and t\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/409\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D105703151\n\nPulled By: FindHao\n\nfbshipit-source-id: 016286b0ad6c9be4d47adecd998281091d99fdcc",
          "is_bot": false,
          "headline": "Registry Architecture Refactor — Eliminate Circular Dependencies & In…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-19T20:26:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "edbbde446a09d72b7bbe6cb945d196378b288367",
          "body": "Summary:\n## Background\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n- **Prior PRs**:\n  - https://github.com/meta-pytorch/tritonparse/pull/387 (Reader-side infrastructure & generic parse logic)\n  - https://github.com/meta-pytorch/tritonparse/pull/394 (Parser dispatch refactoring\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/406\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D105655812\n\nPulled By: FindHao\n\nfbshipit-source-id: b58765df73a7ddc0af797186792410a887366b03",
          "is_bot": false,
          "headline": "Trace Enhancement — Data Foundation for Frontend Generalization (#406)",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-19T20:26:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a99cc139c17130387c6b5e5f516b9e3fea8b961a",
          "body": "Summary:\nThe tritonparse.parse.ir_analysis module previously ran FileCheck binary detection at module import time, emitting a WARNING log message (\"FileCheck binary not found...\") whenever the binary was absent. This warning appeared in unrelated tests (e.g. CUTracer datarace tests) because importin\n[…]\numers that import tritonparse.parse modules but never use procedure detection.\n\nReviewed By: peiying779\n\nDifferential Revision: D104318541\n\nfbshipit-source-id: fd815c0f98a55f429276605ecd2cafbac6db5fff",
          "is_bot": false,
          "headline": "Defer FileCheck binary detection to first use in ir_analysis",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-14T02:14:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f93263f6ef3659e544e77a4e9c78bc833f6ae7e4",
          "body": "… (#404)\n\nSummary:\n## Background\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n- **Prior PRs**:\n  - https://github.com/meta-pytorch/tritonparse/pull/387 (Reader-side infrastructure & generic parse logic)\n  - https://github.com/meta-pytorch/tritonparse/pull/394 (Parser dispatch r\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/404\n\nReviewed By: xuzhao9\n\nDifferential Revision: D105009394\n\nPulled By: FindHao\n\nfbshipit-source-id: 45dca717b8494dab9020cfa0232c75ff78a2159a",
          "is_bot": false,
          "headline": "Reproducer Migration — Move Backend Hardcodes to Adapter-Driven Logic…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-14T02:04:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3a9f27a2852ae6b4996cfaaba2156cf3f31b1588",
          "body": "Summary:\nAfter the cross-PID merge in `parse_single_rank` (D104316193), the same compilation hash can appear multiple times in `autotune_sessions[session_id][\"compilations\"]` — one entry per PID that observed it. Ingest intentionally keeps the duplicates because per-PID session metadata may differ.\n\n[…]\nuseful upstream and the analysis-time fix has the smallest blast radius.\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D104477719\n\nfbshipit-source-id: 9096bfb3b29d1bd1eeb6b1a8c3fd705ba4ca167b",
          "is_bot": false,
          "headline": "Dedup autotune compilations by hash to fix cross-PID config inflation",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "005ab06d92481338a2da37c10ba983320ca35b63",
          "body": "Summary:\nDiff 6 (cleanup) of the multiprocess trace filename refactor stack. No behavior change — pure documentation update + OSS audit.\n\nUser-facing docs:\n- `docs/02.-Usage-Guide.md` adds a new \"Trace File Naming\" section\n  explaining the `_pid_{PID}_host_{HOST}_` filename suffix, backward\n  compat\n[…]\n/BUCK` (test_tensor_descriptor target). Autodeps cleanup,\n  no functional impact.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D104323829\n\nfbshipit-source-id: 9df8fe1d7f99bbe0bf8a17617246eaeb81244e24",
          "is_bot": false,
          "headline": "Docs + OSS audit cleanup for the multi-process trace stack",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "990b9c5c56d52024dd30db8f0616e74996c00c28",
          "body": "Summary:\nDiff 5 of the multiprocess trace filename refactor stack.\n\n**User-visible behavior change**: when parsing a multi-rank job with the new PID+host-suffix filename format, kernels compiled before `dist.init_process_group` now appear under their owning rank in `--rank N` and `--all-ranks` outpu\n[…]\n one side would `TypeError` at runtime when CLI passes `no_pre_init_attribution`.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D104323830\n\nfbshipit-source-id: b55de43f3c3b3c290ae520441e7ff3ffa71b2f73",
          "is_bot": false,
          "headline": "Enable pre-init kernel rank attribution by default + CLI flag",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "114b2d75fb0622a14d6026fc04d0f7c80c92bc14",
          "body": "Summary:\nDiff 2 of the multiprocess trace filename refactor stack.\n\nSwitches `parse_logs` from per-file `parse_single_file` calls to one `parse_single_rank(files_list, output_dir, ...)` call per rank, so the cross-PID kernel-hash merge from Diff 1 actually engages on multi-PID input. Deletes the `us\n[…]\n causing import-time `ModuleNotFoundError` in the spawn-mode worker subprocesses.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D104316196\n\nfbshipit-source-id: 950f2d06a816997cbd8cf57849c30a3a5bf60a0a",
          "is_bot": false,
          "headline": "Switch parse_logs to per-rank parse_single_rank batch API",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a9455988931f0e814a0b20366fa78ebf679132b0",
          "body": "Summary:\nDiff 1 of the multiprocess trace filename refactor stack\n(see ai_discussions/tritonparse/refactor/multiprocess_trace_filename_refactor.md\n§7.2-§7.3).\n\nPure internal refactor: extracts the body of `parse_single_file` into a new\n`parse_single_rank(file_paths: list[str], output_dir, ...)` that\n[…]\n the full PID-file list per rank, getting the\nreal benefit of cross-PID merge.\n\nReviewed By: bhuang7477\n\nDifferential Revision: D104316193\n\nfbshipit-source-id: 532e47e7d9c2d418f5c16d112f7875a711fa2dff",
          "is_bot": false,
          "headline": "Refactor parse_single_file → parse_single_rank for multi-PID merge",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a58c0974b85520645c67244517ae416d947c1dac",
          "body": "Summary:\nPhase 1 fix (Diff 3a) from the multiprocess trace filename refactor stack.\n\nAdds `pid_{PID}_host_{HOST}_` to the trace filename in\nTritonTraceHandler.emit, so each process writes to its own file instead of\nall sharing `dedicated_log_triton_trace_{user}_.ndjson`. The host suffix\ndisambiguate\n[…]\n pass for real, so the expected-failure\nmarkers are no longer needed.\n\nReviewed By: bhuang7477, xuzhao9\n\nDifferential Revision: D104316194\n\nfbshipit-source-id: 6d6a490967f70ba144c6cd710c8945a10510d9dd",
          "is_bot": false,
          "headline": "Add PID + host suffix to trace filename to fix multiprocess corruption",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f3d95d50c880fa4639a360aa2d791544922b0140",
          "body": "Summary:\nFirst diff in the multiprocess trace filename refactor stack.\n\nLands repro tests that demonstrate the bug\n**before** the writer fix lands, so the failing test state proves the bug\nexists. The next stack diff (Phase 1 writer fix) will make these tests pass.\n\n`tests/cpu/test_multiprocess_writ\n[…]\nner writes\" to \"15 records\n  → ~5850 inner writes\" (RECORDS_PER_WORKER is 15).\n\nReviewed By: bhuang7477\n\nDifferential Revision: D104316192\n\nfbshipit-source-id: 87c477bdd4c64a0a89559ea9a05442bf08d312db",
          "is_bot": false,
          "headline": "Add multiprocess trace write corruption repro tests",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-13T15:42:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a48f2e9533a1d805dabc15f24ad599ce498e4a98",
          "body": "…iven Derived Artifact Mechanism (#403)\n\nSummary:\n## Context\n\n- RFC: https://github.com/meta-pytorch/tritonparse/issues/367\n- Prerequisite PRs:\n  - https://github.com/meta-pytorch/tritonparse/pull/387 (reader-side infrastructure and generic parse refactor)\n  - https://github.com/meta-pytorch/tritonp\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/403\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D104826957\n\nPulled By: FindHao\n\nfbshipit-source-id: 0e722b87932e64367596ea130653e3370d26ebb4",
          "is_bot": false,
          "headline": "Derived Artifact Refactor - From Hardcoded SASS Dump to an Adapter-Dr…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-12T15:59:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0f6103c5a08c16bb00035047231f0e7e1c3d8537",
          "body": "Summary:\nIn Tritonparse, download the manifold without the root directory.\n\n*  Fix 1 — tritonparse/fb/utils.py:748-751: Added skipRootDir=True to sync_getRecursive and return logs_dir instead of temp_dir. Without skipRootDir, the manifold client recreates the remote directory name inside the local p\n[…]\n cases like your job where rank 0 didn't produce triton traces but ranks 1-7 did.\n\nReviewed By: FindHao\n\nDifferential Revision: D104412696\n\nfbshipit-source-id: fa3f714718e2b6aef0048416e58ebfdf58b9e0e8",
          "is_bot": false,
          "headline": "Fix tritonparse parsing logs",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-05-08T23:14:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5ffc9c543fbf91d9d631c7a9f2de267459634c45",
          "body": "…n stage_descriptors (#402)\n\nSummary:\n## Context\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n- **Depends on**: https://github.com/meta-pytorch/tritonparse/pull/387 (Reader-side infrastructure & general parse logic)\n\n`_resolve_source_mappable_stage_keys()` previously read `meta\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/402\n\nReviewed By: xuzhao9\n\nDifferential Revision: D104285404\n\nPulled By: FindHao\n\nfbshipit-source-id: d57efe74a5a8c25895c0187f060d20c230cc0936",
          "is_bot": false,
          "headline": "Unify Stage Discovery to Adapter-Driven — Remove backend dependency o…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-08T20:58:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3de2346a0b5c2a858d9392644fe3f98189e821e9",
          "body": "Summary:\nThe `times` field in compilation.schema.json was incorrectly defined at the `payload` level (`payload.times`), but the actual trace data produced by `structured_logging.py` writes it to `payload.metadata.times` (line 1360: `trace_data[\"metadata\"][\"times\"] = times`).\n\nThis moves the `times` \n[…]\nies` to `Payload.properties.metadata.properties` to match the actual data layout.\n\nReviewed By: FindHao\n\nDifferential Revision: D104290271\n\nfbshipit-source-id: 85307aa205bd1990afde46e7332ed338de2d52c1",
          "is_bot": false,
          "headline": "Fix compilation schema: move times field to metadata",
          "author_name": "Shuofei Zhu",
          "author_login": "sfzhu93",
          "committed_at": "2026-05-08T02:49:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a79b6c699e56c6052105a091dd379f5671ad9815",
          "body": "…ysis Registration and Scheduling (#401)\n\nSummary:\n## Context\n\n- RFC: https://github.com/meta-pytorch/tritonparse/issues/367\n- Prerequisite PRs:\n  - https://github.com/meta-pytorch/tritonparse/pull/387 (reader-side infrastructure and generic parse refactor)\n  - https://github.com/meta-pytorch/triton\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/401\n\nReviewed By: xuzhao9\n\nDifferential Revision: D104284550\n\nPulled By: FindHao\n\nfbshipit-source-id: 991d487365d39043c95bea97156568615be184a0",
          "is_bot": false,
          "headline": "Analysis Dispatch Refactoring — From Hardcoded to Adapter-Driven Anal…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-05-08T02:36:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1dc785ad35e0f9df23eb5613a5f7e4a9e21f839b",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/400\n\nThe upstream Triton-Nightly Azure DevOps feed publishes wheels with PEP-440 local versions of the form `3.7.0+gitXXXXXXXX`. PEP-440 sorts non-numeric local-version segments lexicographically, so `pip install -U --p\n[…]\nround can be deleted: revert the workflow steps and remove the resolver script.\n\nReviewed By: wlei-llvm\n\nDifferential Revision: D103931528\n\nfbshipit-source-id: d49bb1adfeeff9270fa3981ed7a28c2dc2ab2fde",
          "is_bot": false,
          "headline": "ci: pin triton nightly to latest upstream commit (workaround) (#400)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-06T01:09:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "19981c786977c8f740c90e84787978d199ade3bd",
          "body": "Summary:\nUpstream PR has been landed.\nhttps://github.com/triton-lang/triton/pull/10125\n\nConsume the new knobs.autotuning.listener API from Triton to get\nauthoritative autotune results (best config, all config timings,\nbenchmark duration) directly, instead of inferring them from\ncallstack frame names\n[…]\ngs_timings,\n  benchmark_duration, cache_hit) to autotune_analysis events\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D100113285\n\nfbshipit-source-id: f4d0a366b96e213491f953724fd2885f29a47501",
          "is_bot": false,
          "headline": "Integrate AutotuneListener in tritonparse",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-05-05T17:23:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7ca5553696f9725b7e75f2141e1a05ac29d94097",
          "body": "Summary:\nBumps the website-all group in /website with 3 updates: [eslint](https://github.com/eslint/eslint), [globals](https://github.com/sindresorhus/globals) and [postcss](https://github.com/postcss/postcss).\n\nUpdates `eslint` from 10.2.1 to 10.3.0\n<details>\n<summary>Release notes</summary>\n<p><em\n[…]\n resolved: https://github.com/meta-pytorch/tritonparse/pull/398\n\nReviewed By: wychi\n\nDifferential Revision: D103455426\n\nPulled By: FindHao\n\nfbshipit-source-id: 6f985bf2621a1a1ac56bd720d6792b6c3a5cea32",
          "is_bot": true,
          "headline": "Bump the website-all group in /website with 3 updates (#398)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-01T23:29:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ef7726147721fd51f26998137ce479b63ffa78ac",
          "body": "Summary:\nPreviously, when a Triton or PyTorch commit in the bisect range failed to\nbuild (e.g. a transient compile error in an intermediate commit), the\n`bisect_triton.sh` / `bisect_torch.sh` scripts called `exit 128`, which\ngit bisect interprets as \"abort the entire bisect\". This made bisect on\nfas\n[…]\nault.\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D103232107\n\nfbshipit-source-id: b0c86e49f63d71835bc45058cc0dd1ad1af17457",
          "is_bot": false,
          "headline": "bisect: skip (not abort) on intermediate build failures by default",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-30T18:46:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "827d10870456d714393f6473416f0fb5f522da9c",
          "body": "…Python 3.14) + Py 3.14 compatibility fixes (#396)\n\nSummary:\nFix https://github.com/meta-pytorch/tritonparse/issues/325\n\nMigrates the GPU CI from the GitHub-hosted T4 runner (`4-core-ubuntu-gpu-t4`) to the PyTorch self-hosted A10G runner pool (`linux.g5.4xlarge.nvidia.gpu`), upgrades CUDA 12.8 → 13.\n[…]\ngainst this exact upstream Triton commit\" workflows.\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D103116613\n\nPulled By: FindHao\n\nfbshipit-source-id: 49f3db0035e125a5c25db4b8c58938b326974a66",
          "is_bot": false,
          "headline": "ci: migrate GPU tests to PyTorch self-hosted A10G runner (CUDA 13.0, …",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-30T17:10:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8d33bb0efc112da29ecd4e4856d8bc04eb92f27e",
          "body": "Summary:\nReplace `gzip_single_file` with a generic `compress_single_file(file_path, compression, verbose)` function in `parse/common.py`. The new function supports both gzip and zstd compression via a `compression` parameter (default: \"gzip\"). It compresses unconditionally — callers are responsible \n[…]\n should switch to `compress_single_file(file_path, compression=\"gzip\")`.\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D103119409\n\nfbshipit-source-id: 6204390b3461f51d0477881c4009d4977a1e1994",
          "is_bot": false,
          "headline": "Refactor compress_single_file and use zstd in ManifoldTraceUploader",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-30T16:54:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "73bee1810467be1d578bf80dbe249889a437e3ef",
          "body": "Summary:\nAs the title says\n\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/397\n\nReviewed By: FindHao\n\nDifferential Revision: D103228106\n\nPulled By: xuzhao9\n\nfbshipit-source-id: a85e526d3af10675ef687f9badcc01ae968a96f4",
          "is_bot": false,
          "headline": "Cleanup $HOME/.triton as the llvm dir during build (#397)",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-04-30T16:53:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01a07fdcfb77a406b6f557c003de75ba792a0fc6",
          "body": "…iven Parser Registration and Selection (#394)\n\nSummary:\n## Context\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n- **Previous PR**: https://github.com/meta-pytorch/tritonparse/pull/387 (Reader-side Infrastructure and Generic Parsing Flow Refactoring)\n\nThis is the **second PR in\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/394\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D103041415\n\nPulled By: FindHao\n\nfbshipit-source-id: 87ed908fed3348f276967d9969db04ed49fa5ec4",
          "is_bot": false,
          "headline": "Parser Distribution System Refactoring - From Hardcoded to Adapter-Dr…",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-04-30T02:18:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "073dd44b7f2f90ab013f728de41ff0511fd965ff",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/395\n\nThe OSS GitHub CI was failing with:\n\n```\nSuccessfully installed ... torch-2.12.0.dev20260407+cu128 ...\nRequirement already satisfied: packaging in /opt/miniconda3/lib/python3.13/site-packages (26.0)\nVerifying PyTor\n[…]\ns.executable` again right before the verification step for easier debugging.\n\nReviewed By: prithvip0524\n\nDifferential Revision: D103037549\n\nfbshipit-source-id: d3fab7f4fd466c890d3cd810f0f919adb8457b60",
          "is_bot": false,
          "headline": "Fix pip/python mismatch causing ModuleNotFoundError: torch in CI (#395)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-29T23:52:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dea57b48a3a207768f73838a5a9c08da7c17c3df",
          "body": "Summary:\nQ&A request:\n\nhttps://fb.workplace.com/groups/osssupport/permalink/31569486946006519/\n\nD101685100 (a difftrain import for facebookresearch/tensor-layouts) unintentionally modified the standard fbcode/github/standard/CONTRIBUTING.md by adding a project-specific \"Test layout\" section. D102823\n[…]\nbrary\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D102848202\n\nfbshipit-source-id: 8a4930135bb1799e56191c15e27181b2311f72ad",
          "is_bot": false,
          "headline": "Revert CONTRIBUTING.md change from D101685100",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-29T16:15:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9f8d7f42346dcb22a071d8434021fb4818c7328e",
          "body": "Summary:\nBumps the `monaco-editor` -> `dompurify` override from 3.3.2 to 3.4.0 to\nremediate GHSA-v9jr-rg53-9pgp / CVE-2026-41238 (medium severity) reported\non the meta-pytorch/tritonparse GitHub repo. monaco-editor upstream still\npins dompurify to an exact version (3.2.7) and has not yet released a\n\n[…]\n0.2 -> 6.0.3\n- typescript-eslint 8.58.1 -> 8.59.1\n- vite 8.0.8 -> 8.0.10\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D102818480\n\nfbshipit-source-id: c6876e7a316870f0c77b0fbe6e29965f753adcd0",
          "is_bot": false,
          "headline": "Bump dompurify to 3.4.0 and refresh minor deps",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-28T17:38:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "67cbe1c4873dbdeac2e37c50b32064b54fc90590",
          "body": "Summary:\nBumps [postcss](https://github.com/postcss/postcss) from 8.5.9 to 8.5.12.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a href=\"https://github.com/postcss/postcss/releases\">postcss's releases</a>.</em></p>\n<blockquote>\n<h2>8.5.12</h2>\n<ul>\n<li>Fixed reading any file via us\n[…]\nlved: https://github.com/meta-pytorch/tritonparse/pull/393\n\nReviewed By: bhuang7477\n\nDifferential Revision: D102689876\n\nPulled By: FindHao\n\nfbshipit-source-id: c18a827e081ed62614854704165c7e23f3e6a42d",
          "is_bot": true,
          "headline": "Bump postcss from 8.5.9 to 8.5.12 in /website (#393)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-04-28T05:46:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4f08dfc6e56f8d75023fc512075f7bce00a2d961",
          "body": "Summary:\nThis is an automatically generated fixup patch to bring fbsource back into sync with\nfacebookresearch/tensor-layouts's main branch on GitHub. Land this patch as soon as possible, as the difference\nreflected on here is already on GitHub and future changes may depend on these\nchanges!\n\nallow-\n[…]\nn/sandcastle/job/49539596253562249/\n\nGitHub Repo: facebookresearch/tensor-layouts\n\nReviewed By: jduprat\n\nDifferential Revision: D101685100\n\nfbshipit-source-id: e20fd69ae9386eba84029c3f271bf0ebe8bb0074",
          "is_bot": false,
          "headline": "Apply fixup patch to fbsource",
          "author_name": "generatedunixname499836121",
          "author_login": null,
          "committed_at": "2026-04-28T00:43:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1c1e7faa22d8481a60628dc1bf2249cd4debee86",
          "body": "Summary:\nShipIt mirrors fbcode/pytorch/tritonparse and fbcode/triton/tools/CUTracer\nto GitHub. Because ShipIt lands changes by pushing commits to `main`\nrather than merging the PRs, the export branches it creates (e.g.\n`export-Dxxxxxxxxx`) accumulate forever after their PRs are closed.\n\nThis adds a \n[…]\nno extra secrets needed\n- Surfaces failures to the Actions UI via non-zero exit\n\nReviewed By: wlei-llvm\n\nDifferential Revision: D102674717\n\nfbshipit-source-id: 34cdfe98339f33daff90d7cf037e52f57d3cbdbe",
          "is_bot": false,
          "headline": "Add monthly stale PR branch cleanup workflow",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-27T22:40:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "adc51ae06ac2dce19a8c5fc17a2fadff464c2165",
          "body": "Summary:\nOptimize the display of functional buttons in the top right corner of the tritonparse frontend homepage when no parsing file is selected\n## Current Status\nWhen no parsing file is selected, only the File Diff functional button is displayed in the top right corner; additionally, the Open Loca\n[…]\nhttps://github.com/meta-pytorch/tritonparse/pull/392\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D102669713\n\nPulled By: FindHao\n\nfbshipit-source-id: 012dde1daa9e55bbace349b48d92f9f6e78ca308",
          "is_bot": false,
          "headline": "Optimize homepage button display (#392)",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-04-27T21:15:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ef2297752bd93b1b5795a825f8e08828caa8079a",
          "body": "Summary:\n## Background\n\n- **RFC**: https://github.com/meta-pytorch/tritonparse/issues/367\n\nThis PR is the **first PR in Flexible Backend Support RFC Phase 1**. Phase 1 is split into 3 PRs. See the final section for the next steps.\n\n**What this PR does**: this PR focuses on the reader-side foundation\n[…]\n resolved: https://github.com/meta-pytorch/tritonparse/pull/387\n\nReviewed By: wychi\n\nDifferential Revision: D102355401\n\nPulled By: FindHao\n\nfbshipit-source-id: ac49d6ebf78088e06a18bc040c9d1a543a35eb05",
          "is_bot": false,
          "headline": "General Backend Infrastructure & Generic Parsing Flow Refactoring (#387)",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-04-24T19:02:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1fba9d4e8569b00f39b471609d41b4f8b7b8457c",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/385\n\nAdd zstd as a supported compression format for writing trace files, complementing existing gzip and clp support. The read side already supported zstd via `tools/compression.py`; this change enables write-side suppo\n[…]\nE_COMPRESSION=zstd` to enable. Output files use `.bin.ndjson` extension.\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D100278437\n\nfbshipit-source-id: a0c0d17bcb2ab8e23e329994ba8c018e83f110fc",
          "is_bot": false,
          "headline": "Add zstd compression support for trace file writing (#385)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-23T16:28:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b7cb969ff83539348a889769d3a606275ff5b6e3",
          "body": "…#386)\n\nSummary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/386\n\nFix three CodeQL findings from the OSS repo:\n\n1. **Missing workflow permissions (actions/missing-workflow-permissions):** Add `permissions: contents: read` to test.yml and website-build.yml. The other workf\n[…]\npace). Changed to `<\\/script\\s*>` to handle optional whitespace in the closing tag.\n\nReviewed By: wychi\n\nDifferential Revision: D101915017\n\nfbshipit-source-id: 5f7dfc76bcd47025e8d128ea890d7a0492633fae",
          "is_bot": false,
          "headline": "Fix CodeQL security warnings in CI workflows and inline-html script (…",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-23T04:30:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "49893edabc17a89c1b1b6a56e91e02688c2d4bc7",
          "body": "…wer. (#382)\n\nSummary:\nContinuation of https://github.com/meta-pytorch/tritonparse/pull/326.\nNow that structured logging can emit CLP archives, this PR adds UI support for loading and parsing CLP archives in the log viewer.\nThis PR closes https://github.com/meta-pytorch/tritonparse/issues/369. The c\n[…]\nesolved: https://github.com/meta-pytorch/tritonparse/pull/382\n\nReviewed By: xuzhao9\n\nDifferential Revision: D102071500\n\nPulled By: FindHao\n\nfbshipit-source-id: 457dc53f616b259c7deb72232d97566ad6248948",
          "is_bot": false,
          "headline": "feat: Add `clp-ffi-js` to support loading CLP archives in the log vie…",
          "author_name": "Bingran Hu",
          "author_login": "Bill-hbrhbr",
          "committed_at": "2026-04-23T02:44:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "99aa11e5deb93bcba3649cf939da82714b939c57",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/390\n\nFix \"Unmatched ) or \\)\" error in the sync-wiki.yml workflow.\n\nIn sed extended regex mode (`-E`), parentheses are grouping metacharacters. The original pattern ended with `?)` where the `)` was intended to match the\n[…]\n(#[^)]*)?)`  — sed sees unmatched )\nAfter:  `(#[^)]*)?\\)` — sed matches literal )\n\nReviewed By: xuzhao9\n\nDifferential Revision: D102049331\n\nfbshipit-source-id: 66eb59a5ec44066ea1d549e404be23bf63dc48ec",
          "is_bot": false,
          "headline": "Fix sed regex error in sync-wiki GitHub Action (#390)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-22T23:39:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cf4665364f5b6cca0af36781112edca27362f24b",
          "body": "Summary:\nMove all GitHub Wiki pages into docs/ directory in the main repo so documentation is version-controlled alongside code and goes through code review.\n\nChanges:\n- Add docs/ directory with all wiki pages (Home, Installation, Usage Guide, Web Interface Guide, Developer Guide, Code Formatting, F\n[…]\nsts.sh)\n- Update Makefile test targets from pytest to python -m unittest discover\n\nReviewed By: xuzhao9\n\nDifferential Revision: D102010588\n\nfbshipit-source-id: 1e0236707ddb8d18cb784af9305b2ea61fb72e8a",
          "is_bot": false,
          "headline": "Move wiki content to docs/ and add GitHub Action for wiki sync",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-22T20:13:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f37ba41adb959c6c2cd78f615ed3322724976a5e",
          "body": "Summary:\nThe test_ai_analyzer, test_ai_context, and test_ai_prompts tests depend on tritonparse.diff.fb, which is a Meta-internal module not synced to the open-source repo. This caused ModuleNotFoundError on GitHub CI.\n\nInstead of adding skip logic, move these tests to tests/fb/diff/ where they belo\n[…]\nrectory is not synced to GitHub, so they will never be discovered by OSS CI.\n\nReviewed By: prithvip0524\n\nDifferential Revision: D101906955\n\nfbshipit-source-id: 09e45464eeb3fc23455f7975c69598d637d06298",
          "is_bot": false,
          "headline": "Move AI diff tests from tests/cpu/diff/ to tests/fb/diff/",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-22T18:23:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "361af64e728e9526851586df13a2f192af51084d",
          "body": "Summary:\nAdd AI-powered root cause analysis (Phase 2) to the tritonparse diff module. When a user runs `tritonparse diff --ai`, deterministic diff results from Phase 1 (metadata, IR stats, source mappings, tensor values) are formatted as structured markdown context and sent to an LLM, which returns \n[…]\n AI module is fbcode-only (`diff/fb/`) and is not synced to the open source repo.\n\nReviewed By: FindHao\n\nDifferential Revision: D100084869\n\nfbshipit-source-id: 8c71595eda27692dab9235653a09b4188a55832d",
          "is_bot": false,
          "headline": "Add AI-powered root cause analysis module",
          "author_name": "Prithvi Patel",
          "author_login": "prithvip0524",
          "committed_at": "2026-04-21T22:50:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9b3c2c1954d963702217d3a434a73d3f49d9b74b",
          "body": "…l args (#384)\n\nSummary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/384\n\nThe `OVERRIDE_TTIR` branch of `DefaultPlaceholderReplacer._replace_kernel_invocation` dropped constexpr parameters from the positional arg list while still passing the remaining non-constexpr args p\n[…]\n) is unchanged: it still needs every arg to run the stub as a plain `triton.jit`.\n\nReviewed By: FindHao\n\nDifferential Revision: D101678360\n\nfbshipit-source-id: 3b9bf566050af79a15fc13403d1fb41e092e7a2f",
          "is_bot": false,
          "headline": "Fix IR-override launch when constexprs are interleaved with positiona…",
          "author_name": "Srivatsan Ramesh",
          "author_login": "srivatsan-ramesh",
          "committed_at": "2026-04-21T13:17:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3b38883a785b617f335f96e4b00ee97bd6bf94e3",
          "body": "Summary:\nThe `_find_filecheck_binary()` function only checked for the FileCheck\nbinary at `triton/backends/amd/bin/FileCheck`, but Triton's own\n`_filecheck.py` places it at the package root (`triton/FileCheck`).\nThis caused a spurious warning on installations where FileCheck exists\nat the package ro\n[…]\ntory.\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D101743451\n\nfbshipit-source-id: 0654a6a186dd121fc0010a7f33f6256f886508d6",
          "is_bot": false,
          "headline": "Fix FileCheck binary detection to check Triton package root",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-21T08:42:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1a4508f6f2d14f8dc28de8064363663e141421ad",
          "body": "Summary:\n- Setup CUDA_HOME env which is respected by Pytorch build script\n- Install cuSparseLt libraries\n- Install CI requirements\n\nTest workflow:\n\nhttps://github.com/pytorch/pytorch-integration-testing/actions/runs/24481090032\n\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/383\n\nReviewed By: FindHao\n\nDifferential Revision: D101172015\n\nPulled By: xuzhao9\n\nfbshipit-source-id: 2e76041ba74481aa60798374cb234edf5317fc78",
          "is_bot": false,
          "headline": "Fix torch bisect scripts (#383)",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-04-16T18:29:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "656a9d2f5d84eeb50a63df86359c6219ab18deed",
          "body": "Summary:\nWhen running inside the fbsource tree but without Meta-internal dependencies\ninstalled (e.g., manifold), is_fbcode() returns True because tritonparse.fb\nis physically present, causing ImportError at runtime.\n\nAdd TRITONPARSE_FB_MODE environment variable to let users explicitly force\nOSS mod\n[…]\n\nUsage:\n  TRITONPARSE_FB_MODE=0 python -m unittest tests.gpu.test_complex_kernels\n\nReviewed By: xuzhao9\n\nDifferential Revision: D101039253\n\nfbshipit-source-id: 1f3d017e20d419615701052c5bb55f234ee60ec4",
          "is_bot": false,
          "headline": "Add TRITONPARSE_FB_MODE env var to override is_fbcode() detection",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-16T16:20:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c2674c68232200e42deda2e72c523c731f57cac2",
          "body": "Summary:\ntorch is a de facto hard dependency of tritonparse — reproducer/utils.py and tools/load_tensor.py already unconditionally import it, and every binary/test target brings it in. This diff makes the code consistent with that reality by removing the TORCH_INSTALLED conditional flag and all 12 g\n[…]\nor_value.py: Remove try/except import torch skipTest patterns, add top-level import\n\nReviewed By: wychi\n\nDifferential Revision: D100891381\n\nfbshipit-source-id: 6534f1df1441822c6218f09edd7852d68060c684",
          "is_bot": false,
          "headline": "Treat torch as a hard dependency in tritonparse",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-16T16:20:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a526926f4c65c251f8a8d79735d449c2403c21bc",
          "body": "Summary:\nThe bisect shell scripts incorrectly documented .llvm-project/ as\nthe LLVM source repository.  In reality:\n  - llvm-project/        — LLVM source git clone (has .git/)\n  - .llvm-project/build/ — LLVM build output (set by Makefile LLVM_BUILD_PATH)\n\nThis was verified on the filesystem.  Updat\n[…]\nts to match the\nactual directory layout created by Triton's build-llvm-project.sh.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D99768129\n\nfbshipit-source-id: a21101b808eab8add47fae8a627a89cd4531168c",
          "is_bot": false,
          "headline": "Fix misleading LLVM path comments in bisect scripts",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9c24d3e89392ec89c8ed7ccf583b081d3a7bb987",
          "body": "Summary:\nWire the compat-build subcommand into the main tritonparse CLI and\nfinalize module exports:\n- Add compat-build subparser to tritonparse CLI with routing\n- Export AICompatFixer from compat_builder __init__\n- Update builder.py ai_fixer type from object to AICompatFixer\n\nReviewed By: xuzhao9\n\nDifferential Revision: D98932807\n\nfbshipit-source-id: d9c09b46f8132e2a180eb07d94934e244276be2f",
          "is_bot": false,
          "headline": "Integrate compat-build into main CLI (PR3-03)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54bd27d7e727ca502a817e80a5bb4d9425d37df2",
          "body": "Summary:\nAdd CLI entry point for the compat-build subcommand with four modes:\n- Default (build): Build commits.csv for a single LLVM bump\n- --resume: Resume after providing a manual fix commit\n- --verify: Validate an existing CSV file\n- --status: Show current build status\n\nIncludes AI control flags \n[…]\npath).\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D98932808\n\nfbshipit-source-id: a1275e8b2123f6d6d22d462d21e65ea6e98e1f7d",
          "is_bot": false,
          "headline": "Add compat_builder CLI implementation (PR3-02)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d93af7fe8521f8c105e446a24607d77f4251b846",
          "body": "Summary:\nAdd AI-powered compatibility fixing for Triton/LLVM incompatibilities,\nfollowing CUTracer's two-phase (deterministic context + AI) pattern.\n\n- prompts.py: System prompt encoding LLVM API change patterns and fix rules\n- context_builder.py: Structured LLM context builder (4 priority sections:\n[…]\nix, current source)\n- ai_fixer.py: AICompatFixer orchestrator using ClaudeCodeClient\n\nReviewed By: wychi\n\nDifferential Revision: D98932806\n\nfbshipit-source-id: 4b542ba6c5bb424bc9c1a9c04882636ca4b2c444",
          "is_bot": false,
          "headline": "Add compat_builder AI fixer module (PR3-01)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "041949534572525509852bb5c6cd3bcfee0d39de",
          "body": "Summary:\nAdd `CSVManager` and `BumpBlock` dataclass to read, validate, and write\nthe single-bump commits.csv produced by `CompatBuilder.generate_csv()`.\n\n- `BumpBlock`: parsed metadata from the `# key=value` CSV header\n- `CSVManager.load_metadata()`: parse all required header fields\n- `CSVManager.lo\n[…]\npaths.\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D98847073\n\nfbshipit-source-id: 92664bed28d98e8ffc9234840c75625f545ab5db",
          "is_bot": false,
          "headline": "Add compat_builder CSV manager (PR2-02)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b7d96f69071d0d1fd107e38cf49075554adc734e",
          "body": "Summary:\nAdd core CompatBuilder orchestration class for the compat-build workflow:\n\n- `CompatBuilder`: drives initialize → find_next_incompatible →\n  record_pair → fix_incompatibility loop, generates final CSV\n- `WaitingForFixError`: raised when manual intervention is needed;\n  carries state_path, i\n[…]\nalready-attempted), _parse_first_bad, _extract_build_error,\n  _resolve_worktree_path\n\nReviewed By: wychi\n\nDifferential Revision: D98948424\n\nfbshipit-source-id: b5c20067627a15ccc41e0f0c10bfcbadfbf7c173",
          "is_bot": false,
          "headline": "Add compat_builder core builder and tests (PR2-01)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-14T20:45:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6381ed46cb3067fa8c2b21db1bec8ce3bacaadb4",
          "body": "Summary:\nAdds the `compat_builder` package — an offline tool that pre-generates\n`commits.csv` for a single LLVM bump by walking Triton/LLVM compatibility\nboundaries.\n\n## Modules\n\n### `tritonparse/compat_builder/state.py`\nState management for the compat-build workflow:\n- `CompatBuildPhase`: 7-phase e\n[…]\nisolation; source repo read-only\n- D8.10: LLVM repo at <worktree>/.llvm-project\n\nReviewed By: bhuang7477\n\nDifferential Revision: D98845298\n\nfbshipit-source-id: f077172bd27364f7cdaa00cf1170e1c5ebec2042",
          "is_bot": false,
          "headline": "Add compat_builder: state machine, builder, and tests",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-13T21:08:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7d084b294000b73733691785bea49e735ff7f6de",
          "body": "Summary:\nFix default_procedure_checks.json loading failure in PAR environments.\n\nThe previous implementation used `Path(__file__).parent` to locate the bundled\nJSON file, which resolves to a `/proc/self/fd/` path inside PAR archives and\nfails with FileNotFoundError.\n\nSwitch to `importlib.resources.f\n[…]\ne it.\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D100414422\n\nfbshipit-source-id: c5094cb4dd19599f3b84a8e6f8eaa1b2867fa1b3",
          "is_bot": false,
          "headline": "Use importlib.resources to load default_procedure_checks.json",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-13T16:37:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ddb0722cd0e1a4a2d3c30cc641f19953a23ce180",
          "body": "Summary:\nAdd feature to bisect pytorch\n\nX-Ref: https://github.com/pytorch/pytorch-integration-testing/pull/170\n\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/377\n\nTest Plan:\nTest signal to bisect:\n\n```\nExample regression report: https://hud.pytorch.org/benchmark/regression/\n[…]\n=========================================================\n```\n\nReviewed By: FindHao\n\nDifferential Revision: D100248612\n\nPulled By: xuzhao9\n\nfbshipit-source-id: dcfc9dfde221e832acd8320a9eb52840ee77251f",
          "is_bot": false,
          "headline": "Add ability to bisect pytorch (#377)",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-04-11T06:03:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fe319965c1ee9c5ab63657a4ddc8784102d59485",
          "body": "Summary:\nFor warp-specialized kernels, the Triton compiler overwrites\nmetadata[\"num_warps\"] with the post-expansion total warp count.\nThis makes it impossible for downstream consumers (reproducer, viewer,\ndiff tool) to know the original input value.\n\nInstead of patching Triton's backends, extract th\n[…]\nback for raw traces.\n- compilation.schema.json: Add num_warps_base field to schema.\n\nReviewed By: wychi\n\nDifferential Revision: D100240993\n\nfbshipit-source-id: 6f0f807f4c16e6b48fec0e5042dcb437e6bd28a0",
          "is_bot": false,
          "headline": "Extract num_warps_base from TTGIR during parse phase",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-10T19:58:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "32bc861cc76855c048c3254ce9fba5e68675e712",
          "body": "…ross 1 directory (#381)\n\nSummary:\nBumps the website-all group with 1 update in the /website directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).\n\nUpdates `vite` from 8.0.7 to 8.0.8\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a href=\"https://github.com/vitej\n[…]\n resolved: https://github.com/meta-pytorch/tritonparse/pull/381\n\nReviewed By: wychi\n\nDifferential Revision: D100339802\n\nPulled By: FindHao\n\nfbshipit-source-id: 8603dbed4b4ec0b60803a6166233bf4a7afb9cfb",
          "is_bot": true,
          "headline": "Bump vite from 8.0.7 to 8.0.8 in /website in the website-all group ac…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-04-10T19:03:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1fe5f6299061cf192e33e1adfe4d7961d9449b41",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/380\n\nThe skip/max_runs gating for tensor blob saving previously used a single\nglobal counter. With max_runs=1, only the first autotuned winner launch\nsaved blobs — later configs got no blobs even though they have differ\n[…]\nregardless\nof skip/max_runs settings, since they're never useful for reproducers.\n\nReviewed By: FindHao\n\nDifferential Revision: D100015808\n\nfbshipit-source-id: bdc5d9d9ec18b21adf997f0009aea09bd92fb705",
          "is_bot": false,
          "headline": "Make tensor blob saving count per compilation hash (#380)",
          "author_name": "Srivatsan Ramesh",
          "author_login": "srivatsan-ramesh",
          "committed_at": "2026-04-10T01:05:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cfa0ad012b2e2e0845f165d2657f7b73bf66202d",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/379\n\nFix all lint errors and warnings introduced by upgrading to ESLint 10 and\nswitching eslint-plugin-react-hooks to canary (D100084729).\n\nChanges by lint rule:\n\nreact-hooks/set-state-in-effect:\n- App.tsx: Use lazy sta\n[…]\nstive-deps disable\n- StackDiffViewer.tsx: Remove stale no-explicit-any disable\n\nReviewed By: bhuang7477\n\nDifferential Revision: D100094439\n\nfbshipit-source-id: ef2fb0e3b5da2278429430292c36fef556bb98be",
          "is_bot": false,
          "headline": "Fix ESLint 10 + react-hooks canary lint errors (#379)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-10T00:43:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0a065f85c6e776f9dfe490d50621594065bee0f1",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/378\n\n- Upgrade ESLint from v9 to v10 (eslint/js ^10.0.1, eslint ^10.2.0)\n- Switch eslint-plugin-react-hooks to canary channel (supports ESLint 10)\n- Bump react/react-dom to ^19.2.5\n- Bump react-resizable-panels to ^4.9.\n[…]\nte to ^8.0.7, postcss to ^8.5.9, types/node to ^25.5.2\n- Bump version to 0.4.3\n\nReviewed By: bhuang7477\n\nDifferential Revision: D100084729\n\nfbshipit-source-id: 58f13fefc2ff7df55e33e56ec53f518d5cb22d67",
          "is_bot": false,
          "headline": "Upgrade website dependencies including ESLint 10 (#378)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-10T00:43:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8b49b4b73c8227b135db0b3fd8eb930f74a79590",
          "body": "Summary:\nExtend tritonparse's `_json_compat.py` compatibility layer with file-based\n`load(f)` and `dump(obj, f)` convenience wrappers, then migrate all 14 CUTracer\nproduction Python files from stdlib `json` to use `tritonparse._json_compat`.\n\nThis gives CUTracer a free performance upgrade via orjson\n[…]\needed.\n\n___\n\noverriding_review_checks_triggers_an_audit_and_retroactive_review\nOncall Short Name: triton\n\nDifferential Revision: D99939361\n\nfbshipit-source-id: 1ad5f9bce150e0aba8d7f55406e217d52cb923d2",
          "is_bot": false,
          "headline": "Extend _json_compat with load/dump and migrate CUTracer to orjson",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-08T19:46:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fa507b3e7ee9686636e175b276cd8c59cf2a160f",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/376\n\nThe existing OVERRIDE_TTIR mode was broken: it skipped defining the kernel\nfunction (causing NameError), only worked for autotuned kernels, and discarded\nconstexpr values.\n\nThis rewrites OVERRIDE_TTIR to generate a\n[…]\nplication)\n- lru_cache on extract_params_from_source to avoid redundant AST parses\n\nReviewed By: FindHao\n\nDifferential Revision: D99893169\n\nfbshipit-source-id: ce1c42a9afcbce08cb853ce84f5c934551449911",
          "is_bot": false,
          "headline": "Fix OVERRIDE_TTIR reproducer with stub kernel + ir_override (#376)",
          "author_name": "Srivatsan Ramesh",
          "author_login": "srivatsan-ramesh",
          "committed_at": "2026-04-08T11:31:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3337a0cacc8bbacd24ac5b486a8505f6d554c0ca",
          "body": "Summary:\nPreviously TRITONPARSE_TRACE_MANIFOLD defaulted to \"1\" (ON) in all\nenvironments. This changes the default to \"0\" (OFF) and only enables\nit when running in fbcode (detected via torch.version.git_version)\nand in a MAST environment (detected via MAST_HPC_JOB_NAME env var).\nThe env var override still works in all environments.\n\nReviewed By: FindHao\n\nDifferential Revision: D99851290\n\nfbshipit-source-id: f77ecf959c12cf1e68db3ee52549ea6e3496fd98",
          "is_bot": false,
          "headline": "Only enable Manifold upload by default in fbcode MAST environment",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-04-07T23:29:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2418f6135d9f51e46944afd2b23cb50c37ee5b03",
          "body": "Summary:\nThis PR fixes an OSS-only shutdown error in `TritonTraceHandler._cleanup()`.\n\nWhen `TRITONPARSE_TRACE_MANIFOLD` is enabled, cleanup may try to import the fb-only uploader in OSS environments and print `ModuleNotFoundError: No module named 'tritonparse.fb'` during `atexit`, even though trace\n[…]\nresolved: https://github.com/meta-pytorch/tritonparse/pull/374\n\nReviewed By: xuzhao9\n\nDifferential Revision: D99848479\n\nPulled By: FindHao\n\nfbshipit-source-id: c761a47706ca8e5314188aad2bdb0fd0a11014aa",
          "is_bot": false,
          "headline": "Fix ModuleNotFoundError for tritonparse.fb in atexit cleanup (#374)",
          "author_name": "zhudada0120",
          "author_login": "zhudada0120",
          "committed_at": "2026-04-07T19:56:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d5bb2337e473cc3db6e43cab33c6dfab4d6e770f",
          "body": "The internal and external repositories are out of sync. This Pull Request attempts to brings them back in sync by patching the GitHub repository. Please carefully review this patch. You must disable ShipIt for your project in order to merge this pull request. DO NOT IMPORT this pull request. Instead\n[…]\nsing the MERGE BUTTON. Re-enable ShipIt after merging.\n\nfbshipit-source-id: c3e20c8f0ee8fe2154a32d672d06c2752187ce10\n\nCo-authored-by: Facebook GitHub Bot <facebook-github-bot@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Re-sync with internal repository (#375)",
          "author_name": "meta-codesync[bot]",
          "author_login": "meta-codesync[bot]",
          "committed_at": "2026-04-07T18:24:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c4efce3b5a6023cee27cbc9c5997b0c3929aa226",
          "body": "Summary:\nBumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.3 to 8.0.5.\n<details>\n<summary>Release notes</summary>\n<p><em>Sourced from <a href=\"https://github.com/vitejs/vite/releases\">vite's releases</a>.</em></p>\n<blockquote>\n<h2>v8.0.5</h2>\n<p>Please refer to <a href=\"h\n[…]\nt resolved: https://github.com/meta-pytorch/tritonparse/pull/371\n\nReviewed By: wychi\n\nDifferential Revision: D99738058\n\nPulled By: FindHao\n\nfbshipit-source-id: 930bc585025e68e4ce9066d6308c1693bb45e7bc",
          "is_bot": true,
          "headline": "Bump vite from 8.0.3 to 8.0.5 in /website (#371)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-04-07T05:38:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f5ace2bd48a7994c268a418ab27568ef3ceb9beb",
          "body": "Summary:\nAdd two Claude Code skills for tritonparse development workflows:\n\n- `skills/tritonparse-oss-sync.md`: OSS sync guide covering the fbcode/GitHub\n  mirror architecture, what's fbcode-only, OSS entry point and dependencies,\n  GitHub CI structure (3 jobs, CI scripts), and common issue troubles\n[…]\nn,\n  test setup, and reference complexity levels for existing subcommands\n\nReviewed By: srivatsan-ramesh\n\nDifferential Revision: D97771175\n\nfbshipit-source-id: d2d79feaa84861b257887a95a9e9341d456bfc59",
          "is_bot": false,
          "headline": "Add Claude Code skills: OSS sync and CLI command guide",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-07T04:31:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9b7910a1b69659745beac6741e249bd17ab3683d",
          "body": "Summary:\nAdd two Claude Code skills for tritonparse development:\n\n- `skills/tritonparse-dev.md`: Core development guide covering module\n  responsibilities, parse data flow, dual-path (OSS/fbcode) development\n  checklist, context manager pattern, and key file reference\n- `skills/tritonparse-test.md`:\n[…]\nnfrastructure, instructions for adding new tests, and GitHub CI\n  vs Buck comparison\n\nReviewed By: wychi\n\nDifferential Revision: D97771158\n\nfbshipit-source-id: cd0dc77875e4998a904ac38ecc4bf0880f551c40",
          "is_bot": false,
          "headline": "Add Claude Code skills: dev guide and test guide",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-07T04:31:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7e225d9befcc94a2cf0f68877ed4758c87136c78",
          "body": "Summary:\nAdd `.claude/` configuration for tritonparse to improve Claude Code's\nunderstanding of the project:\n\n- `CLAUDE.md`: Project overview, build/test commands, dual-path architecture\n  (OSS/fbcode), project structure, code style conventions\n- `rules/dual-path.md`: Auto-triggered rule when editin\n[…]\ning\n  `structured_logging.py` for Triton hook compatibility and log format stability\n\nReviewed By: wychi\n\nDifferential Revision: D97771148\n\nfbshipit-source-id: ac207a9fbfd2ead3caac29aca6cfeded54005fea",
          "is_bot": false,
          "headline": "Add Claude Code project config and rules",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-07T04:31:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4f2b3ddbc585ceaf8fc59c07187deb79ab73078d",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/370\n\nPyTorch nightly (2.12.0.dev20260405+) introduced a runtime dependency on the `packaging` module in `torch/_native/cutedsl_utils.py`, but did not declare it in the wheel metadata. This causes `import torch` to fail \n[…]\n`pip install packaging` after the PyTorch nightly installation as a workaround.\n\nReviewed By: peiying779\n\nDifferential Revision: D99683114\n\nfbshipit-source-id: d52172b026575ae7f696678ea9dd5e00053b4881",
          "is_bot": false,
          "headline": "Add packaging dependency workaround for PyTorch nightly (#370)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-06T22:44:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a5266c9f16657e6af93908aac71be16c300a435f",
          "body": "Summary: As the title says\n\nReviewed By: FindHao\n\nDifferential Revision: D99139489\n\nfbshipit-source-id: a8f6479863445aa6bf6418dd790cf51b8065fa01",
          "is_bot": false,
          "headline": "Turn on Manifold upload by default",
          "author_name": "Xu Zhao",
          "author_login": "xuzhao9",
          "committed_at": "2026-04-06T17:31:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb56a2e6095677fdb02dfdb4b13febf1465d04a0",
          "body": "Summary:\nThe Triton compiler overwrites metadata[\"num_warps\"] with\nttg.total-num-warps (the post-expansion count after AllocateWarpGroups).\nWhen tritonparse captures this value and feeds it back as the input\nnum_warps in the reproducer, the compiler treats it as the base count,\nadds more worker warp\n[…]\ne post-expansion count is\npreserved as total_num_warps for informational purposes.\n\nReviewed By: FindHao\n\nDifferential Revision: D99408537\n\nfbshipit-source-id: 8f13e99084892a1f81cc19b2f7fb097fd8905271",
          "is_bot": false,
          "headline": "Fix tritonparse reproducer num_warps for warp-specialized kernels",
          "author_name": "Wenyuan Chi",
          "author_login": "wychi",
          "committed_at": "2026-04-03T17:38:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e07d48408bb10b79f21dfc027833b56ab3186f11",
          "body": "Summary:\nPin Node.js version to 24.13.0 in all website CI workflows to ensure npm version consistency between local development and GitHub Actions.\n\nPreviously, CI used floating major versions (\"24\" or \"22\") which could resolve to different Node/npm versions than local, causing package-lock.json inc\n[…]\nloy-pages.yml: \"22\" → \"24.13.0\"\n- deploy-pages-standalone.yml: \"22\" → \"24.13.0\"\n\nReviewed By: bhuang7477\n\nDifferential Revision: D99120117\n\nfbshipit-source-id: d3bd27a9edc46c689dcb11091e26e70d9b3bf614",
          "is_bot": false,
          "headline": "Pin Node.js version in CI workflows",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-01T18:25:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bb132b1967a6e419f5c94500de3c55673ea683b0",
          "body": "Summary:\nUpgrade website dependencies and fix Vite 8 / ESLint compatibility\n\n## Dependency Upgrades (via npm-check-updates)\n- tailwindcss/vite: 4.1.18 → 4.2.2\n- types/node: 25.2.0 → 25.5.0\n- types/react: 19.2.10 → 19.2.14\n- vitejs/plugin-react: 5.1.3 → 6.0.1\n- autoprefixer: 10.4.24 → 10.4.27\n- eslin\n[…]\nnings from react-syntax-highlighter ESM files when building with iife output format.\n\nReviewed By: wychi\n\nDifferential Revision: D99033410\n\nfbshipit-source-id: 9cd659acd0f6d8dee16eb4f83e0923c966c1a2e4",
          "is_bot": false,
          "headline": "Upgrade website dependencies and fix Vite 8 / ESLint compatibility",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-04-01T16:34:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bf3a3b73b4f6b09022b19affe9b70617c077b492",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/366\n\nrich is already available in Meta's internal third-party (fbsource//third-party/pypi/rich:rich, v14.0.0) and is a widely used package. Making it a default dependency ensures the bisect TUI works out of the box with\n[…]\nK deps for tritonparse_lib\n- Add rich>=13.0 to pyproject.toml dependencies for OSS\n\nReviewed By: xuzhao9\n\nDifferential Revision: D98795336\n\nfbshipit-source-id: fd5cc917e8a36a128cdf9fab98298309a430a617",
          "is_bot": false,
          "headline": "Make rich a default dependency (#366)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-03-31T01:50:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7dcb006ee2e59406df888557131d970eda02066f",
          "body": "Summary:\nX-link: https://github.com/meta-pytorch/monarch/pull/3221\n\nThese files are shared between projects and were inadvertently modified.\n\nReviewed By: bigfootjon\n\nDifferential Revision: D98217804\n\nfbshipit-source-id: 9d04fdb54bac4c3e46937ad5fae5356fa4264ff5",
          "is_bot": false,
          "headline": "Restore files to previous state",
          "author_name": "Paul O'Shannessy",
          "author_login": "zpao",
          "committed_at": "2026-03-26T00:42:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3352c56d123c2ba00f61143592bf40cffb31dbdd",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/365\n\nD97564498 introduced orjson as a hard dependency, which broke 40+ tests on\nCPython 3.14 free-threading builds because orjson does not yet support\nfree-threading (PEP 703).\n\nThis diff adds a `_json_compat` wrapper m\n[…]\nequired dependency to an optional extra in\n`pyproject.toml` for OSS compatibility.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D98194947\n\nfbshipit-source-id: bd9ff863a3156514b346a417403da18d390a5e22",
          "is_bot": false,
          "headline": "Add stdlib json fallback for free-threading compatibility (#365)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-03-25T23:43:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "10c2aa0e32e1bfc68ee3be6a46c22cd560c61840",
          "body": null,
          "is_bot": true,
          "headline": "fbshipit-source-id: e5b6a3ce843013b11766d0934e3c89686937d2c7",
          "author_name": "meta-codesync[bot]",
          "author_login": "meta-codesync[bot]",
          "committed_at": "2026-03-25T21:06:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "af3c56fa131a0eba1c8fb899b650ede0dfa08b51",
          "body": "Summary:\nThis is an automatically generated diff to link facebookresearch/tensor-layouts's main branch to fbsource.\n\n<< DO NOT EDIT BELOW THIS LINE >>\ndiff-train-skip-merge\ndiff-train-source-id: f40cb70c521410c9d16a4623514d3fb3a755b33c\n\nGenerated by: https://www.internalfb.com/intern/sandcastle/job/2567264638/\n\nGitHub Repo: facebookresearch/tensor-layouts\n\nReviewed By: jduprat\n\nDifferential Revision: D98051566\n\nfbshipit-source-id: 150f0fe4e579896e660a2a2615beddd16e610389",
          "is_bot": false,
          "headline": "Link to fbsource",
          "author_name": "generatedunixname499836121",
          "author_login": null,
          "committed_at": "2026-03-25T01:06:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c5c71ed431e3df8a9fb010314d7610eb7734fc7",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/362\n\nReplace all stdlib `json` usage with `orjson` across tritonparse for faster JSON serialization/deserialization.\n\nResolves: https://github.com/meta-pytorch/tritonparse/issues/266\n\nChanges:\n- Add `orjson>=3.9` as a d\n[…]\neserve `\"import json\"` in reproducer-generated user code (`function_extractor.py`)\n\nReviewed By: xuzhao9\n\nDifferential Revision: D97564498\n\nfbshipit-source-id: c9f354b227d49774338bc3803bce93a9d4d61949",
          "is_bot": false,
          "headline": "Replace stdlib json with orjson across all tritonparse modules (#362)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-03-24T22:45:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e787d1b30b58013f6054be2d3967e0c39722f936",
          "body": "Summary:\nBumps [flatted](https://github.com/WebReflection/flatted) from 3.3.3 to 3.4.2.\n<details>\n<summary>Commits</summary>\n<ul>\n<li><a href=\"https://github.com/WebReflection/flatted/commit/3bf09091c3562e17a0647bc06710dd6097079cf7\"><code>3bf0909</code></a> 3.4.2</li>\n<li><a href=\"https://github.com\n[…]\nresolved: https://github.com/meta-pytorch/tritonparse/pull/363\n\nReviewed By: xuzhao9\n\nDifferential Revision: D97969196\n\nPulled By: FindHao\n\nfbshipit-source-id: 5df502f66e69bd297828c45544f504fb72cd477b",
          "is_bot": true,
          "headline": "Bump flatted from 3.3.3 to 3.4.2 in /website (#363)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-03-24T19:12:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "839af17e745e5c9b4db117c82947f29dacae4986",
          "body": "Summary:\nPull Request resolved: https://github.com/meta-pytorch/tritonparse/pull/359\n\nFix https://github.com/meta-pytorch/tritonparse/issues/276\n\nWhen a kernel is launched during CUDA graph capture, argument extraction\nis skipped (D86722827) and `extracted_args` contains only a `_note` string\ninstea\n[…]\n` early, before any downstream code tries to\nprocess the incomplete argument data.\n\nReviewed By: xuzhao9\n\nDifferential Revision: D97514433\n\nfbshipit-source-id: c4e61d50884e0e6e451c581f1d602970247e4849",
          "is_bot": false,
          "headline": "Error out when reproducing CUDA graph capture kernels (#359)",
          "author_name": "Yueming Hao",
          "author_login": "FindHao",
          "committed_at": "2026-03-23T18:56:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 14,
      "commits_last_year": 456,
      "latest_release_at": "2026-07-10T19:16:05Z",
      "latest_release_tag": "v0.5.1",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 48,
      "days_since_latest_release": 21,
      "mean_days_between_releases": 29.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "tritonparse",
          "exists": true,
          "license": "BSD-3-Clause",
          "keywords": [],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/tritonparse/",
          "is_deprecated": false,
          "latest_version": "0.5.1",
          "repository_url": "https://github.com/meta-pytorch/tritonparse",
          "versions_count": 178,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 4898,
          "first_published_at": "2025-08-20T17:19:47.570971Z",
          "latest_published_at": "2026-07-10T19:16:41.956606Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 21
        }
      ]
    },
    "popularity": {
      "forks": 26,
      "stars": 212,
      "watchers": 6,
      "fork_history": {
        "days": [
          {
            "date": "2025-06-15",
            "count": 2
          },
          {
            "date": "2025-06-16",
            "count": 1
          },
          {
            "date": "2025-07-01",
            "count": 1
          },
          {
            "date": "2025-07-28",
            "count": 2
          },
          {
            "date": "2025-08-05",
            "count": 1
          },
          {
            "date": "2025-08-17",
            "count": 1
          },
          {
            "date": "2025-08-25",
            "count": 1
          },
          {
            "date": "2025-08-30",
            "count": 1
          },
          {
            "date": "2025-09-02",
            "count": 1
          },
          {
            "date": "2025-10-23",
            "count": 1
          },
          {
            "date": "2025-11-05",
            "count": 1
          },
          {
            "date": "2025-11-18",
            "count": 1
          },
          {
            "date": "2025-12-10",
            "count": 1
          },
          {
            "date": "2026-01-24",
            "count": 1
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 2
          },
          {
            "date": "2026-04-01",
            "count": 2
          },
          {
            "date": "2026-04-07",
            "count": 1
          },
          {
            "date": "2026-04-16",
            "count": 1
          },
          {
            "date": "2026-04-23",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-05-12",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 26,
        "total_forks": 26
      },
      "star_history": null,
      "open_issues_and_prs": 35
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "website/tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 85231,
      "source_files_sampled": 215,
      "oversized_source_files": 2,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "pyproject.toml",
        "website/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 6,
        "malicious_count": 0,
        "assessed_package": "pypi:tritonparse@0.5.1",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm",
        "pypi"
      ],
      "dependencies": [
        {
          "name": "orjson",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.9"
        },
        {
          "name": "rich",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=13.0"
        },
        {
          "name": "zstandard",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.19.0"
        },
        {
          "name": "@heroicons/react",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.2.0"
        },
        {
          "name": "@monaco-editor/react",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.7.0"
        },
        {
          "name": "@types/react-syntax-highlighter",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^15.5.13"
        },
        {
          "name": "clp-ffi-js",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.0-beta.3"
        },
        {
          "name": "monaco-editor",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.55.1"
        },
        {
          "name": "prismjs",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.30.0"
        },
        {
          "name": "react",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "react-dom",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "react-resizable-panels",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.12.0"
        },
        {
          "name": "react-syntax-highlighter",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^16.1.1"
        },
        {
          "name": "react-window",
          "manifest": "website/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.2.7"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@heroicons/react",
            "direct": true,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@monaco-editor/react",
            "direct": true,
            "version": "4.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-syntax-highlighter",
            "direct": true,
            "version": "15.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "clp-ffi-js",
            "direct": true,
            "version": "0.7.0-beta.3",
            "ecosystem": "npm"
          },
          {
            "name": "monaco-editor",
            "direct": true,
            "version": "0.55.1",
            "ecosystem": "npm"
          },
          {
            "name": "prismjs",
            "direct": true,
            "version": "1.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react-resizable-panels",
            "direct": true,
            "version": "4.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-syntax-highlighter",
            "direct": true,
            "version": "16.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-window",
            "direct": true,
            "version": "2.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "orjson",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": true,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.7",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@monaco-editor/loader",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/node",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-android-arm64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-arm64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-x64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-freebsd-x64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-gnu",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-musl",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-gnu",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-musl",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-wasm32-wasi",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-arm64-msvc",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-x64-msvc",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/vite",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/esrecurse",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/prismjs",
            "direct": false,
            "version": "1.26.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "19.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "10.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.40",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.4",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001800",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.11",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.382",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.21.6",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react-hooks",
            "direct": false,
            "version": "7.1.0-canary-404b38c7-20260408",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react-refresh",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fault",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "format",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "17.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hermes-estree",
            "direct": false,
            "version": "0.25.1",
            "ecosystem": "npm"
          },
          {
            "name": "hermes-parser",
            "direct": false,
            "version": "0.25.1",
            "ecosystem": "npm"
          },
          {
            "name": "highlight.js",
            "direct": false,
            "version": "10.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "highlightjs-vue",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lowlight",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "marked",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.50",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.25",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "refractor",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "state-local",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": false,
            "version": "8.62.1",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "zod-validation-error",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "coverage",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "parameterized",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytorch-triton",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff-api",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools-scm",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "ufmt",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "usort",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 258,
        "direct_count": 14,
        "indirect_count": 244
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 4,
        "open_issues": 33,
        "closed_ratio": 0.692,
        "closed_issues": 74,
        "closed_unmerged_prs": 307
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "FindHao",
          "commits": 419,
          "avatar_url": "https://avatars.githubusercontent.com/u/3823240?v=4"
        },
        {
          "type": "User",
          "login": "wychi",
          "commits": 25,
          "avatar_url": "https://avatars.githubusercontent.com/u/231175?v=4"
        },
        {
          "type": "User",
          "login": "prithvip0524",
          "commits": 23,
          "avatar_url": "https://avatars.githubusercontent.com/u/258340098?v=4"
        },
        {
          "type": "User",
          "login": "peiying779",
          "commits": 15,
          "avatar_url": "https://avatars.githubusercontent.com/u/243891875?v=4"
        },
        {
          "type": "User",
          "login": "zhudada0120",
          "commits": 14,
          "avatar_url": "https://avatars.githubusercontent.com/u/57648612?v=4"
        },
        {
          "type": "User",
          "login": "agron911",
          "commits": 9,
          "avatar_url": "https://avatars.githubusercontent.com/u/24850433?v=4"
        },
        {
          "type": "User",
          "login": "xuzhao9",
          "commits": 9,
          "avatar_url": "https://avatars.githubusercontent.com/u/502017?v=4"
        },
        {
          "type": "User",
          "login": "srivatsan-ramesh",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/8907490?v=4"
        },
        {
          "type": "User",
          "login": "njriasan",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/28767570?v=4"
        },
        {
          "type": "User",
          "login": "facebook-github-bot",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/6422482?v=4"
        }
      ],
      "contributors_sampled": 21,
      "top_contributor_share": 0.773
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "cleanup-stale-pr-branches.yml",
        "deploy-pages-standalone.yml",
        "deploy-pages.yml",
        "nightly-pypi.yml",
        "sync-wiki.yml",
        "test.yml",
        "website-build.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.js"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json"
      ],
      "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": null,
            "reason": "no pull request found",
            "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": 9,
            "reason": "Found 29/30 approved changesets -- score normalized to 9",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 6 contributing companies or organizations",
            "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": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 5 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": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 1,
            "reason": "dependency not pinned by hash detected -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "no SAST tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not 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": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "e37aed84a05e4a6020ef7b3f7cc7ad45d934a451",
        "ran_at": "2026-08-01T07:56:13Z",
        "aggregate_score": 6.3,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-08-01T07:51:57Z",
      "oldest_open_prs": [
        {
          "number": 407,
          "created_at": "2026-05-14T10:51:57Z",
          "last_comment_at": "2026-05-30T06:26:09Z",
          "last_comment_author": "hesam-oxe"
        },
        {
          "number": 415,
          "created_at": "2026-06-01T08:58:27Z",
          "last_comment_at": "2026-07-23T04:55:08Z",
          "last_comment_author": "Bill-hbrhbr"
        }
      ],
      "last_merged_pr_at": "2026-04-07T18:24:12Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 55,
          "created_at": "2025-08-06T18:14:19Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 56,
          "created_at": "2025-08-06T18:17:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 57,
          "created_at": "2025-08-06T18:18:25Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 60,
          "created_at": "2025-08-06T18:24:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 61,
          "created_at": "2025-08-06T18:27:29Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 63,
          "created_at": "2025-08-06T18:44:55Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 68,
          "created_at": "2025-08-11T23:18:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 71,
          "created_at": "2025-08-15T17:58:00Z",
          "last_comment_at": "2025-12-26T18:52:29Z",
          "last_comment_author": "FindHao"
        },
        {
          "number": 91,
          "created_at": "2025-09-09T20:18:01Z",
          "last_comment_at": "2026-03-20T18:35:48Z",
          "last_comment_author": "FindHao"
        },
        {
          "number": 105,
          "created_at": "2025-09-16T03:43:34Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 140,
          "created_at": "2025-09-30T22:11:24Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 143,
          "created_at": "2025-10-01T21:17:16Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 146,
          "created_at": "2025-10-02T00:46:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 152,
          "created_at": "2025-10-03T16:57:30Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 192,
          "created_at": "2025-10-29T18:19:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 193,
          "created_at": "2025-10-29T22:28:56Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 196,
          "created_at": "2025-11-06T22:30:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 199,
          "created_at": "2025-11-14T17:32:52Z",
          "last_comment_at": "2026-03-20T18:26:14Z",
          "last_comment_author": "FindHao"
        },
        {
          "number": 212,
          "created_at": "2025-12-02T18:57:12Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 218,
          "created_at": "2025-12-10T18:19:03Z",
          "last_comment_at": "2025-12-23T19:09:13Z",
          "last_comment_author": "FindHao"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/meta-pytorch/tritonparse",
    "host": "github.com",
    "name": "tritonparse",
    "owner": "meta-pytorch"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": "The weighted overall 77 is calibrated to 91 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 77,
            "calibrated": 91,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 91,
      "inputs": {
        "security": 70,
        "vitality": 98,
        "community": 66,
        "governance": 62,
        "calibration": "2026-08-02",
        "engineering": 88,
        "ai_readiness": 67,
        "weighted_overall_raw": 77
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "exceptional",
        "name": "Vitality",
        "value": 98,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "exceptional",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 97,
            "inputs": {
              "commits_last_year": 456,
              "human_commit_share": 0.9,
              "days_since_last_push": 0,
              "active_weeks_last_year": 48
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "48/52 weeks with commits",
                "points": 33.2,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 48
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "456 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 456
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 5 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": 14,
              "latest_release_tag": "v0.5.1",
              "releases_from_tags": false,
              "days_since_latest_release": 21,
              "mean_days_between_releases": 29.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "14 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 14
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 21 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 21
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~29.9 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 29.9
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "exceptional",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 3,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 3 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 3
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 66,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 53,
            "inputs": {
              "forks": 26,
              "stars": 212,
              "watchers": 6,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "212 stars",
                "points": 37.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 212
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "26 forks",
                "points": 11.7,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 26
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "6 watchers",
                "points": 3.9,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": null,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "readme_badge_services": [],
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (BSD-3-Clause)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "BSD-3-Clause"
                    }
                  }
                ],
                "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": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "moderate",
            "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": 62,
            "inputs": {
              "packages": [
                "tritonparse"
              ],
              "dependents": null,
              "ecosystems": "pypi",
              "total_downloads": null,
              "monthly_downloads": 4898
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "4,898 downloads/month across pypi",
                "points": 49.2,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 4898,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "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": "moderate",
        "name": "Sustainability & Governance",
        "value": 62,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "weak",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 38,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 21,
              "top_contributor_share": 0.773
            },
            "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 77% of commits",
                "points": 5.1,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 77
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "21 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 21
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 6 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "weak",
            "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": 49,
            "inputs": {
              "merged_prs": 4,
              "open_issues": 33,
              "closed_issues": 74,
              "prs_merged_7d": null,
              "prs_decided_7d": null,
              "prs_merged_30d": null,
              "prs_decided_30d": null,
              "issue_closed_ratio": 0.692,
              "closed_unmerged_prs": 307,
              "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": "69% of issues closed",
                "points": 29.1,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 69
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "4/311 decided PRs merged",
                "points": 0.4,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 4,
                      "decided": 311
                    }
                  }
                ],
                "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 29/30 approved changesets -- score normalized to 9",
                "points": 13.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "followers": 1390,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "meta-pytorch",
              "public_repos": 60,
              "account_age_days": 1513
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "1,390 followers of meta-pytorch",
                "points": 22.6,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1390,
                      "login": "meta-pytorch"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "60 public repos, account ~4 yr old",
                "points": 21.3,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 60
                    }
                  },
                  {
                    "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": [
                "tritonparse"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 21
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 21 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 21
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "178 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 178
                    }
                  }
                ],
                "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": 88,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_ci_tests"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 80,
            "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": "7 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "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.js",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "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": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "exceptional",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "topics": [
                "compiler",
                "debugging",
                "interactive-visualization",
                "ir-analysis",
                "pytorch",
                "structured-logging",
                "triton",
                "gpu-kernel",
                "ir-visualization"
              ],
              "has_wiki": true,
              "homepage": "https://meta-pytorch.org/tritonparse/",
              "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://meta-pytorch.org/tritonparse/",
                "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": "9 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 9
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 70,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): CI-Tests, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "ci_tests",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 63,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 6.3
            },
            "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": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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 29/30 approved changesets -- score normalized to 9",
                "points": 6.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 6 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "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": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 5 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 detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 1",
                "points": 0.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "no SAST tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "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": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "exceptional",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the pypi:tritonparse@0.5.1 runtime dependency closure — what installing the published package pulls in — 6 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "pypi:tritonparse@0.5.1",
                  "assessed": 6
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 6,
              "unassessed_packages": 0,
              "affected_by_severity": "none",
              "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": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "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": 6,
              "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": 7
            },
            "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": 67,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "weak",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "90 of 90 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 90,
                      "sampled": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json"
              ],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "website/tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0.08
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "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.js",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "website/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "website/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "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": "8 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 8,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 1",
                "points": 1,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 82,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 85231,
              "source_files_sampled": 215,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python with type-check config (website/tsconfig.json)",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "typecheck_config_language",
                    "params": {
                      "files": "website/tsconfig.json",
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/215 source files over 60KB",
                "points": 54.5,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 215,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "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",
        "web-ui"
      ],
      "scores": {
        "web-ui": 4,
        "library": 6
      },
      "primary": "library",
      "evidence": [
        {
          "tier": "distribution",
          "label": "library",
          "source": "registry:pypi",
          "weight": 6
        },
        {
          "tier": "dependencies",
          "label": "web-ui",
          "source": "dep:react-dom",
          "weight": 4
        }
      ],
      "artifacts": [],
      "confidence": "medium",
      "host_extension": false,
      "runs_as_process": true,
      "consumed_by_code": true
    },
    "metrics_version": "2.3.1"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-08-01T07:56:27.725660Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/meta-pytorch/tritonparse.svg",
  "full_name": "meta-pytorch/tritonparse",
  "license_state": "standard",
  "license_spdx": "BSD-3-Clause"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v2.3.1, Schema v0.27.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenPyPI.