Öffentliches Register
Software-GesundheitsberichtSchema 0.15.0 · Metriken 2.10.0 · 2026-07-20 13:43 UTC

splitwise / super_diff

A more helpful way to view differences between complex data structures in RSpec.

RubyMIT★ 1.047 Sterne⑂ 64 Forksseit Jan. 2011Auf GitHub ansehen ↗

splitwise/super_diff erreicht einen Gesundheitsindex von 83 von 100 und liegt damit im Bereich Exzellent. Am stärksten schneidet es bei Engineering Quality (89/100) ab, am schwächsten bei AI Readiness (39/100). Zuletzt vor 27 Tagen aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

83
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.

83
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 70 wird auf der veröffentlichten Indexskala auf 83 kalibriert (Register-Kalibrierung 2026-08-02).

Eigentümerschaft

SplitwiseOrganisation
64 Follower63 öffentliche Reposseit März 2012

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

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlicht
RubyGemssuper_diff0.19.0-26vor 79 Tagen

Metriken nach Kategorie

Vitalität

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

66Gut · 21 % des Gesamtindex
Wie die Bewertung erfolgt
28.8/36Push-Aktualitätletzter Push vor 27 Tagen
4.8/36Commit-Rhythmus7/52 Wochen mit Commits
12.6/18Commit-Volumen24 Commits im letzten Jahr
3/10OpenSSF Scorecard: Maintained3 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 3
Verwendete Eingangsdaten
commits_last_year24
human_commit_share
days_since_last_push27
active_weeks_last_year7
Wie die Bewertung erfolgt
27/27Liefert Releases aus27 Releases veröffentlicht
36/36Release-Aktualitätletztes Release vor 79 Tagen
19.8/27Release-Rhythmusein Release etwa alle 90,1 Tage
0/10OpenSSF Scorecard: Signed-Releaseskeine Daten
Verwendete Eingangsdaten
releases_count27
latest_release_tagv0.19.0
releases_from_tagsnein
days_since_latest_release79
mean_days_between_releases90,1
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?

74Gut · 17 % des Gesamtindex
Wie die Bewertung erfolgt
49/60Stars1.047 Stars
15/25Forks64 Forks
5.3/15Watcher10 Watcher
Verwendete Eingangsdaten
forks64
stars1.047
watchers10
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenzanerkannte Lizenz (MIT)
0/18CONTRIBUTING-Leitfaden
13.5/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
readme_badges
has_contributingnein
has_issue_templatenein
has_code_of_conductja
readme_badge_services
has_pull_request_templatenein
Wie die Bewertung erfolgt
74.2/80Downloads gesamt13.955.848 Downloads insgesamt über rubygems
0/20Abhängige in der Registryvon diesem Ökosystem nicht ausgewiesen
Verwendete Eingangsdaten
packagessuper_diff
dependents
ecosystemsrubygems
total_downloads13.955.848
monthly_downloads
unverified_packages_excluded
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?

69Gut · 23 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor1 Beitragende decken die Hälfte aller Commits ab
7.3/22.5Commit-Verteilungwichtigste beitragende Person verfasste 68 % der Commits
13.5/13.5Breite der Beitragenden31 Beitragende
6/10OpenSSF Scorecard: Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
Verwendete Eingangsdaten
bus_factor1
contributors_sampled31
top_contributor_share0,675
Wie die Bewertung erfolgt
30.7/42Issue-Lösungsquote73 % der Issues geschlossen
26.3/30PR-Annahme128/146 entschiedene PRs gemergt
0/13Newcomer PR acceptancekein PR eines Erstbeitragenden in 30 Tagen entschieden
0/15OpenSSF Scorecard: Code-ReviewFound 2/27 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs128
open_issues44
closed_issues119
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio0,73
closed_unmerged_prs18
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ägerschaftim Besitz einer Organisation
0/20Verifizierte DomainVerifizierungsstatus der Domain für diese Organisation nicht ausgelesen
13/25Reichweite des Inhabers64 Follower von splitwise
25/25Kontohistorie63 öffentliche Repos, Kontoalter ca. 14 Jahre
Verwendete Eingangsdaten
followers64
owner_typeOrganization
is_verified
owner_loginsplitwise
public_repos63
account_age_days5.226
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Verifizierte Domain. Die verbleibenden Gewichte wurden renormalisiert.

Paketpflege

100Außergewöhnlich
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar1 Paket(e) auf rubygems
35/35Veröffentlichungsaktualitätletzte Veröffentlichung vor 79 Tagen
20/20Versionshistorie26 veröffentlichte Versionen
20/20Nicht veraltetaktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagessuper_diff
ecosystemsrubygems
any_deprecatednein
min_days_since_publish79

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

89Exzellent · 19 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows1 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration.rubocop.yml
0/9.6Pre-Commit-Hooks
6.4/6.4.editorconfig
18/20OpenSSF Scorecard: CI-Tests18 out of 19 merged PRs checked by a CI test -- score normalized to 9
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfigja
has_linter_configja
has_precommit_confignein

Dokumentation

90Exzellent
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Sitehttps://splitwise.github.io/super_diff/
10/10Repository-Beschreibung
10/10Topics3 Topics
0/10Wiki
Verwendete Eingangsdaten
topicsrspec, ruby, testing
has_wikinein
homepagehttps://splitwise.github.io/super_diff/
docs_sitehttps://splitwise.github.io/super_diff/
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

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

60Mittel · 16 % des Gesamtindex
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifactsno binaries found in the repo
0/7.5Branch-Protectionkeine Daten
2.2/2.5CI-Tests18 out of 19 merged PRs checked by a CI test -- score normalized to 9
0/2.5CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0/7.5Code-ReviewFound 2/27 approved changesets -- score normalized to 0
1.5/2.5Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10/10Dangerous-Workflowno dangerous workflow patterns detected
7.5/7.5Dependency-Update-Toolupdate tool detected
0/5Fuzzingproject is not fuzzed
2.5/2.5Lizenzlicense file detected
2.2/7.5Maintained3 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 3
0/5Packagingkeine Daten
4/5Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
4/5SASTSAST tool is not run on all commits -- score normalized to 8
4.5/5Security-Policysecurity policy file detected
0/7.5Signed-Releaseskeine Daten
0/7.5Token-Permissionsdetected GitHub workflow tokens with excessive permissions
5.2/7.5Vulnerabilities3 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate6
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Branch-Protection, Packaging, Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

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.

39Schwach · 4 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungenkeine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
0/40Lesbare Commit-Historiekeine Daten
Verwendete Eingangsdaten
has_llms_txtnein
llms_txt_url
legible_history_share
agent_instruction_files
agent_instruction_max_bytes
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Lesbare Commit-Historie. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
0/18Bootstrap mit einem Befehl
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration.rubocop.yml
0/11Statische Typprüfung
10/10Reproduzierbare Umgebunglockfile
0/10Belegte Agentenpraxiskeine Daten
0/8Automatisierte Wartungkeine Daten
8/10OpenSSF Scorecard: Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilesGemfile.lock, yarn.lock
has_dockerfilenein
typed_languagenein
bootstrap_files
has_devcontainernein
has_linter_configja
typecheck_configs
agent_commit_share
toolchain_manifests
dependency_bot_commit_share
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Belegte Agentenpraxis, Automatisierte Wartung. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
0/45Typprüfbarer CodeRuby ohne Typprüfungs-Konfiguration
54.3/55Handhabbare Dateigrößen4/313 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageRuby
largest_source_bytes2.212.925
source_files_sampled313
oversized_source_files4

Eckdaten

1.047GitHub-Sterne
31Mitwirkende
24Commits, letzte 12 Monate
27Tage seit letztem Push
27Releases
1Bus-Faktor
44offene Issues
npm, PyPI, RubyGemsPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Could not fetch pypi package 'super-diff' from its registry

Weitere Details

OpenSSF Scorecard 6.0 / 10
6.0Gesamtwert

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-07-20 13:42 UTC

10Binary-Artifactsno binaries found in the repo
k. A.Branch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
9CI-Tests18 out of 19 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 2/27 approved changesets -- score normalized to 0
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
3Maintained3 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 3
k. A.Packagingpackaging workflow not detected
8Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
8SASTSAST tool is not run on all commits -- score normalized to 8
9Security-Policysecurity policy file detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
7Vulnerabilities3 existing vulnerabilities detected
Direkte Abhängigkeiten 8
RegistryPaketVersionsvorgabeManifest
RubyGemsappraisal~> 2.5Gemfile
RubyGemsbundler-auditGemfile
RubyGemschildprocessGemfile
RubyGemsclimate_controlGemfile
RubyGemsdebugGemfile
RubyGemsprettier_printGemfile
RubyGemsrakeGemfile
RubyGemsrubocopGemfile
Alle Abhängigkeiten 145

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

RegistryPaketVersionBeziehung
RubyGemsappraisal2.5.0direkt
RubyGemsbundler-audit0.9.2direkt
RubyGemschildprocess4.1.0direkt
RubyGemsclimate_control1.1.1direkt
RubyGemsdebug1.11.0direkt
RubyGemsprettier_print1.2.1direkt
RubyGemsrake13.0.6direkt
RubyGemsrubocop1.67.0direkt
npm@gar/promise-retry1.0.3indirekt
npm@isaacs/fs-minipass4.0.1indirekt
npm@lavamoat/aa4.3.6indirekt
npm@lavamoat/allow-scripts3.4.3indirekt
npm@npmcli/agent4.0.0indirekt
npm@npmcli/fs5.0.0indirekt
npm@npmcli/git7.0.2indirekt
npm@npmcli/node-gyp5.0.0indirekt
npm@npmcli/package-json7.0.5indirekt
npm@npmcli/promise-spawn9.0.1indirekt
npm@npmcli/redact4.0.0indirekt
npm@npmcli/run-script10.0.3indirekt
npmabbrev4.0.0indirekt
npmagent-base7.1.3indirekt
npmansi-regex5.0.1indirekt
npmansi-styles4.3.0indirekt
npmbalanced-match4.0.4indirekt
npmbin-links4.0.4indirekt
npmbrace-expansion5.0.5indirekt
npmcacache20.0.4indirekt
npmchownr3.0.0indirekt
npmcliui8.0.1indirekt
npmcmd-shim6.0.1indirekt
npmcolor-convert2.0.1indirekt
npmcolor-name1.1.4indirekt
npmdebug4.4.0indirekt
npmemoji-regex8.0.0indirekt
npmenv-paths2.2.1indirekt
npmescalade3.1.1indirekt
npmexponential-backoff3.1.2indirekt
npmfdir6.5.0indirekt
npmfs-minipass3.0.3indirekt
npmfunction-bind1.1.2indirekt
npmget-caller-file2.0.5indirekt
npmglob13.0.6indirekt
npmgraceful-fs4.2.11indirekt
npmhasown2.0.2indirekt
npmhosted-git-info9.0.2indirekt
npmhttp-cache-semantics4.1.1indirekt
npmhttp-proxy-agent7.0.2indirekt
npmhttps-proxy-agent7.0.6indirekt
npmhusky8.0.3indirekt
npmiconv-lite0.7.2indirekt
npmimurmurhash0.1.4indirekt
npmini6.0.0indirekt
npmip-address9.0.5indirekt
npmis-core-module2.16.1indirekt
npmis-fullwidth-code-point3.0.0indirekt
npmisexe4.0.0indirekt
npmjsbn1.1.0indirekt
npmjson-parse-even-better-errors5.0.0indirekt
npmlru-cache11.2.7indirekt
npmmake-fetch-happen15.0.5indirekt
npmminimatch10.2.4indirekt
npmminipass3.3.6indirekt
npmminipass7.1.2indirekt
npmminipass7.1.3indirekt
npmminipass-collect2.0.1indirekt
npmminipass-fetch5.0.2indirekt
npmminipass-flush1.0.5indirekt
npmminipass-pipeline1.2.4indirekt
npmminipass-sized2.0.0indirekt
npmminizlib3.1.0indirekt
npmms2.1.3indirekt
npmnegotiator1.0.0indirekt
npmnode-gyp12.2.0indirekt
npmnopt9.0.0indirekt
npmnpm-install-checks8.0.0indirekt
npmnpm-normalize-package-bin3.0.0indirekt
npmnpm-normalize-package-bin3.0.1indirekt
npmnpm-normalize-package-bin5.0.0indirekt
npmnpm-package-arg13.0.2indirekt
npmnpm-pick-manifest11.0.3indirekt
npmp-map7.0.4indirekt
npmpath-parse1.0.7indirekt
npmpath-scurry2.0.2indirekt
npmpicomatch4.0.4indirekt
npmproc-log6.1.0indirekt
npmread-cmd-shim4.0.0indirekt
npmrequire-directory2.1.1indirekt
npmresolve1.22.10indirekt
npmsafer-buffer2.1.2indirekt
npmsemver7.7.1indirekt
npmsignal-exit3.0.7indirekt
npmsmart-buffer4.2.0indirekt
npmsocks2.8.4indirekt
npmsocks-proxy-agent8.0.5indirekt
npmspdx-exceptions2.5.0indirekt
npmspdx-expression-parse4.0.0indirekt
npmspdx-license-ids3.0.21indirekt
npmsprintf-js1.1.3indirekt
npmssri13.0.1indirekt
npmstring-width4.2.3indirekt
npmstrip-ansi6.0.1indirekt
npmsupports-preserve-symlinks-flag1.0.0indirekt
npmtar7.5.13indirekt
npmtinyglobby0.2.15indirekt
npmtype-fest4.41.0indirekt
npmvalidate-npm-package-name7.0.2indirekt
npmwhich6.0.1indirekt
npmwrap-ansi7.0.0indirekt
npmwrite-file-atomic5.0.0indirekt
npmy18n5.0.8indirekt
npmyallist4.0.0indirekt
npmyallist5.0.0indirekt
npmyargs17.7.2indirekt
npmyargs-parser21.1.1indirekt
RubyGemsast2.4.2indirekt
RubyGemsattr_extrasindirekt
RubyGemsattr_extras6.2.5indirekt
RubyGemsdate3.4.1indirekt
RubyGemsdiff-lcsindirekt
RubyGemsdiff-lcs1.5.1indirekt
RubyGemserb6.0.4indirekt
RubyGemsio-console0.8.1indirekt
RubyGemsirb1.15.2indirekt
RubyGemsjson2.7.2indirekt
RubyGemslanguage_server-protocol3.17.0.3indirekt
RubyGemsoptimist3.1.0indirekt
RubyGemsparallel1.26.3indirekt
RubyGemsparser3.3.5.0indirekt
RubyGemspatience_diffindirekt
RubyGemspatience_diff1.2.0indirekt
RubyGemspp0.6.3indirekt
RubyGemsprettyprint0.2.0indirekt
RubyGemspsych5.2.6indirekt
RubyGemsracc1.8.1indirekt
RubyGemsrainbow3.1.1indirekt
RubyGemsrdoc6.15.0indirekt
RubyGemsregexp_parser2.9.2indirekt
RubyGemsreline0.6.2indirekt
RubyGemsrubocop-ast1.32.3indirekt
RubyGemsruby-progressbar1.13.0indirekt
RubyGemsstringio3.1.7indirekt
RubyGemsthor1.4.0indirekt
RubyGemstsort0.2.0indirekt
RubyGemsunicode-display_width2.6.0indirekt
JSON-Rohbericht maschinenlesbar

Feedback

Stimmt etwas in diesem Bericht nicht, oder gibt es Gedanken dazu? Falsche Messungen, übersehene Tools, Ideen, Fragen — alles ist willkommen. Jede Nachricht wird gelesen und beantwortet.

Die Nachricht bleibt bei der Anmeldung erhalten.

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.10.0, Schema v0.15.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenRubyGems.