Öffentliches Register
Software-GesundheitsberichtSchema 0.27.0 · Metriken 1.13.0 · 2026-07-23 21:51 UTC

tx7do / go-wind-plugins

Multi-engine plugin ecosystem for the Go Wind microservice framework, providing unified interfaces and plug-and-play adapters for mainstream tech stacks.

GoMIT★ 4 Sterne⑂ 1 Forkseit Juni 2026Auf GitHub ansehen ↗

tx7do/go-wind-plugins erreicht einen Gesundheitsindex von 36 von 100 und liegt damit im Bereich Gefährdet. Am stärksten schneidet es bei AI Readiness (67/100) ab, am schwächsten bei Security (21/100). Zuletzt vor 6 Tagen aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

36
gesamt / 100
Gefährdet

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

36
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende 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.

Eigentümerschaft

BoboPersönliches Konto
215 Follower212 öffentliche Reposseit Nov. 2015

Dieses Repository gehört einem persönlichen Konto. Ein Projekt mit nur einem Eigentümer trägt ein höheres Kontinuitätsrisiko als ein organisationsgetragenes.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlicht
Gogithub.com/tx7do/go-wind-plugins/logv0.0.1-1vor 44 Tagen
Gogithub.com/tx7do/go-wind-plugins/cachev0.0.1-1vor 42 Tagen
Gogithub.com/tx7do/go-wind-plugins/pprofv0.0.1-1vor 42 Tagen
Gogithub.com/tx7do/go-wind-plugins/retryv0.0.1-1vor 42 Tagen
Gogithub.com/tx7do/go-wind-plugins/brokerv0.0.1-1vor 42 Tagen
Gogithub.com/tx7do/go-wind-plugins/configv0.0.1-1vor 44 Tagen
Gogithub.com/tx7do/go-wind-plugins/errorsv0.0.1-1vor 43 Tagen
Gogithub.com/tx7do/go-wind-plugins/healthv0.0.1-1vor 42 Tagen

Metriken nach Kategorie

Vitalität

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

35Gefährdet · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 6 Tagen
3.5/36Commit-Rhythmus — 5/52 Wochen mit Commits
17.6/18Commit-Volumen — 91 Commits im letzten Jahr
0/10OpenSSF Scorecard: Maintained — project was created within the last 90 days. Please review its contents carefully
Verwendete Eingangsdaten
commits_last_year91
human_commit_share1
days_since_last_push6
active_weeks_last_year5
Wie die Bewertung erfolgt
0/27Liefert Releases aus — keine Releases veröffentlicht
0/36Release-Aktualität — keine Releases
0/27Release-Rhythmus — keine Releases
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count0
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?

28Kritisch · 18 % des Gesamtindex
Wie die Bewertung erfolgt
7.7/60Stars — 4 Stars
0/25Forks — 1 Forks
0/15Watcher — 0 Watcher
Verwendete Eingangsdaten
forks1
stars4
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (MIT)
0/18CONTRIBUTING-Leitfaden
0/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingnein
has_issue_templatenein
has_code_of_conductnein
has_pull_request_templatenein

Nachhaltigkeit & Governance

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

36Gefährdet · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
0/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 100 % der Commits
1.4/13.5Breite der Beitragenden — 1 Beitragende
0/10OpenSSF Scorecard: Contributors — project has 0 contributing companies or organizations -- score normalized to 0
Verwendete Eingangsdaten
bus_factor1
contributors_sampled1
top_contributor_share1
Wie die Bewertung erfolgt
0/46.8Issue-Lösungsquote — keine Issues oder keine Daten
0/38.3PR-Annahme — keine entschiedenen Pull Requests oder keine Daten
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs0
open_issues0
closed_issues0
issue_closed_ratio
closed_unmerged_prs0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Issue-Lösungsquote, PR-Annahme. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
10/30Organisatorische Trägerschaft — persönliches (Nutzer-)Konto
0/20Verifizierte Domain — für Nutzerkonten nicht anwendbar
16.8/25Reichweite des Inhabers — 215 Follower von tx7do
25/25Kontohistorie — 212 öffentliche Repos, Kontoalter ca. 10 Jahre
Verwendete Eingangsdaten
followers215
owner_typeUser
is_verified
owner_logintx7do
public_repos212
account_age_days3.900
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Verifizierte Domain. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 8 Paket(e) auf go
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 42 Tagen
4/20Versionshistorie — 1 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagesgithub.com/tx7do/go-wind-plugins/log, github.com/tx7do/go-wind-plugins/cache, github.com/tx7do/go-wind-plugins/pprof, github.com/tx7do/go-wind-plugins/retry, github.com/tx7do/go-wind-plugins/broker, github.com/tx7do/go-wind-plugins/config, github.com/tx7do/go-wind-plugins/errors, github.com/tx7do/go-wind-plugins/health
ecosystemsgo
any_deprecatednein
min_days_since_publish42

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

58Mittel · 20 % des Gesamtindex
Wie die Bewertung erfolgt
0/24CI-Workflows
24/24Tests vorhanden
0/16Linter-Konfiguration
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
0/20OpenSSF Scorecard: CI-Tests — keine Daten
Verwendete Eingangsdaten
has_cinein
has_testsja
has_editorconfignein
has_linter_confignein
has_precommit_confignein
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: CI-Tests. Die verbleibenden Gewichte wurden renormalisiert.

Dokumentation

100Exzellent
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://www.gowind.cloud/
10/10Repository-Beschreibung
10/10Topics — 10 Topics
10/10Wiki
Verwendete Eingangsdaten
topicsadapter, broker, configuration, go, grpc, http, microservice, opentelemetry, plugins, service-discovery
has_wikija
homepagehttps://www.gowind.cloud/
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

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

21Kritisch · 16 % des Gesamtindex

Sicherheitslage

21Kritisch
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — keine Daten
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
0/10Dangerous-Workflow — keine Daten
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
0/5Packaging — keine Daten
5/5Pinned-Dependencies — all dependencies are pinned
0/5SAST — no SAST tool detected
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — keine Daten
0/7.5Vulnerabilities — 44 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated13
scorecard_versionv5.5.0
checks_inconclusive5
scorecard_aggregate2,1
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): ci_tests, dangerous_workflow, packaging, signed_releases, token_permissions. Die verbleibenden Gewichte wurden renormalisiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

67Mittel · 0 % 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 91 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,989
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
18/18Bootstrap mit einem Befehl — security/authz/opa/policy/Makefile
22/22Automatisierte Tests
0/11Lint-/Format-Konfiguration
11/11Statische Typprüfung — Go (statisch typisiert)
10/10Reproduzierbare Umgebung — lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 91
0/8Automatisierte Wartung — keine automatisierten Abhängigkeits-Updates beobachtet
10/10OpenSSF Scorecard: Pinned-Dependencies — all dependencies are pinned
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilesgo.sum
has_dockerfilenein
typed_languageja
bootstrap_filessecurity/authz/opa/policy/Makefile
has_devcontainernein
has_linter_confignein
typecheck_configs
agent_commit_share0
toolchain_manifests_examples/go.mod, ai/eino/go.mod, ai/langchaingo/go.mod, ai/openai/go.mod, broker/azuresb/go.mod, broker/gcpubsub/go.mod, broker/go.mod, broker/kafka/go.mod, broker/mqtt/go.mod, broker/nats/go.mod, broker/nsq/go.mod, broker/pulsar/go.mod, broker/rabbitmq/go.mod, broker/redis/go.mod, broker/rocketmq/go.mod, broker/sqs/go.mod, broker/stomp/go.mod, cache/go.mod, cache/local/go.mod, cache/redis/go.mod, circuitbreaker/go.mod, circuitbreaker/hystrix/go.mod, circuitbreaker/sentinel/go.mod, circuitbreaker/sres/go.mod, circuitbreaker/vegas/go.mod, config/apollo/go.mod, config/consul/go.mod, config/env/go.mod, config/etcd/go.mod, config/file/go.mod, config/fs/go.mod, config/go.mod, config/http/go.mod, config/kubernetes/go.mod, config/nacos/go.mod, config/oss/go.mod, config/polaris/go.mod, config/redis/go.mod, config/vault/go.mod, config/zookeeper/go.mod, encoding/avro/go.mod, encoding/bson/go.mod, encoding/cbor/go.mod, encoding/flatbuffers/go.mod, encoding/go.mod, encoding/gob/go.mod, encoding/json/go.mod, encoding/msgpack/go.mod, encoding/proto/go.mod, encoding/thrift/go.mod, encoding/toml/go.mod, encoding/xml/go.mod, encoding/yaml/go.mod, errors/go.mod, health/go.mod, log/aliyun/go.mod, log/charm/go.mod, log/cloudwatch/go.mod, log/fluent/go.mod, log/glog/go.mod, log/go.mod, log/hclog/go.mod, log/logrus/go.mod, log/loki/go.mod, log/phuslu/go.mod, log/sentry/go.mod, log/tencent/go.mod, log/zap/go.mod, log/zerolog/go.mod, metrics/datadog/go.mod, metrics/go.mod, metrics/otel/go.mod, metrics/prometheus/go.mod, oss/minio/go.mod, oss/s3/go.mod, pprof/go.mod, ratelimit/bbr/go.mod, ratelimit/go.mod, ratelimit/sentinel/go.mod, ratelimit/tokenbucket/go.mod, registry/consul/go.mod, registry/etcd/go.mod, registry/eureka/go.mod, registry/go.mod, registry/kubernetes/go.mod, registry/nacos/go.mod, registry/polaris/go.mod, registry/servicecomb/go.mod, registry/zookeeper/go.mod, retry/go.mod, security/authn/apikey/go.mod, security/authn/basicauth/go.mod, security/authn/go.mod, security/authn/hmac/go.mod, security/authn/jwt/go.mod, security/authn/mtls/go.mod, security/authn/oauth2/go.mod, security/authn/oidc/go.mod, security/authn/presharedkey/go.mod, security/authn/session/go.mod, security/authz/acl/go.mod, security/authz/awsiam/go.mod, security/authz/casbin/go.mod, security/authz/cedar/go.mod, security/authz/cerbos/go.mod, security/authz/go.mod, security/authz/opa/go.mod, security/authz/rbac/go.mod, security/authz/zanzibar/go.mod, security/crypto/go.mod, testing/go.mod, tracer/otlp/go.mod, transaction/dtm/go.mod, transaction/go.mod, transport/activemq/go.mod, transport/asynq/go.mod, transport/azuresb/go.mod, transport/cron/go.mod, transport/gcpubsub/go.mod, transport/go.mod, transport/graphql/go.mod, transport/grpc/client/go.mod, transport/grpc/middleware/authn/go.mod, transport/grpc/middleware/authz/go.mod, transport/grpc/middleware/circuitbreaker/go.mod, transport/grpc/middleware/codec/go.mod, transport/grpc/middleware/crypto/go.mod, transport/grpc/middleware/errors/go.mod, transport/grpc/middleware/logging/go.mod, transport/grpc/middleware/metadata/go.mod, transport/grpc/middleware/metrics/go.mod, transport/grpc/middleware/ratelimit/go.mod, transport/grpc/middleware/recovery/go.mod, transport/grpc/middleware/requestid/go.mod, transport/grpc/middleware/retry/go.mod, transport/grpc/middleware/timeout/go.mod, transport/grpc/middleware/tracing/go.mod, transport/grpc/middleware/validate/go.mod, transport/grpc/server/go.mod, transport/hptimer/go.mod, transport/http/benchmark/go.mod, transport/http/binding/go.mod, transport/http/driver/chi/go.mod, transport/http/driver/fiber/go.mod, transport/http/driver/gin/go.mod, transport/http/driver/std/go.mod, transport/http/go.mod, transport/http/middleware/authn/go.mod, transport/http/middleware/authz/go.mod, transport/http/middleware/circuitbreaker/go.mod, transport/http/middleware/codec/go.mod, transport/http/middleware/cors/go.mod, transport/http/middleware/crypto/go.mod, transport/http/middleware/errors/go.mod, transport/http/middleware/logging/go.mod, transport/http/middleware/metadata/go.mod, transport/http/middleware/metrics/go.mod, transport/http/middleware/ratelimit/go.mod, transport/http/middleware/recovery/go.mod, transport/http/middleware/requestid/go.mod, transport/http/middleware/retry/go.mod, transport/http/middleware/timeout/go.mod, transport/http/middleware/tracing/go.mod, transport/http/middleware/validate/go.mod, transport/http/redoc/go.mod, transport/http/swagger/go.mod, transport/http3/go.mod, transport/kafka/go.mod, transport/kcp/go.mod, transport/machinery/go.mod, transport/mcp/go.mod, transport/mqtt/go.mod, transport/nats/go.mod, transport/nsq/go.mod, transport/pulsar/go.mod, transport/rabbitmq/go.mod, transport/redis/go.mod, transport/rocketmq/go.mod, transport/signalr/go.mod, transport/socketio/go.mod, transport/sqs/go.mod, transport/sse/go.mod, transport/tcp/go.mod, transport/thrift/go.mod, transport/trpc/go.mod, transport/webrtc/go.mod, transport/websocket/go.mod, transport/webtransport/go.mod, workflow/argo/go.mod, workflow/conductor/go.mod, workflow/go.mod, workflow/goworkflows/go.mod, workflow/temporal/go.mod
dependency_bot_commit_share0
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — Go (statisch typisiert)
54.9/55Handhabbare Dateigrößen — 1/812 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageGo
largest_source_bytes85.305
source_files_sampled812
oversized_source_files1
Wie die Bewertung erfolgt
40/40API-Schema (OpenAPI/GraphQL/proto) — testing/api/graphql/schema.graphql, testing/api/protobuf/proto/hygrothermograph.proto, testing/api/protobuf/proto/i_hygrothermograph.proto
0/20MCP-Server
40/40Lauffähige Beispiele — example
Verwendete Eingangsdaten
example_dirsexample
has_mcp_signalnein
api_schema_filestesting/api/graphql/schema.graphql, testing/api/protobuf/proto/hygrothermograph.proto, testing/api/protobuf/proto/i_hygrothermograph.proto

Eckdaten

4GitHub-Sterne
1Mitwirkende
91Commits, letzte 12 Monate
6Tage seit letztem Push
0Releases
1Bus-Faktor
0offene Issues
GoPaket-Ökosysteme

Warnungen zur Datenerhebung

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

Weitere Details

OpenSSF Scorecard 2.1 / 10
2.1Gesamtwert

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-23 21:51 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
k. A.CI-Testsno pull request found
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
k. A.Dangerous-Workflowno workflows found
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
k. A.Packagingpackaging workflow not detected
10Pinned-Dependenciesall dependencies are pinned
0SASTno SAST tool detected
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
k. A.Token-PermissionsNo tokens found
0Vulnerabilities44 existing vulnerabilities detected
Direkte Abhängigkeiten 66
RegistryPaketVersionsvorgabeManifest
Gogithub.com/99designs/gqlgenv0.17.89_examples/go.mod
Gogithub.com/apache/thriftv0.23.0_examples/go.mod
Gogithub.com/googollee/go-socket.iov1.7.0_examples/go.mod
Gogithub.com/hibiken/asynqv0.26.0_examples/go.mod
Gogithub.com/prometheus/client_golangv1.23.2_examples/go.mod
Gogithub.com/tx7do/go-utils/cryptov0.0.2_examples/go.mod
Gogithub.com/tx7do/go-windv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/brokerv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/cachev0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/cache/localv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/circuitbreakerv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/circuitbreaker/sresv0.0.0-00010101000000-000000000000_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/config/filev0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/encoding/jsonv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/encoding/xmlv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/healthv0.0.0-00010101000000-000000000000_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/metricsv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/metrics/prometheusv0.0.0-00010101000000-000000000000_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/ratelimitv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/ratelimit/tokenbucketv0.0.0-00010101000000-000000000000_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/registry/etcdv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/retryv0.0.0-00010101000000-000000000000_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/testingv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/tracer/otlpv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/asynqv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/cronv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/graphqlv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/grpc/middleware/loggingv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/grpc/middleware/recoveryv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/grpc/serverv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/httpv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/driver/stdv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/codecv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/cryptov0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/loggingv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/recoveryv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/requestidv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/middleware/tracingv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/swaggerv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/http/redocv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/kafkav0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/socketiov0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/ssev0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/tcpv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/thriftv0.0.1_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/transport/websocketv0.0.1_examples/go.mod
Gogo.etcd.io/etcd/client/v3v3.6.10_examples/go.mod
Gogo.opentelemetry.io/otelv1.43.0_examples/go.mod
Gogo.opentelemetry.io/otel/tracev1.43.0_examples/go.mod
Gogoogle.golang.org/grpcv1.80.0_examples/go.mod
Gogoogle.golang.org/protobufv1.36.11_examples/go.mod
Gogithub.com/tx7do/go-wind-plugins/encodingv0.0.1broker/go.mod
Gogithub.com/tx7do/go-wind-plugins/encoding/jsonv0.0.1broker/go.mod
Gogithub.com/tx7do/go-wind-plugins/encoding/protov0.0.1broker/go.mod
Gogo.opentelemetry.io/otelv1.43.0broker/go.mod
Gogo.opentelemetry.io/otel/tracev1.43.0broker/go.mod
Gogithub.com/tx7do/go-wind-plugins/tracer/otlpv0.0.1broker/go.mod
Gogithub.com/tx7do/go-windv0.0.1log/go.mod
Gogithub.com/tx7do/go-windv0.0.1registry/go.mod
Gogithub.com/99designs/gqlgenv0.17.89testing/go.mod
Gogithub.com/apache/thriftv0.23.0testing/go.mod
Gogithub.com/vektah/gqlparser/v2v2.5.32testing/go.mod
Gogoogle.golang.org/grpcv1.80.0testing/go.mod
Gogoogle.golang.org/protobufv1.36.11testing/go.mod
Gogithub.com/tx7do/go-wind-plugins/brokerv0.0.1transport/go.mod
Gogithub.com/tx7do/go-wind-plugins/metricsv0.0.1transport/go.mod
Alle Abhängigkeiten nicht erhoben

Der aufgelöste Abhängigkeitssatz konnte für diesen Bericht nicht erhoben werden: GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "adapter",
        "broker",
        "configuration",
        "go",
        "grpc",
        "http",
        "microservice",
        "opentelemetry",
        "plugins",
        "service-discovery"
      ],
      "is_fork": false,
      "size_kb": 2590,
      "has_wiki": true,
      "homepage": "https://www.gowind.cloud/",
      "languages": {
        "Go": 2693492,
        "HTML": 28149,
        "Shell": 9660,
        "Thrift": 6971,
        "Makefile": 240,
        "PowerShell": 3015,
        "Open Policy Agent": 30065
      },
      "pushed_at": "2026-07-17T00:06:43Z",
      "created_at": "2026-06-09T07:46:46Z",
      "owner_type": "User",
      "updated_at": "2026-07-17T02:36:46Z",
      "description": "Multi-engine plugin ecosystem for the Go Wind microservice framework, providing unified interfaces and plug-and-play adapters for mainstream tech stacks.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "Go",
      "significant_languages": [
        "Go"
      ]
    },
    "owner": {
      "blog": "https://tx7do.github.io/",
      "name": "Bobo",
      "type": "User",
      "login": "tx7do",
      "company": null,
      "location": "China",
      "followers": 215,
      "avatar_url": "https://avatars.githubusercontent.com/u/15902756?v=4",
      "created_at": "2015-11-18T06:08:45Z",
      "is_verified": null,
      "public_repos": 212,
      "account_age_days": 3900
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [],
      "recent_commits": [
        {
          "oid": "d8a493a75f72939eca7f812efa486406db4a4454",
          "body": "- transport/http/redoc: 新建独立子模块,基于 go-redoc v0.1.5\n  支持远程 URL 和本地文件两种文档源,ReDoc JS 内嵌在二进制中\n- _examples/redoc-basic: 演示基于 std driver 挂载 ReDoc(远程 URL 模式)\n- README: 追加 ReDoc 用法小节\n- go.work: 加入 ./transport/http/redoc",
          "is_bot": false,
          "headline": "feat(http/redoc): 集成嵌入式 ReDoc 文档子模块",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-17T00:05:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8141e5735f881905c373e6a9175aeb3744f0dc15",
          "body": "- transport/http: Driver 接口新增 HandlePrefix 方法,Server 增加同名方法\n  (std/gin/fiber 三驱动均实现,纯增量不破坏现有路由)\n- transport/http/swagger: 新建独立子模块,移植 kratos-swagger-ui 核心逻辑\n  支持远程 URL / 本地文件 / 内存数据三种 openapi 文档源\n- _examples/swagger-basic: 演示基于 std driver 挂载 Swagger UI\n- README: 追加 Swagger UI 用法小节\n- go.work: 加入 ./transport/http/swagger",
          "is_bot": false,
          "headline": "feat(http/swagger): 集成嵌入式 Swagger UI 子模块",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-16T23:32:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36b35e03d0ca891a064eaf6622d219e858842b95",
          "body": "给 4 个 logging interceptor(UnaryServer/StreamServer/UnaryClient/\nStreamClient)在构造 args 前增加 logger.Enabled(level) 检查。当日志\n级别被过滤时直接返回,跳过 []any slice 构造与 interface{} 装箱。\n\n与 transport/http/middleware/logging 的优化对称(log.Logger 接口提供\nEnabled,专为此设计)。benchmark 验证:日志禁用时从 4 allocs/224B\n降到 0 allocs/0B,约快 9×。\n\n补 2 个测试验证 Enabled=false 时 handler 仍正常执行、不写日志;\n新增 bench_test.go 量化启用/禁用两条路径的开销。",
          "is_bot": false,
          "headline": "perf(grpc/middleware/logging): 日志级别过滤时跳过 args 装箱,禁用时 0 alloc",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T04:57:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f98f14208006601d6c728eaa3d4fdc9b7fbb04ff",
          "body": "为 gin 与 fiber driver 增加三档框架接入能力,覆盖从标准接口到完全框架\n能力的谱系,让存量 gin/fiber 业务代码可复用:\n\ngin driver:\n- 导出类型 Driver,新增 New(opts...) 返回具体类型(NewDriver 保持返回\n  接口,向后兼容)\n- HandleGin(method, path, gin.HandlerFunc) 注册原生 handler\n- Engine() 暴露底层 *gin.Engine,用于路由组/gin 中间件/websocket\n- WithRoute/WithMiddleware 作为 driver 选项,纯 \n[…]\nc)。\n\n关键权衡(已在源码与 STATUS.md 说明):原生路由不经 Server.Use 的标准\n中间件链,两套中间件体系并行;adapter 无法全通用(前置类可转,读响应\n类静默失效),故不提供自动适配,改用文档明确边界。\n\nSTATUS.md 选型文档:三档接入方式对比、driver 选型、中间件体系说明、\n已知限制汇总、快速决策树。gin/fiber 各 8/7 个测试验证原生能力。",
          "is_bot": false,
          "headline": "feat(http): gin/fiber driver 增加框架原生能力与 options 注入",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T01:52:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5f072e18452f4d44e4795f3987c4f86072b32965",
          "body": "BindQuery 原实现经 map[string]interface{} → json.Marshal → json.Unmarshal\n三段式,39 allocs/op,且对 int/bool 字段会报错(JSON 路径无法把带引号\nstring 转数字)。重构为反射直填,与 BindPath 同源:\n\n- 复用 findField(json tag → camelCase → 大小写不敏感三段匹配)\n- 复用 setScalar(int/uint/float/bool/string 标量转换)\n- 新增 setSliceField 支持 []string / []T,单值自动包成单元素 \n[…]\n3100 降到 ~320,快约 10×。\n\nBindPath/BindQuery/BindBodyField 共用 findField,字段缓存对全部路径\n绑定均有收益。新增 11 个测试锁定行为契约,1 个 benchmark 量化收益。\n\n行为变更(修复):现支持 int/bool/float/uint 标量字段、单值→slice、\nsnake_case 回退,与 BindPath 行为一致。",
          "is_bot": false,
          "headline": "refactor(http/binding): BindQuery 改为反射直填,allocs 39→3 快约 10×",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T01:52:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e24ba1fc7e024946cc72b2e50cd5adeba7ed5199",
          "body": "metrics(8→5 allocs, B/op -33%):\n- labelFunc 调用从 3 次降到 2 次(in-flight gauge 进出复用 label)\n- sync.Pool 池化 statusRecorder\n- 不池化 label map(metrics 后端可能异步持有,避免 data race)\n\nlogging(禁用日志 0 alloc,启用 -1 alloc):\n- logger.Enabled(level) 提前判断,日志级别被过滤时跳过 7 个 kv 的\n  ...any 装箱(log.Logger 接口提供 Enabled,专为此设计)\n- sync.Pool 池化 responseWriter\n\nrequestid:实测后发现编译器已对小 buffer 做栈分配优化,人工池化反而\n负收益(ns/op 略增),故保留原实现,仅添加 benchmark 证明此结论。\n\n每个中间件配套 bench_test.go,量化优化收益。",
          "is_bot": false,
          "headline": "perf(http/middleware): 优化 metrics 与 logging 中间件,附 benchmark",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T01:52:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a6f6dc30240f1f271717aa78f2ddcbe5837699da",
          "body": "重写 fiber driver 的 net/http↔fasthttp 适配层热路径:\n- sync.Pool 复用 http.Header(map)、bytes.Buffer(响应体)、bodyCloser\n- bodyCloser 实现 io.WriterTo 透传 bytes.Reader.WriteTo,\n  避免 io.copyBuffer 每次分配 32KB 中间 buffer\n- 响应头用 Response.Header.SetCanonical 减少 string→[]byte 查找\n- scheme 默认 http 用常量,仅 HTTPS 才转换\n\n实测各场景 B/op 降 13~20%、allocs/op 减 7~9。响应体仍用 SetBody\n(拷贝),因 fasthttp 在 handler 返回后才序列化,SetBodyRaw 交付池化\nbuffer 会数据错乱,故响应体拷贝不可避免但 buffer 已池化。",
          "is_bot": false,
          "headline": "perf(http/fiber): 优化 fiber 适配层,内存分配减 13~20%",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T01:51:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e2002a92d8f2784b8f2f6a7317f4c6f1fd1f2147",
          "body": "新增 transport/http/benchmark 模块,对 std/chi/gin/fiber 四个 driver\n做端到端 loopback 黑盒基准测试,覆盖 6 个场景。\n\n附带修复 go.work 中 transport/http/binding 重复出现导致 workspace 加载失败的既有 bug。\n\nREADME 含完整横向对比表、pprof 归因分析、优化历程。",
          "is_bot": false,
          "headline": "test(http): 添加 4 个 driver 端到端性能基准测试",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-07-08T01:50:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c0b771184efd992d9a771cb7f10fd285612cee6",
          "body": "- 删除了原有的 Windows 和 Unix 平台特定的 proto 生成脚本\n- 新增了温湿度计 HTTP 服务接口定义文件\n- 定义了 HygrothermographHTTPService 服务\n- 实现了获取温湿度计数据的 RPC 方法\n- 配置了 HTTP GET 路由映射到 /hygrothermograph 端点",
          "is_bot": false,
          "headline": "feat(proto): 添加温湿度计服务接口定义",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-19T05:23:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c5e43212b3edaedf51a8a7b194f988c40fc7d605",
          "body": "- 介绍 GraphQL 基础概念和 Go-Wind 插件库特性\n- 详细讲解 Schema 定义、代码生成和 Resolver 实现\n- 说明 Handle 与 HandleFunc 路由注册方法的区别\n- 深入解析中间件机制和内置中间件使用方法\n- 演示自定义中间件编写和 Playground 配置\n- 提供 HTTPS/TLS 配置和生产级完整示例\n- 整理常见问题解答和最佳实践指南",
          "is_bot": false,
          "headline": "docs(graphql): 添加 Go-Wind GraphQL 服务器完整教程",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-19T05:02:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "699cf0d2324e941cce6240aa35d2daada5679bf5",
          "body": "- 新增 gRPC 服务器从入门到精通完整教程文档\n- 新增 HTTP 服务器从入门到精通完整教程文档\n- 包含基础概念、快速开始、拦截器/中间件详解\n- 提供生产级完整示例和常见问题解答\n- 覆盖服务注册、认证授权、限流熔断等核心功能\n- 包含错误处理、日志记录、请求追踪等最佳实践",
          "is_bot": false,
          "headline": "docs(guide): 添加 gRPC 和 HTTP 服务器详细教程",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-18T08:18:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80ed74d1fa699bb6ba306c0636122cd7dceb6e87",
          "body": "- 移除keyFunc选项,改用signingKey直接签名\n- 添加对RS256、ES256、PS256、EdDSA算法的支持\n- 新增PEM格式密钥解析功能\n- 添加WithSigningKey和WithVerificationKey选项\n- 实现RSA、ECDSA、Ed25519密钥的PEM解析\n- 为不同算法添加相应的单元测试\n- 更新文档说明支持的密钥类型和用法",
          "is_bot": false,
          "headline": "feat(security): 支持非对称算法的JWT认证",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-15T03:36:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7995686287095e38205167e516bd3675e40bd011",
          "body": "- 新增断路器基本示例,演示Execute方法和手动Allow/MarkSuccess/MarkFailure使用\n- 新增健康检查基本示例,展示Kubernetes就绪和存活探针配置\n- 新增指标基本示例,演示Prometheus计数器、直方图和仪表盘记录\n- 新增限流基本示例,展示令牌桶限流器的非阻塞和阻塞模式\n- 新增重试基本示例,演示不同退避策略、抖动和错误分类功能",
          "is_bot": false,
          "headline": "feat(examples): 添加基础示例代码",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T02:08:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fedf175d8420cd3b027003e7d672d4193856d28d",
          "body": "- 新增断路器基本示例,演示Execute方法和手动Allow/MarkSuccess/MarkFailure使用\n- 新增健康检查基本示例,展示Kubernetes就绪和存活探针配置\n- 新增指标基本示例,演示Prometheus计数器、直方图和仪表盘记录\n- 新增限流基本示例,展示令牌桶限流器的非阻塞和阻塞模式\n- 新增重试基本示例,演示不同退避策略、抖动和错误分类功能",
          "is_bot": false,
          "headline": "feat(examples): 添加基础示例代码",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T02:08:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1838e78db9fe16d498c5fd0565fa7a21fd84560b",
          "body": "- 集成 github.com/hibiken/asynq 作为异步任务队列库\n- 添加 go-wind-plugins/transport/asynq 传输层支持\n- 添加 go-wind-plugins/transport/kafka 传输层支持\n- 添加 go-wind-plugins/broker/kafka 消息代理支持\n- 新增 asynq-basic 示例展示任务队列功能\n- 新增 kafka-basic 示例展示消息队列功能\n- 添加相关依赖包如 redis、kafka-go、pbkdf2 等\n- 配置 go.mod 中的模块替换规则",
          "is_bot": false,
          "headline": "feat(examples): 添加 Asynq 和 Kafka 异步任务队列示例",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T01:46:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06306b9757230ae00f35e39beb550cee31572517",
          "body": "- 在 Socket.IO 示例中集成 recovery、request-id 和 logging 中间件\n- 在 WebSocket 示例中集成 recovery、request-id 和 logging 中间件\n- 更新 Socket.IO 示例文档注释以说明中间件重用功能\n- 更新 WebSocket 示例文档注释以说明中间件重用功能\n- 修正 Socket.IO 示例中的运行命令路径\n- 修正 WebSocket 示例中的运行命令路径\n- 移除示例中重复的导入包注释",
          "is_bot": false,
          "headline": "feat(examples): 为 Socket.IO 和 WebSocket 示例添加 HTTP 中间件支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T01:41:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "075718847939ff73721b1e1d3171c6d70b720387",
          "body": "- 添加 recovery、requestid 和 logging 中间件导入\n- 在 SSE 服务器中启用 HTTP 中间件复用\n- 更新注释说明 SSE 可以直接使用 HTTP 中间件\n- 修正示例运行命令路径",
          "is_bot": false,
          "headline": "feat(sse): 集成 HTTP 中间件支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T01:37:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5ad0f7365fcb2eed833f9a6bffd6959882c2a78b",
          "body": "- 移除手动定义的 Echo 服务和相关结构体\n- 添加对 Hygrothermograph 服务的支持\n- 使用生成的 protobuf API 替代手动实现的服务描述符\n- 更新导入路径以使用测试 API 包\n- 修改服务注册方式使用生成的注册辅助函数\n- 更新文档说明和命令行示例",
          "is_bot": false,
          "headline": "feat(examples): 更新 gRPC 基础示例使用测试 API",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T01:33:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9fc85aa9ab721964b9064568754fbf56c98745cc",
          "body": "- 引入 ProcessorWrapper 接口用于跨领域关注点处理\n- 添加 WithProcessorWrappers 选项用于应用多个包装器\n- 实现 WithLogging、WithRecovery 和 WithMetrics 选项\n- 将链路追踪功能转换为 TracingWrapper 包装器\n- 移除旧的 tracer 字段,改用包装器模式\n- 更新文档说明新的使用方式和包装器顺序\n- 添加对新依赖包的引用(gqlgen、thrift、metrics 等)\n- 更新 go.mod 和 go.sum 文件以包含新依赖项",
          "is_bot": false,
          "headline": "feat(thrift): 重构 Thrift 服务器实现以支持处理器包装器",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-12T01:29:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db97dda8b91bb13faccb8b0cadc1b5a867217b59",
          "body": "- 为 transport/http 组件添加 v0.0.1 标签\n- 确保 HTTP 传输层版本标记的一致性",
          "is_bot": false,
          "headline": "feat(tag): 添加 HTTP 传输层标签支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T09:48:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "877fa5c566fce60f60d43303d7d5b0c53d552c18",
          "body": "- 在 KCP、TCP、WebRTC 和 WebTransport 客户端中集成指标收集\n- 添加消息发送计数器、错误计数器和发送耗时直方图统计\n- 实现 metrics 依赖注入选项配置\n- 更新 go.mod 和 go.sum 文件以包含新的依赖项",
          "is_bot": false,
          "headline": "feat(transport): 添加客户端指标监控功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T06:05:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec42c5000e395715b52e3ebc05e55b77b1ca5b20",
          "body": "- 实现客户端过滤器支持,添加 Use 方法注册过滤器\n- 添加客户端 Invoke 方法,支持上下文超时控制\n- 新增大量客户端选项配置,包括目标地址、服务名、TLS等\n- 实现服务端过滤器支持,添加 Use 方法注册过滤器\n- 增强服务端启动停止逻辑,添加生命周期状态管理\n- 实现服务端服务注册功能,支持服务描述和实现绑定\n- 添加服务端多种配置选项,包括网络协议、超时、TLS等\n- 引入原子操作和读写锁保障并发安全\n- 统一错误处理和日志记录机制",
          "is_bot": false,
          "headline": "feat(trpc): 增强 tRPC 客户端和服务端功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T05:36:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "738797fa9b83ca5b1e60851122faf6337d36212a",
          "body": "- 在 go.mod 中添加 metrics 模块依赖和替换规则\n- 为 ActiveMQ、Azure Service Bus、GCP Pub/Sub、Kafka、MQTT、NATS、NSQ、Pulsar、RabbitMQ、Redis 和 SQS 服务器选项添加 WithMetrics 配置选项\n- 在所有传输服务器结构体中添加 Metrics 字段用于注入指标监控实例\n- 实现 wrapHandler 方法包装消息处理器以收集接收的消息数量、处理耗时和错误计数指标\n- 在消息处理前后记录指标数据包括 broker 名称、主题名称和错误状态",
          "is_bot": false,
          "headline": "feat(transport): 集成指标监控功能到所有消息传输组件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T05:28:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "110004809754ec19d631d2b3b6f4138176f53cb4",
          "body": "- 在KCP和TCP传输中集成OpenTelemetry追踪功能\n- 为KCP、TCP、SignalR、SocketIO、WebRTC和WebTransport添加指标收集\n- 统一HTTP中间件类型定义并在多个传输协议中实现Use方法\n- 更新HTTP3中间件处理逻辑并重命名相关字段\n- 在Thrift服务器中添加链路追踪处理器包装\n- 修改KCP和TCP消息处理以记录性能指标和错误状态",
          "is_bot": false,
          "headline": "feat(transport): 添加OpenTelemetry支持并改进中间件系统",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T05:19:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93f40c6f94013b0d22888d11c6d05374c8e4e089",
          "body": "- 集成DTM客户端SDK支持Saga、TCC、2阶段消息和XA模式\n- 实现分布式事务客户端接口封装\n- 添加事务配置管理和服务器地址设置功能\n- 提供Saga事务构建器和TCC全局事务处理\n- 支持2阶段消息事务和XA事务模式\n- 添加分支屏障查询和URL参数解析功能\n- 配置默认DTM服务器地址为本地开发环境\n- 更新go工作区添加transaction模块依赖\n- 更新依赖包版本包括gax-go和scram等库",
          "is_bot": false,
          "headline": "feat(transaction): 添加DTM分布式事务管理插件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T04:41:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d19d6984739b9174bba758bf75626009041184cf",
          "body": "- 将 Go 版本从 1.25.0 更新到 1.26.3\n- 添加 go-wind-plugins/broker 和 go-wind-plugins/encoding 依赖\n- 移除 go-playground/form/v4 间接依赖\n- 添加 go-wind-plugins/encoding/json、proto 和 tracer/otlp 间接依赖\n- 移除 otel stdout trace 导出器依赖\n- 清理 yaml.v3 间接依赖\n- 更新 testing 模块版本到 v0.0.1",
          "is_bot": false,
          "headline": "chore(deps): 更新依赖版本并清理不必要的包",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T03:08:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "75dbe9282dd7489928c68333ab4786b6eb138ce0",
          "body": "- 将 go-wind-plugins/cache/local 从 v0.0.0 更新到 v0.1\n- 将 go-wind-plugins/config/file 从 v0.0 更新到 v0.0.1\n- 将 go-wind-plugins/encoding/xml 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/registry/etcd 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/tracer/otlp 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/transport/cron 从 v0.0\n[…]\n1\n- 将 go-wind-plugins/circuitbreaker 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/ratelimit 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/retry 从 v0.0.0 更新到 v0.0.1\n- 将 go-wind-plugins/metrics 从 v0.0.0 更新到 v0.0.1",
          "is_bot": false,
          "headline": "chore(deps): 更新项目依赖模块版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T03:00:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4f47cad51b6eba15f6096d54d07775c4d543cca0",
          "body": "- 将所有 broker 模块中的 go-wind-plugins/broker 依赖从 v1.3.3 降级到 v0.0.1\n- 修复 transport/webtransport 模块中 go-wind-plugins/broker 的零版本引用\n- 统一所有模块中 go-wind-plugins/broker 的版本为 v0.0.1\n- 移除不一致的依赖版本配置",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins/broker 依赖版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T02:52:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6da30323d4e28d84750eb3d20073a8f74ed7c5e3",
          "body": "- 将 go-wind-plugins/config 从占位版本更新为 v0.0.1 版本\n- 将 go-wind-plugins/registry 从占位版本更新为 v0.0.1 版本\n- 在所有配置模块中统一更新依赖版本\n- 在所有注册中心模块中统一更新依赖版本\n- 新增 fallback.go 文件实现 FallbackReader 功能\n- 添加回退读取器支持多源配置读取和值监控合并\n- 实现优先级顺序的配置源级联回退机制",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins 依赖版本并添加回退读取器功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T02:12:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dcba6954ce166edd1f66b1dac89cd13db5597134",
          "body": "- 将 go-wind-plugins/config 从占位版本更新为 v0.0.1 版本\n- 将 go-wind-plugins/registry 从占位版本更新为 v0.0.1 版本\n- 在所有配置模块中统一更新依赖版本\n- 在所有注册中心模块中统一更新依赖版本\n- 新增 fallback.go 文件实现 FallbackReader 功能\n- 添加回退读取器支持多源配置读取和值监控合并\n- 实现优先级顺序的配置源级联回退机制",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins 依赖版本并添加回退读取器功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T02:10:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "46938522cf1312bcd7a8723132f725bff29167b1",
          "body": "- 将 go-wind-plugins/config 从占位版本更新为 v0.0.1 版本\n- 将 go-wind-plugins/registry 从占位版本更新为 v0.0.1 版本\n- 在所有配置模块中统一更新依赖版本\n- 在所有注册中心模块中统一更新依赖版本\n- 新增 fallback.go 文件实现 FallbackReader 功能\n- 添加回退读取器支持多源配置读取和值监控合并\n- 实现优先级顺序的配置源级联回退机制",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins 依赖版本并添加回退读取器功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T02:05:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aa445b88bea8af791f53e1f924ae29f88e114197",
          "body": "- 将 github.com/tx7do/go-wind-plugins/tracer/otlp 从 v0.0.0-20260610233343-575e56488c1f 更新到 v0.0.1\n- 同步更新 go.mod 和 go.sum 中的依赖版本信息\n- 更新依赖的哈希校验值以匹配新版本",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins/tracer/otlp 依赖版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-11T00:01:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a9b65c76ce1dec497427389ce9127a4277ca43d",
          "body": "- 移除了 http middleware recovery 模块中的间接依赖标记\n- 更新了 machinery 模块中 aws sdk imds 组件版本至 v1.18.23\n- 升级 pulsar 模块中 kubernetes client-go 版本至 v0.36.1\n- 更新 webtransport 模块中 otlp 追踪器依赖版本\n- 在 argo、conductor 和 temporal 工作流模块中添加核心 wind 框架依赖\n- 从标签脚本中移除了重复的 tracer 标签定义\n- 删除了 demo 配置文件以避免敏感信息暴露",
          "is_bot": false,
          "headline": "chore(deps): 更新项目依赖并移除重复标签",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T23:39:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "575e56488c1f2af38b3e2615961c76c1ca8464fb",
          "body": "- 在 _examples 中添加了 cache、config 和 tracing 相关依赖\n- 升级 Azure Service Bus 的 go-amqp 依赖版本至 v1.7.0\n- 为 gcpubsub 添加 otlp 追踪插件依赖\n- 升级 Pulsar broker 的 k8s.io/client-go 版本至 v0.36.1\n- 在 Redis broker 中引入 go-wind 框架依赖\n- 为多个配置模块添加 go-wind 依赖\n- 升级阿里云日志 SDK 至 v0.1.117 并更新相关间接依赖\n- 更新 phuslu 日志库至 v1.0.126\n- 为多个传输层中间件添加 log 插件依赖\n- 在 Go modules 锁定文件中同步所有依赖版本更新",
          "is_bot": false,
          "headline": "feat(deps): 更新项目依赖并集成缓存和追踪功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T23:33:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ffd3ec3d2db53f5854bd5b2aa239c521f0782781",
          "body": "- 移除 createTracerProvider 函数中的 exporterName 参数\n- 统一使用 otlp.New 的新参数结构创建追踪器提供者\n- 更新所有调用 createTracerProvider 的地方以匹配新函数签名\n- 在 http 恢复中间件测试中更新日志记录器使用方式的注释",
          "is_bot": false,
          "headline": "refactor(broker): 简化测试中的追踪器提供者创建函数",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T23:11:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef170c8d17b99e3deff5401829286018fd5f9cf6",
          "body": "- 将 aliyunmq_test.go 中的 slog 替换为 github.com/tx7do/go-wind/log\n- 将 minio/client.go 中的 slog 替换为 github.com/tx7do/go-wind/log\n- 将 s3/client.go 中的 slog 替换为 github.com/tx7do/go-wind/log\n- 将 grpc/middleware/logging/client.go 中的 slog 替换为 github.com/tx7do/go-wind/log\n- 将 config/file/file.go 中的 slog 替换为 gith\n[…]\n/log\n- 更新日志调用方式从 slog.Log 到 log.GetLogger().Info/Debug/Error\n- 调整 grpc 中间件日志参数格式以适配新日志库\n- 移除多个文件中的 slog 导入声明\n- 更新 aliyun 日志依赖版本从 v0.117 到 v0.1.100\n- 简化 aliyun 日志模块的间接依赖列表\n- 在 workflow 模块中添加 go-wind 依赖",
          "is_bot": false,
          "headline": "refactor(log): 替换标准库slog为自定义日志实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T22:54:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6b381e1881365202fd1e9069312efc0685d33069",
          "body": "- 实现了 WebTransport 客户端及其连接管理功能\n- 实现了 WebRTC 客户端支持数据通道和媒体轨道管理\n- 添加了 trpc 客户端基础结构\n- 添加了 CA 证书用于 TLS 配置验证\n- 实现了 HTTP3 上下文包装器提供请求响应处理\n- 添加了相应的客户端选项配置功能\n- 实现了消息处理器注册和注销机制\n- 添加了单元测试验证客户端功能",
          "is_bot": false,
          "headline": "feat(transport): 添加 WebTransport 和 WebRTC 客户端实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T15:28:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e0f0a8ee1a9d4761094fc25e5f7f2d555860c91c",
          "body": "- 为ActiveMQ、Azure Service Bus、Google Cloud Pub/Sub、Kafka、MQTT、NATS、NSQ、Pulsar、RabbitMQ、Redis、RocketMQ和SQS添加单元测试文件\n- 每个测试文件包含TestKind、TestNewServer、TestEndpoint和TestStopBeforeStart四个测试用例\n- 验证各个消息队列服务器的名称、创建、端点和停止功能\n- 修复RabbitMQ和RocketMQ测试中的日志调用语法错误",
          "is_bot": false,
          "headline": "test(transport): 添加多种消息队列服务器单元测试",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T14:15:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e3280eaa157ee2b3efd7d44631c2cc69936490f0",
          "body": "- 添加 ActiveMQ 模块的 go.mod 配置文件\n- 添加 Azure Service Bus 模块的 go.mod 配置文件\n- 添加 Google Cloud Pub/Sub 模块的 go.mod 配置文件\n- 添加 Kafka 模块的 go.mod 配置文件\n- 添加 MQTT 模块的 go.mod 配置文件\n- 添加 NATS 模块的 go.mod 配置文件\n- 添加 NSQ 模块的 go.mod 配置文件\n- 添加 Pulsar 模块的 go.mod 配置文件\n- 添加 RabbitMQ 模块的 go.mod 配置文件\n- 添加 Redis 模块的 go.mod 配置文件\n- 添加 RocketMQ 模块的 go.mod 配置文件\n- 配置各个模块的依赖关系和替换规则",
          "is_bot": false,
          "headline": "feat(transport): 添加多种消息队列传输模块的依赖配置",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T14:06:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dae0fc7582242f313effa94ea738c78441b373fb",
          "body": "- 添加 github.com/tx7do/go-wind-plugins/encoding/json v0.0.1 依赖\n- 添加 github.com/tx7do/go-wind-plugins/encoding/proto v0.0.1 依赖\n- 移除 go.opentelemetry.io/otel/exporters/stdout/stdouttrace 调试依赖\n- 更新各 broker 模块的依赖配置文件\n- 清理无用的依赖包引用",
          "is_bot": false,
          "headline": "chore(broker): 更新依赖包版本并移除调试输出",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T13:24:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7042f1bc41a443de9e0299104788e58f072cc335",
          "body": "- 在 Azure Service Bus 文档中添加核心概念、队列vs主题对比表格及注意事项\n- 在 GCP Pub/Sub 文档中补充核心概念、投递模式对比表格及注意事项\n- 在 Kafka 文档中增加 Go 语言导入代码示例\n- 在 RabbitMQ 文档中补充官方参考资料链接\n- 在 AWS SQS 文档中添加队列类型对比表格、基本概念说明及注意事项\n- 在 STOMP 文档中补充协议规范和参考资料链接",
          "is_bot": false,
          "headline": "docs(broker): 更新各消息队列中间件的文档内容",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T12:57:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "86c4c16464219ba4d96244cf9412f8f81c2fa44b",
          "body": "…ent engines\n\n- Add new broker interface definitions for Publish/Subscribe/Request patterns\n- Implement 12 message broker plugins including Kafka, RabbitMQ, NATS, MQTT,\n  Pulsar, Redis, RocketMQ, NSQ, SQS, GCP PubSub, Azure Service Bus and STOMP\n- Update documentation with new broker architecture an\n[…]\nverview to reflect expanded multi-engine support\n- Add dependency github.com/tx7do/go-wind v0.0.1 across all broker modules\n- Refactor README files with updated import paths and default configurations",
          "is_bot": false,
          "headline": "feat(broker): add comprehensive message broker support with 12 differ…",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T12:34:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fe57e31e9e752a0d213aceaaff74f96df37fc08e",
          "body": "…ent engines\n\n- Add new broker interface definitions for Publish/Subscribe/Request patterns\n- Implement 12 message broker plugins including Kafka, RabbitMQ, NATS, MQTT,\n  Pulsar, Redis, RocketMQ, NSQ, SQS, GCP PubSub, Azure Service Bus and STOMP\n- Update documentation with new broker architecture an\n[…]\nverview to reflect expanded multi-engine support\n- Add dependency github.com/tx7do/go-wind v0.0.1 across all broker modules\n- Refactor README files with updated import paths and default configurations",
          "is_bot": false,
          "headline": "feat(broker): add comprehensive message broker support with 12 differ…",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T12:18:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a955b4e2c580cfef596ead2fbd49d85996268d7e",
          "body": "- 实现阿里云RocketMQ HTTP客户端,支持发布订阅功能\n- 添加阿里云RocketMQ追踪集成,支持OpenTelemetry\n- 实现Azure Service Bus客户端,支持队列和主题订阅\n- 添加Azure Service Bus管理功能,支持队列主题创建\n- 扩展RabbitMQ认证选项,新增外部认证支持\n- 完善RabbitMQ通道管理功能,优化连接池实现\n- 新增通用Broker接口定义和类型化订阅助手函数\n- 添加全面的单元测试覆盖新功能模块",
          "is_bot": false,
          "headline": "feat(broker): 新增阿里云RocketMQ和Azure Service Bus支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T11:53:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85be3c34863c0adce4d6494e098f1209f5f19695",
          "body": "- 将 github.com/tx7do/go-wind-plugins/errors 从 v0.0.0 升级到 v0.0.1\n- 在 authn 模块中更新依赖版本\n- 在 authz 模块中更新依赖版本\n- 在 grpc 中间件错误处理模块中更新依赖版本\n- 在 http 中间件错误处理模块中更新依赖版本",
          "is_bot": false,
          "headline": "chore(deps): 更新 errors 模块版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T11:04:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec6744dfa4c30419445ee06148bdc5a1028e9393",
          "body": "- 将 github.com/tx7do/go-wind-plugins/errors 从 v0.0.0 升级到 v0.0.1\n- 在 authn 模块中更新依赖版本\n- 在 authz 模块中更新依赖版本\n- 在 grpc 中间件错误处理模块中更新依赖版本\n- 在 http 中间件错误处理模块中更新依赖版本",
          "is_bot": false,
          "headline": "chore(deps): 更新 errors 模块版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T10:37:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6bd50e07b0efd8ac30613f8f409c3495af046fc3",
          "body": "- 将 github.com/cloudwego/eino 从 v0.9.0-alpha.13 升级到 v0.9.5\n- 将 golang.org/x/net 从 v0.52.0 升级到 v0.53.0\n- 从 go.work 文件中移除 ./tracer 模块路径\n- 重构 tag.sh 脚本,按模块类别重新组织标签并添加详细的子模块标签\n- 新增 tracer/otlp/tracer.go 文件,实现 OpenTelemetry OTLP 追踪器功能",
          "is_bot": false,
          "headline": "chore(deps): 更新依赖版本并重新组织标签结构",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T10:36:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e3008867d491796f2f392604e7e4ac8a64f551b",
          "body": "- 移除了tracer模块的go.mod文件\n- 从go.work中删除了tracer路径的引用\n- 删除了tracer/tracer.go文件中的所有代码\n- 清理了分布式跟踪初始化助手的相关实现",
          "is_bot": false,
          "headline": "remove(tracer): 删除tracer模块及其相关配置",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T10:18:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "304040bc100ff62a5acc19c3c09cab3baa397cb8",
          "body": "- 更新Asynq README文档,详细介绍核心特性和使用方法\n- 新增Encoding模块文档,说明统一编解码抽象层的设计和用法\n- 新增Errors模块文档,介绍协议无关错误类型定义和使用方式\n- 更新tag.sh脚本,移除OSS相关注释标签\n- 升级phuslu/log依赖版本从v1.0.124到v1.0.125",
          "is_bot": false,
          "headline": "docs(asynq): 更新Asynq传输层文档并完善编码和错误处理说明",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T10:16:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "90977f3af7c348c9cf9ae041a7205881cb9897a1",
          "body": "- 实现了 KCP 协议客户端,支持字节序配置、消息处理器注册、数据加密等功能\n- 实现了 TCP 协议客户端,提供连接管理、消息收发、协议编解码等基础功能\n- 添加了客户端选项配置,支持端点设置、编解码器选择、原始数据处理器等\n- 集成了字节序处理模块,支持大端和小端模式切换\n- 新增了客户端测试用例,验证连接、消息发送接收等核心功能\n- 更新了 go.mod 文件,添加相关依赖包和模块替换规则",
          "is_bot": false,
          "headline": "feat(transport): 添加 KCP 和 TCP 传输协议客户端实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T09:57:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b37c83de0741a4edcf3ff9a3d0989aaf5f0cc5f1",
          "body": "- 将examples目录重命名为_examples以排除在go build之外\n- 更新go.work文件中的目录引用路径\n- 移除原examples目录下的所有示例代码文件\n- 保留_examples目录下的go.mod文件作为模块定义",
          "is_bot": false,
          "headline": "refactor(examples): 将examples目录重命名为_examples并更新工作区配置",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T06:59:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5606371ff448b34e2f34809d2fa272ea162a724e",
          "body": "- 在 go.mod 中添加 etcd 相关依赖和插件\n- 新增 app-registry 示例程序演示服务注册功能\n- 实现服务启动时向 etcd 注册实例信息\n- 实现服务关闭时从 etcd 注销实例信息\n- 添加健康检查端点用于服务状态监控\n- 配置服务发现的命名空间和 TTL 设置",
          "is_bot": false,
          "headline": "feat(examples): 添加 etcd 服务注册示例",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T06:56:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ba4f7a64fd9e5af277c2df163957eeeb2891a479",
          "body": "- 添加app-multi-server示例展示HTTP和gRPC服务器同时运行\n- 添加sse-basic示例演示服务器发送事件功能\n- 添加websocket-basic示例展示WebSocket消息处理\n- 更新依赖包版本并添加新的传输协议插件\n- 配置WebSocket和SSE协议的本地模块映射",
          "is_bot": false,
          "headline": "feat(examples): 添加多服务器应用、SSE和WebSocket示例",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T06:44:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "300ec582da513c0249cd9a68ea70c5bbd967852d",
          "body": "- 新增 transport/sse 包,实现 Server-Sent Events 协议\n- 新增 transport/websocket 包,实现 WebSocket 客户端功能\n- 添加 WebSocket 消息处理器和编解码功能\n- 实现 SSE 认证和事件流处理机制\n- 添加 Thrift 传输协议模块\n- 在 go.work 中注册新的传输协议模块",
          "is_bot": false,
          "headline": "feat(transport): 添加 SSE 和 WebSocket 传输协议支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T06:33:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "783dba99e5077d641261c5f4c16a87990af10594",
          "body": "- 更新 log/cloudwatch 中 aws-sdk-go-v2/feature/ec2/imds 从 v1.18.22 到 v1.18.23\n- 新增 transport/graphql 模块及其相关依赖\n- 更新多个 grpc middleware 模块中的 google.golang.org/genproto/googleapis/rpc 版本\n- 更新 transport/http/driver/fiber 中多个依赖包版本\n- 更新 transport/http/driver/gin 中 bytedance 相关包及其他依赖版本",
          "is_bot": false,
          "headline": "chore(deps): 更新多个模块的依赖版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T05:34:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5c319f72849cb92d4b967fea5996e567144b43f8",
          "body": "- 移除原有的默认驱动实现文件\n- 新增driver目录结构,将不同框架驱动分别存放\n- 添加chi、fiber、gin、std四个驱动子包\n- 修改Server逻辑,移除默认驱动依赖\n- 更新示例代码使用新的驱动配置方式\n- 调整go.mod和go.work文件结构\n- 更新工作区依赖管理配置",
          "is_bot": false,
          "headline": "refactor(http): 重构HTTP服务器驱动实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T05:26:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a93f80c58370158c99a223713fa5a97d58a53cd9",
          "body": "- 在 go.work 文件中添加 examples 模块路径\n- 创建 examples 模块的 go.mod 配置文件\n- 添加 encoding-crypto 示例展示编解码和加密中间件\n- 添加 grpc-basic 示例展示基础 gRPC 服务功能\n- 添加 http-basic 示例展示基础 HTTP 服务功能\n- 添加 http-middleware 示例展示中间件链使用\n- 创建 examples 模块的 go.sum 依赖锁定文件",
          "is_bot": false,
          "headline": "feat(examples): 添加多个示例项目并更新工作区配置",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T04:45:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4ff0da095aa2f2b730b8142326be1bff82fd67df",
          "body": "- 新增gRPC编解码中间件,支持非protobuf格式如JSON、XML等\n- 新增HTTP编解码中间件,实现自动内容协商和编解码\n- 添加gRPC加密中间件,提供透明载荷加密功能\n- 添加HTTP加密中间件,支持请求响应体加密解密\n- 在go.work中注册新增的中间件模块\n- 提供完整的单元测试覆盖编解码和加密功能",
          "is_bot": false,
          "headline": "feat(transport): 添加gRPC和HTTP传输层编解码及加密中间件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T04:17:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e455fe3ef8a8686530fbef06be1ff0559cac551",
          "body": "- 添加 security/crypto 模块提供加密抽象接口\n- 实现全局注册表支持运行时查找加密实现\n- 添加 AES、RSA、SM2、SM4 等多种加密算法支持\n- 提供哈希、签名、密钥交换等功能接口\n- 添加完整的单元测试覆盖加密功能\n- 更新 go.work 和 go.mod 文件引入新依赖\n- 移除无用的 STS 服务依赖项",
          "is_bot": false,
          "headline": "feat(security): 添加加密模块并更新依赖",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T04:05:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe7d096d456426fc27d03dcced09d66d6934d37e",
          "body": "- 使用自定义错误包替换 gRPC 状态错误\n- 定义标准化的错误代码和消息格式\n- 更新认证和授权模块的错误处理方式\n- 移除对 gRPC 相关依赖的直接引用\n- 统一错误码命名规范并改进错误分类",
          "is_bot": false,
          "headline": "refactor(security): 将错误处理重构为统一的错误系统",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:55:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fddac07ba2687bd4f77e1b2e9c79892bb029e521",
          "body": "- 定义了协议无关的错误类型,使用HTTP状态码作为语义锚点\n- 实现了错误的元数据支持和错误提取功能\n- 添加了gRPC传输层的错误转换中间件\n- 添加了HTTP传输层的错误响应中间件\n- 更新go.work文件以包含新的错误处理模块\n- 提供了完整的单元测试覆盖错误处理的各种场景",
          "is_bot": false,
          "headline": "feat(errors): 添加协议无关的错误类型定义和传输层错误处理中间件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:47:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc914d6ed7b25cdb9b7eb88bc32bf16b9e011e46",
          "body": "- 升级 github.com/aws/aws-sdk-go-v2/config 从 v1.32.14 到 v1.32.16\n- 升级 github.com/aws/aws-sdk-go-v2/credentials 从 v1.19.14 到 v1.19.15\n- 升级 github.com/aws/aws-sdk-go-v2/service/sts 从 v1.41.10 到 v1.42.0\n- 将 github.com/aws/aws-sdk-go-v2/internal/ini 替换为 github.com/aws/aws-sdk-go-v2/internal/v4a\n- 更新 transport/http/fiber 和 gin 模块中的 go-wind-plugins 版本\n- 同步更新所有相关的 go.sum 文件以反映依赖变更",
          "is_bot": false,
          "headline": "chore(deps): 更新依赖包版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:47:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37f9912759ab60fb4599aea7e485b7de724bffe5",
          "body": "- 在go.work中注册新的中间件模块路径\n- 新增transport/grpc/middleware/metadata包实现gRPC元数据传播功能\n- 新增transport/http/middleware/metadata包实现HTTP元数据传播功能\n- 新增transport/grpc/middleware/validate包实现请求消息验证功能\n- 提供客户端和服务端拦截器支持元数据提取和注入\n- 支持常量元数据配置和上下文传递\n- 实现验证接口用于protobuf消息校验\n- 添加完整的单元测试覆盖各种使用场景",
          "is_bot": false,
          "headline": "feat(middleware): 添加gRPC和HTTP元数据传播及验证中间件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:29:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f5993e14e707c2f8d51a4553a2639e5e6ae093f",
          "body": "- 在 go.work 文件中注册 pprof 模块\n- 创建 pprof 模块的基础结构和配置文件\n- 实现 pprof HTTP 处理器,支持 CPU、堆栈、协程等运行时分析\n- 提供自定义路径前缀配置选项\n- 集成标准库 net/http/pprof 包的所有分析端点\n- 添加完整的单元测试覆盖各种分析场景\n- 实现路由列表功能用于文档或自动化注册",
          "is_bot": false,
          "headline": "feat(pprof): 添加性能分析插件功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:22:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "69d2c43aef6373984dec9c2b24bddaf367d80c07",
          "body": "- 在 go.work 文件中添加了 metrics、requestid 和 timeout 中间件的模块引用\n- 新增 transport/http/middleware/cors 包,提供 CORS 中间件功能\n- 添加 CORS 中间件的单元测试文件 cors_test.go\n- 为 GRPC 的 metrics、requestid 和 timeout 中间件创建独立的 go.mod 文件\n- 为 HTTP 的 metrics、requestid 和 timeout 中间件创建独立的 go.mod 文件\n- 更新所有新增中间件的依赖管理文件 go.sum\n- 实现完整的 CORS 处理逻辑,包括预检请求和响应头设置功能",
          "is_bot": false,
          "headline": "feat(middleware): 添加多个中间件支持并更新工作区配置",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:19:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c885623cfa419e341a5e012ece7ea2755f23e8d1",
          "body": "- 添加tokenProvider字段用于提供传出RPC的令牌\n- 添加scheme字段用于指定授权方案,默认为\"Bearer\"\n- 在authz中间件中添加clientActionResolver和clientResourceResolver字段\n- 更新多个模块中的依赖版本,包括go-isatty、AWS SDK内部组件等\n- 在gRPC中间件模块中添加testify测试库依赖\n- 更新x/net、x/text等Go工具库到最新版本",
          "is_bot": false,
          "headline": "feat(authn): 扩展gRPC认证中间件支持客户端选项",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:07:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "974f0b02495aef2e7b9a9db8592952c5c99f6d20",
          "body": "- 实现 gRPC 和 HTTP 的熔断器中间件,支持自定义失败状态码和跳过方法\n- 添加限流和重试中间件模块的 go.mod 配置文件\n- 在 go.work 文件中注册新的中间件模块路径\n- 提供完整的单元测试覆盖熔断器的各种使用场景",
          "is_bot": false,
          "headline": "feat(middleware): 添加熔断器、限流和重试中间件支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T03:01:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8118ff4a2503e37b80e144da6b8f09b9735bd2f4",
          "body": "- 在 go.work 文件中注册新的 gRPC 中间件模块路径\n- 创建 logging 中间件实现 gRPC 请求的日志记录功能\n- 创建 recovery 中间件实现 gRPC 请求的 panic 恢复功能\n- 创建 tracing 中间件集成 OpenTelemetry 追踪功能\n- 为所有中间件添加完整的单元测试覆盖\n- 配置各中间件的依赖管理文件和校验和文件",
          "is_bot": false,
          "headline": "feat(transport): 添加 gRPC 中间件支持日志记录、恢复和追踪功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T02:47:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0dbd707cb32ffa7a64329b116f71a038ba462052",
          "body": "- 实现了 gRPC 认证中间件 (authn),支持一元和流式拦截器\n- 实现了 gRPC 授权中间件 (authz),支持基于引擎的权限控制\n- 添加了认证和授权中间件的单元测试\n- 配置了中间件的模块依赖和替换规则\n- 更新 go.work 文件以包含新的中间件模块路径",
          "is_bot": false,
          "headline": "feat(transport): 添加 gRPC 认证和授权中间件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T02:40:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7099339f3e13d20ef2e88a9250a52d1cdb13759",
          "body": "- 实现了基于引擎的HTTP请求授权功能\n- 提供可配置的动作、资源和主体解析器\n- 支持自定义错误处理和跳过函数\n- 集成测试覆盖基本授权、拒绝和自定义解析场景\n- 添加Go模块配置文件\n- 更新依赖版本引用",
          "is_bot": false,
          "headline": "feat(authz): 添加HTTP授权中间件实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T02:31:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e60a936694b16edfb1edacc29b4597a63a713bb",
          "body": "- 新增 ACL 授权引擎支持访问控制列表\n- 新增 AWS IAM 授权引擎支持 JSON 策略\n- 新增 Cedar 授权引擎集成 AWS 验证权限服务\n- 在常量定义中注册新的授权引擎类型\n- 更新工作区配置以包含新授权模块\n- 提供完整的单元测试覆盖新功能",
          "is_bot": false,
          "headline": "feat(authz): 添加多种授权引擎实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T02:25:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "50035e91a0e24c23bd1ebd1b5e44f0ee81031114",
          "body": "- 在常量文件中新增 Basic 和 Digest 认证类型定义\n- 将新的认证模块添加到 go.work 工作区配置中\n- 新增 API Key 认证实现,支持静态密钥和自定义验证器\n- 新增 Basic Auth 认证实现,支持静态用户密码和自定义验证器\n- 为新增的认证模块创建独立的 go.mod 配置文件\n- 添加完整的单元测试覆盖新功能的各个场景",
          "is_bot": false,
          "headline": "feat(security): 添加多种认证方式支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T02:17:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4958dd2e0193a2f1f8d920c50e8b6b1121c4d65f",
          "body": "- 实现Casbin适配器和配置模型文件(ABAC、ACL、RBAC等)\n- 集成Casbin授权引擎并提供完整的权限检查接口\n- 添加OPA策略定义和测试用例支持复杂授权逻辑\n- 提供项目级别的授权过滤和权限匹配功能\n- 实现动态策略加载和角色映射管理机制\n- 支持细粒度的资源访问控制和项目范围授权",
          "is_bot": false,
          "headline": "feat(security): 添加Casbin和OPA授权引擎实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T01:56:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d311e9c9feb3eb90eb1e6a51e58ee19afc2c4d07",
          "body": "- 实现了基于engine.Authenticator的HTTP请求认证功能\n- 提供Middleware函数用于创建认证中间件\n- 支持自定义HTTP头名称和错误处理函数\n- 将认证结果注入到请求上下文中供下游处理器使用\n- 包含完整的单元测试覆盖各种认证场景\n- 提供详细的使用文档和示例代码",
          "is_bot": false,
          "headline": "feat(authn): 添加HTTP认证中间件功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T01:55:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "143b4330b5d4e080dec17d052e88c2ce7ca6adbb",
          "body": "- 实现AuthClaims结构体和相关方法用于处理JWT声明\n- 添加OIDC标准声明支持包括iss、sub、aud、exp、nbf、iat、jti等字段\n- 实现多类型数据解析功能支持string、[]string、各种数值类型\n- 添加认证上下文管理功能用于存储和提取认证声明\n- 实现Authenticator接口定义统一的身份验证方法\n- 添加完整的错误码定义和错误处理机制\n- 实现Bearer Token解析和验证功能\n- 提供预共享密钥和OIDC等多种认证方式的基础架构\n- 添加单元测试确保核心功能的正确性",
          "is_bot": false,
          "headline": "feat(security): 添加JWT认证模块实现完整的身份验证功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T01:44:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "172caa743c5bf8cb78aa33a9cbcc37405e48c721",
          "body": "- 实现了可配置的重试机制,支持指数退避和抖动策略\n- 添加了安全认证模块包括认证和授权功能\n- 配置了新的依赖模块到工作空间文件\n- 实现了多种退避策略:固定、线性、指数退避\n- 提供了完整的单元测试覆盖各种重试场景\n- 集成了上下文感知的取消机制和超时控制",
          "is_bot": false,
          "headline": "feat(core): 添加重试机制和安全认证模块",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-10T00:03:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d61b574ede507aa64f65a141822f8a4b635c7d65",
          "body": "- 新增 charm 日志适配器,基于 Charmbracelet log 库提供彩色终端输出\n- 新增 glog 日志适配器,集成 Google glog 库用于基础设施项目\n- 新增 loki 日志适配器,支持将日志推送至 Grafana Loki 服务\n- 新增 sentry 日志适配器,用于错误监控和上报功能\n- 更新 go.work 文件,添加新模块依赖关系\n- 更新 go.work.sum 文件,同步依赖项校验和信息",
          "is_bot": false,
          "headline": "feat(log): 添加多个日志适配器实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T23:52:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e406ce2b2c8cbbac3b03c4da5cab376be128415",
          "body": "- 新增 charm 日志适配器,基于 Charmbracelet log 库提供彩色终端输出\n- 新增 glog 日志适配器,集成 Google glog 库用于基础设施项目\n- 新增 loki 日志适配器,支持将日志推送至 Grafana Loki 服务\n- 新增 sentry 日志适配器,用于错误监控和上报功能\n- 更新 go.work 文件,添加新模块依赖关系\n- 更新 go.work.sum 文件,同步依赖项校验和信息",
          "is_bot": false,
          "headline": "feat(log): 添加多个日志适配器实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T15:26:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "52685993d0a79375a99e8a77477c36cd97e02db0",
          "body": "- 新增 CloudWatch 日志适配器,支持将日志发送到 AWS CloudWatch Logs\n- 添加 hclog 日志库适配器\n- 添加 phuslu/log 日志库适配器\n- 更新 go.work 文件以包含新的日志模块\n- 更新依赖项版本并添加必要的 AWS SDK 依赖\n- 修复 http 中间件 recovery 模块的依赖引用",
          "is_bot": false,
          "headline": "feat(log): 添加 AWS CloudWatch 和多个日志适配器支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T15:20:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73001c5d218e7cf433d626c54e376280b26464b4",
          "body": "- 新增 health 模块,包含 TCP、HTTP 和组合检查器\n- 实现 Health 聚合器和 Handler HTTP 端点\n- 添加 HTTP 中间件:logging、recovery、tracing、validate\n- 在 go.work 中注册新的模块路径\n- 集成 OpenTelemetry 追踪和结构化日志记录\n- 实现请求验证和 panic 恢复功能",
          "is_bot": false,
          "headline": "feat(health): 添加健康检查模块和HTTP中间件",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T15:12:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f6c458e36bfad2d9522bae9b38ceb15815baa7b",
          "body": "- 实现了环境变量配置源,支持前缀和默认键设置\n- 集成了HashiCorp Vault作为配置源,支持轮询监控变更\n- 添加了Zookeeper作为配置源,使用监听器监控节点变化\n- 更新依赖模块版本,包括snappy和prometheus组件\n- 在工作区文件中注册新的配置源模块",
          "is_bot": false,
          "headline": "feat(config): 新增环境变量、Vault和Zookeeper配置源实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T14:59:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fa91c1013ecd82d50f49dac316a5f1df7004981c",
          "body": "- 新增 Avro 编码实现,基于 github.com/linkedin/goavro/v2\n- 新增 BSON 编码实现,基于 go.mongodb.org/mongo-driver/bson\n- 新增 CBOR 编码实现,基于 github.com/fxamacker/cbor/v2\n- 新增 FlatBuffers 编码实现,基于 github.com/google/flatbuffers\n- 新增 Thrift 编码实现,基于 github.com/apache/thrift\n- 更新 go.work 文件以包含新的编码模块\n- 更新相关依赖版本至最新稳定版\n- 为新编码格式添加相应的 go.mod 和 go.sum 配置文件",
          "is_bot": false,
          "headline": "feat(encoding): 添加多种编码格式支持并更新依赖",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T14:47:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "649228a026cb38b273c45a934a2ff25f0ef704c4",
          "body": "- 实现了 MinIO 客户端封装,支持对象上传和下载功能\n- 实现了 S3 客户端封装,支持 AWS S3 兼容的对象存储操作\n- 添加了完整的单元测试覆盖存储客户端的核心功能\n- 统一了错误处理机制,包括空值验证和连接错误处理\n- 实现了对象体准备和大小计算功能,支持不同类型的读取器\n- 添加了配置标准化处理,支持 SSL 和路径风格配置选项\n- 创建了基础编码接口定义,用于消息体编解码处理",
          "is_bot": false,
          "headline": "feat(oss): 添加 MinIO 和 S3 存储客户端实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T14:25:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "914d5f284314b81711c7e3e6b2203d0340d1a623",
          "body": "- 实现了 MinIO 客户端封装,支持对象上传和下载功能\n- 实现了 S3 客户端封装,支持 AWS S3 兼容的对象存储操作\n- 添加了完整的单元测试覆盖存储客户端的核心功能\n- 统一了错误处理机制,包括空值验证和连接错误处理\n- 实现了对象体准备和大小计算功能,支持不同类型的读取器\n- 添加了配置标准化处理,支持 SSL 和路径风格配置选项\n- 创建了基础编码接口定义,用于消息体编解码处理",
          "is_bot": false,
          "headline": "feat(oss): 添加 MinIO 和 S3 存储客户端实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T14:13:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b9d011af2442ab1ed3ae3ed32097f354ab8b958c",
          "body": "- 新增 langchaingo 包,提供 Agent、Chain 和客户端封装\n- 新增 eino 包,提供 Chain、Graph 和模型客户端实现\n- 添加 argo 工作流客户端,支持工作流 CRUD 和生命周期操作\n- 添加 conductor 工作流客户端,支持工作流执行和状态管理\n- 添加 goworkflows 客户端,提供工作流实例管理功能\n- 实现测试用例验证各客户端功能正确性",
          "is_bot": false,
          "headline": "feat(ai): 添加 AI 框架和工作流客户端实现",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T13:17:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6f5fbbd4d67c91543931bae666c384c095b66c9e",
          "body": "- 更新 github.com/tx7do/go-wind-plugins/transport/http 到最新版本\n- 升级 github.com/mattn/go-isatty 从 v0.0.21 到 v0.0.22\n- 同步更新 go.sum 中的相关依赖哈希值\n- 保持项目依赖的一致性和安全性",
          "is_bot": false,
          "headline": "chore(deps): 更新 go-wind-plugins 和 go-isatty 依赖版本",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T11:48:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11d950d8c8b3c75e816cc9f3c2cb11c98cb8f2c2",
          "body": "- 重写 README.md 文件,增加项目介绍、功能特点、架构设计等内容\n- 新增英文版 README_en.md 文档\n- 新增日文版 README_ja.md 文档\n- 添加项目徽章和多语言链接导航\n- 补充详细的插件矩阵表格和使用示例\n- 更新项目结构说明和快速开始指南",
          "is_bot": false,
          "headline": "docs(readme): 完善项目文档并添加多语言支持",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T11:03:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "501565790eb05221a2216cea75e725561b9d3df0",
          "body": "- 将 github.com/tx7do/go-wind 从 v0.0.0-20260609092115-0a5df91d8c74 更新到 v0.0.1\n- 在多个模块中添加 google.golang.org/genproto 的 replace 指令以解决导入冲突\n- 将 github.com/golang/mock 从 v1.6.0 更新到 v1.7.0-rc.1\n- 将 golang.org/x/time 从 v0.1.0 更新到 v0.15.0\n- 更新 polaris 相关依赖包版本\n- 移除 exclude 指令改为使用 replace 指令处理 genproto 冲突",
          "is_bot": false,
          "headline": "chore(deps): 更新依赖版本并修复模块冲突",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T10:55:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25483f3d73c48896f81a5da9d9031f35774cdaa7",
          "body": "- 实现了阿里云SLS日志记录器,支持DEBUG、INFO、WARN、ERROR级别日志\n- 集成了阿里云日志服务SDK,实现日志推送功能\n- 添加了日志格式化和类型转换功能,支持多种数据类型\n- 实现了配置选项和连接池管理\n- 编写了完整的单元测试用例\n\nfeat(config): 新增Apollo配置中心集成\n\n- 实现了Apollo配置源,支持远程配置获取和监听\n- 集成了Apollo客户端,支持命名空间和集群配置\n- 实现了配置缓存和变更监听机制\n- 添加了配置格式解析和键值映射功能\n- 编写了配置解析相关的测试用例\n\nfeat(registry): 新增Consul和Eureka注册中心支持\n\n- 实现了Consul客户端,支持服务注册、发现和健康检查\n- 实现了Eureka客户端,支持服务注册、心跳和实例管理\n- 添加了多数据中心支持和负载均衡策略\n- 实现了服务实例状态管理和故障转移机制\n- 提供了完整的服务注册与发现接口实现",
          "is_bot": false,
          "headline": "feat(log): 新增阿里云SLS日志记录功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T10:31:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "978e7462fe256ab3f5a12ded21bbb5679afb06f9",
          "body": "- 实现配置管理模块,提供Reader、Closer、Watcher等接口\n- 添加服务发现模块,包含Registrar和Discovery接口定义\n- 实现HTTP传输层,支持gin、fiber等不同驱动\n- 添加日志组件,包含LevelFilter和MultiLogger功能\n- 更新.gitignore文件,优化忽略规则配置\n- 添加GRPC传输模块基础结构\n- 实现配置和注册中心的单元测试",
          "is_bot": false,
          "headline": "feat(plugin): 添加配置管理和服务发现插件功能",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T09:25:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c22d9f99ef903bbc9821c7bdcd65f2555105169",
          "body": null,
          "is_bot": false,
          "headline": "Initial commit",
          "author_name": "Bobo",
          "author_login": "tx7do",
          "committed_at": "2026-06-09T07:46:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 0,
      "commits_last_year": 91,
      "latest_release_at": null,
      "latest_release_tag": null,
      "releases_from_tags": false,
      "days_since_last_push": 6,
      "active_weeks_last_year": 5,
      "days_since_latest_release": null,
      "mean_days_between_releases": null
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 42,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "github.com/tx7do/go-wind-plugins/log",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/log",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-09T10:55:39Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 44
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/cache",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/cache",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T23:33:43Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 42
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/pprof",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/pprof",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T23:33:43Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 42
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/retry",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/retry",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T23:33:43Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 42
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/broker",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/broker",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T23:33:43Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 42
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/config",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/config",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-09T10:55:39Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 44
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/errors",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/errors",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T10:36:44Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 43
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/health",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/tx7do/go-wind-plugins/health",
          "is_deprecated": false,
          "latest_version": "v0.0.1",
          "repository_url": "https://github.com/tx7do/go-wind-plugins",
          "versions_count": 1,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-10T23:33:43Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 42
        }
      ]
    },
    "popularity": {
      "forks": 1,
      "stars": 4,
      "watchers": 0,
      "fork_history": {
        "days": [
          {
            "date": "2026-06-18",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 1,
        "total_forks": 1
      },
      "star_history": null,
      "open_issues_and_prs": 0
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "example"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "security/authz/opa/policy/Makefile"
      ],
      "api_schema_files": [
        "testing/api/graphql/schema.graphql",
        "testing/api/protobuf/proto/hygrothermograph.proto",
        "testing/api/protobuf/proto/i_hygrothermograph.proto"
      ],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "_examples/go.mod",
        "ai/eino/go.mod",
        "ai/langchaingo/go.mod",
        "ai/openai/go.mod",
        "broker/azuresb/go.mod",
        "broker/gcpubsub/go.mod",
        "broker/go.mod",
        "broker/kafka/go.mod",
        "broker/mqtt/go.mod",
        "broker/nats/go.mod",
        "broker/nsq/go.mod",
        "broker/pulsar/go.mod",
        "broker/rabbitmq/go.mod",
        "broker/redis/go.mod",
        "broker/rocketmq/go.mod",
        "broker/sqs/go.mod",
        "broker/stomp/go.mod",
        "cache/go.mod",
        "cache/local/go.mod",
        "cache/redis/go.mod",
        "circuitbreaker/go.mod",
        "circuitbreaker/hystrix/go.mod",
        "circuitbreaker/sentinel/go.mod",
        "circuitbreaker/sres/go.mod",
        "circuitbreaker/vegas/go.mod",
        "config/apollo/go.mod",
        "config/consul/go.mod",
        "config/env/go.mod",
        "config/etcd/go.mod",
        "config/file/go.mod",
        "config/fs/go.mod",
        "config/go.mod",
        "config/http/go.mod",
        "config/kubernetes/go.mod",
        "config/nacos/go.mod",
        "config/oss/go.mod",
        "config/polaris/go.mod",
        "config/redis/go.mod",
        "config/vault/go.mod",
        "config/zookeeper/go.mod",
        "encoding/avro/go.mod",
        "encoding/bson/go.mod",
        "encoding/cbor/go.mod",
        "encoding/flatbuffers/go.mod",
        "encoding/go.mod",
        "encoding/gob/go.mod",
        "encoding/json/go.mod",
        "encoding/msgpack/go.mod",
        "encoding/proto/go.mod",
        "encoding/thrift/go.mod",
        "encoding/toml/go.mod",
        "encoding/xml/go.mod",
        "encoding/yaml/go.mod",
        "errors/go.mod",
        "health/go.mod",
        "log/aliyun/go.mod",
        "log/charm/go.mod",
        "log/cloudwatch/go.mod",
        "log/fluent/go.mod",
        "log/glog/go.mod",
        "log/go.mod",
        "log/hclog/go.mod",
        "log/logrus/go.mod",
        "log/loki/go.mod",
        "log/phuslu/go.mod",
        "log/sentry/go.mod",
        "log/tencent/go.mod",
        "log/zap/go.mod",
        "log/zerolog/go.mod",
        "metrics/datadog/go.mod",
        "metrics/go.mod",
        "metrics/otel/go.mod",
        "metrics/prometheus/go.mod",
        "oss/minio/go.mod",
        "oss/s3/go.mod",
        "pprof/go.mod",
        "ratelimit/bbr/go.mod",
        "ratelimit/go.mod",
        "ratelimit/sentinel/go.mod",
        "ratelimit/tokenbucket/go.mod",
        "registry/consul/go.mod",
        "registry/etcd/go.mod",
        "registry/eureka/go.mod",
        "registry/go.mod",
        "registry/kubernetes/go.mod",
        "registry/nacos/go.mod",
        "registry/polaris/go.mod",
        "registry/servicecomb/go.mod",
        "registry/zookeeper/go.mod",
        "retry/go.mod",
        "security/authn/apikey/go.mod",
        "security/authn/basicauth/go.mod",
        "security/authn/go.mod",
        "security/authn/hmac/go.mod",
        "security/authn/jwt/go.mod",
        "security/authn/mtls/go.mod",
        "security/authn/oauth2/go.mod",
        "security/authn/oidc/go.mod",
        "security/authn/presharedkey/go.mod",
        "security/authn/session/go.mod",
        "security/authz/acl/go.mod",
        "security/authz/awsiam/go.mod",
        "security/authz/casbin/go.mod",
        "security/authz/cedar/go.mod",
        "security/authz/cerbos/go.mod",
        "security/authz/go.mod",
        "security/authz/opa/go.mod",
        "security/authz/rbac/go.mod",
        "security/authz/zanzibar/go.mod",
        "security/crypto/go.mod",
        "testing/go.mod",
        "tracer/otlp/go.mod",
        "transaction/dtm/go.mod",
        "transaction/go.mod",
        "transport/activemq/go.mod",
        "transport/asynq/go.mod",
        "transport/azuresb/go.mod",
        "transport/cron/go.mod",
        "transport/gcpubsub/go.mod",
        "transport/go.mod",
        "transport/graphql/go.mod",
        "transport/grpc/client/go.mod",
        "transport/grpc/middleware/authn/go.mod",
        "transport/grpc/middleware/authz/go.mod",
        "transport/grpc/middleware/circuitbreaker/go.mod",
        "transport/grpc/middleware/codec/go.mod",
        "transport/grpc/middleware/crypto/go.mod",
        "transport/grpc/middleware/errors/go.mod",
        "transport/grpc/middleware/logging/go.mod",
        "transport/grpc/middleware/metadata/go.mod",
        "transport/grpc/middleware/metrics/go.mod",
        "transport/grpc/middleware/ratelimit/go.mod",
        "transport/grpc/middleware/recovery/go.mod",
        "transport/grpc/middleware/requestid/go.mod",
        "transport/grpc/middleware/retry/go.mod",
        "transport/grpc/middleware/timeout/go.mod",
        "transport/grpc/middleware/tracing/go.mod",
        "transport/grpc/middleware/validate/go.mod",
        "transport/grpc/server/go.mod",
        "transport/hptimer/go.mod",
        "transport/http/benchmark/go.mod",
        "transport/http/binding/go.mod",
        "transport/http/driver/chi/go.mod",
        "transport/http/driver/fiber/go.mod",
        "transport/http/driver/gin/go.mod",
        "transport/http/driver/std/go.mod",
        "transport/http/go.mod",
        "transport/http/middleware/authn/go.mod",
        "transport/http/middleware/authz/go.mod",
        "transport/http/middleware/circuitbreaker/go.mod",
        "transport/http/middleware/codec/go.mod",
        "transport/http/middleware/cors/go.mod",
        "transport/http/middleware/crypto/go.mod",
        "transport/http/middleware/errors/go.mod",
        "transport/http/middleware/logging/go.mod",
        "transport/http/middleware/metadata/go.mod",
        "transport/http/middleware/metrics/go.mod",
        "transport/http/middleware/ratelimit/go.mod",
        "transport/http/middleware/recovery/go.mod",
        "transport/http/middleware/requestid/go.mod",
        "transport/http/middleware/retry/go.mod",
        "transport/http/middleware/timeout/go.mod",
        "transport/http/middleware/tracing/go.mod",
        "transport/http/middleware/validate/go.mod",
        "transport/http/redoc/go.mod",
        "transport/http/swagger/go.mod",
        "transport/http3/go.mod",
        "transport/kafka/go.mod",
        "transport/kcp/go.mod",
        "transport/machinery/go.mod",
        "transport/mcp/go.mod",
        "transport/mqtt/go.mod",
        "transport/nats/go.mod",
        "transport/nsq/go.mod",
        "transport/pulsar/go.mod",
        "transport/rabbitmq/go.mod",
        "transport/redis/go.mod",
        "transport/rocketmq/go.mod",
        "transport/signalr/go.mod",
        "transport/socketio/go.mod",
        "transport/sqs/go.mod",
        "transport/sse/go.mod",
        "transport/tcp/go.mod",
        "transport/thrift/go.mod",
        "transport/trpc/go.mod",
        "transport/webrtc/go.mod",
        "transport/websocket/go.mod",
        "transport/webtransport/go.mod",
        "workflow/argo/go.mod",
        "workflow/conductor/go.mod",
        "workflow/go.mod",
        "workflow/goworkflows/go.mod",
        "workflow/temporal/go.mod"
      ],
      "largest_source_bytes": 85305,
      "source_files_sampled": 812,
      "oversized_source_files": 1,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "_examples/go.mod",
        "broker/go.mod",
        "cache/go.mod",
        "circuitbreaker/go.mod",
        "config/go.mod",
        "encoding/go.mod",
        "errors/go.mod",
        "health/go.mod",
        "log/go.mod",
        "metrics/go.mod",
        "pprof/go.mod",
        "ratelimit/go.mod",
        "registry/go.mod",
        "retry/go.mod",
        "testing/go.mod",
        "transaction/go.mod",
        "transport/go.mod",
        "workflow/go.mod"
      ],
      "advisories": {
        "error": null,
        "scope": null,
        "source": null,
        "findings": [],
        "collected": false,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 0,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "go"
      ],
      "dependencies": [
        {
          "name": "github.com/99designs/gqlgen",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.17.89"
        },
        {
          "name": "github.com/apache/thrift",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.0"
        },
        {
          "name": "github.com/googollee/go-socket.io",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.0"
        },
        {
          "name": "github.com/hibiken/asynq",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.26.0"
        },
        {
          "name": "github.com/prometheus/client_golang",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.23.2"
        },
        {
          "name": "github.com/tx7do/go-utils/crypto",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.2"
        },
        {
          "name": "github.com/tx7do/go-wind",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/broker",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/cache",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/cache/local",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/circuitbreaker",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/circuitbreaker/sres",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-00010101000000-000000000000"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/config/file",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/encoding/json",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/encoding/xml",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/health",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-00010101000000-000000000000"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/metrics",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/metrics/prometheus",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-00010101000000-000000000000"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/ratelimit",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/ratelimit/tokenbucket",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-00010101000000-000000000000"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/registry/etcd",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/retry",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-00010101000000-000000000000"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/testing",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/tracer/otlp",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/asynq",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/cron",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/graphql",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/grpc/middleware/logging",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/grpc/middleware/recovery",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/grpc/server",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/driver/std",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/codec",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/crypto",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/logging",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/recovery",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/requestid",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/middleware/tracing",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/swagger",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/http/redoc",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/kafka",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/socketio",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/sse",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/tcp",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/thrift",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/transport/websocket",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "go.etcd.io/etcd/client/v3",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.6.10"
        },
        {
          "name": "go.opentelemetry.io/otel",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.43.0"
        },
        {
          "name": "go.opentelemetry.io/otel/trace",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.43.0"
        },
        {
          "name": "google.golang.org/grpc",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.80.0"
        },
        {
          "name": "google.golang.org/protobuf",
          "manifest": "_examples/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.36.11"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/encoding",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/encoding/json",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/encoding/proto",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "go.opentelemetry.io/otel",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.43.0"
        },
        {
          "name": "go.opentelemetry.io/otel/trace",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.43.0"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/tracer/otlp",
          "manifest": "broker/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind",
          "manifest": "log/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind",
          "manifest": "registry/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/99designs/gqlgen",
          "manifest": "testing/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.17.89"
        },
        {
          "name": "github.com/apache/thrift",
          "manifest": "testing/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.0"
        },
        {
          "name": "github.com/vektah/gqlparser/v2",
          "manifest": "testing/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.5.32"
        },
        {
          "name": "google.golang.org/grpc",
          "manifest": "testing/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.80.0"
        },
        {
          "name": "google.golang.org/protobuf",
          "manifest": "testing/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.36.11"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/broker",
          "manifest": "transport/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/tx7do/go-wind-plugins/metrics",
          "manifest": "transport/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        }
      ],
      "all_dependencies": {
        "error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
        "source": null,
        "packages": [],
        "collected": false,
        "truncated": false,
        "total_count": null,
        "direct_count": null,
        "indirect_count": null
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 0,
        "open_issues": 0,
        "closed_ratio": null,
        "closed_issues": 0,
        "closed_unmerged_prs": 0
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "tx7do",
          "commits": 91,
          "avatar_url": "https://avatars.githubusercontent.com/u/15902756?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": false,
      "has_tests": true,
      "ci_workflows": [],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 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": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 10,
            "reason": "all dependencies are pinned",
            "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": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "44 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "d8a493a75f72939eca7f812efa486406db4a4454",
        "ran_at": "2026-07-23T21:51:51Z",
        "aggregate_score": 2.1,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-17T00:06:44Z",
      "oldest_open_prs": [],
      "last_merged_pr_at": null,
      "ci_last_conclusion": null,
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/tx7do/go-wind-plugins",
    "host": "github.com",
    "name": "go-wind-plugins",
    "owner": "tx7do"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "at_risk",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 36,
      "inputs": {
        "security": 21,
        "vitality": 35,
        "community": 28,
        "governance": 36,
        "engineering": 58
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "at_risk",
        "name": "Vitality",
        "value": 35,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 57,
            "inputs": {
              "commits_last_year": 91,
              "human_commit_share": 1,
              "days_since_last_push": 6,
              "active_weeks_last_year": 5
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "5/52 weeks with commits",
                "points": 3.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 5
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "91 commits in the last year",
                "points": 17.6,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 91
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "critical",
            "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": 1,
            "inputs": {
              "releases_count": 0
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "no releases published",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases_published",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "critical",
        "name": "Community & Adoption",
        "value": 28,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 8,
            "inputs": {
              "forks": 1,
              "stars": 4,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "4 stars",
                "points": 7.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "1 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "at_risk",
        "name": "Sustainability & Governance",
        "value": 36,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 10,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "critical",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Issue resolution, PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "issue_resolution",
                    "pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "merged_prs": 0,
              "open_issues": 0,
              "closed_issues": 0,
              "issue_closed_ratio": null,
              "closed_unmerged_prs": 0
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "no issues or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_issues_or_data",
                    "params": {}
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "no decided pull requests or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_decided_prs_or_data",
                    "params": {}
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 65,
            "inputs": {
              "followers": 215,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "tx7do",
              "public_repos": 212,
              "account_age_days": 3900
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "215 followers of tx7do",
                "points": 16.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 215,
                      "login": "tx7do"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "212 public repos, account ~10 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 212
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 10
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "good",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "packages": [
                "github.com/tx7do/go-wind-plugins/log",
                "github.com/tx7do/go-wind-plugins/cache",
                "github.com/tx7do/go-wind-plugins/pprof",
                "github.com/tx7do/go-wind-plugins/retry",
                "github.com/tx7do/go-wind-plugins/broker",
                "github.com/tx7do/go-wind-plugins/config",
                "github.com/tx7do/go-wind-plugins/errors",
                "github.com/tx7do/go-wind-plugins/health"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 42
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "8 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 8,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 42 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 42
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "1 published versions",
                "points": 4,
                "status": "partial",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "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": "moderate",
        "name": "Engineering Quality",
        "value": 58,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "at_risk",
            "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": 30,
            "inputs": {
              "has_ci": false,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "topics": [
                "adapter",
                "broker",
                "configuration",
                "go",
                "grpc",
                "http",
                "microservice",
                "opentelemetry",
                "plugins",
                "service-discovery"
              ],
              "has_wiki": true,
              "homepage": "https://www.gowind.cloud/",
              "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://www.gowind.cloud/",
                "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": "10 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "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": "critical",
        "name": "Security",
        "value": 21,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "critical",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): CI-Tests, Dangerous-Workflow, Packaging, Signed-Releases, Token-Permissions. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "ci_tests",
                    "dangerous_workflow",
                    "packaging",
                    "signed_releases",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 21,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 13,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 5,
              "scorecard_aggregate": 2.1
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "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 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "all dependencies are pinned",
                "points": 5,
                "status": "met",
                "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": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "44 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "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"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 2
            },
            "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": "moderate",
        "name": "AI Readiness",
        "value": 67,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.989,
              "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 91 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 90,
                      "sampled": 91
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 71,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [
                "security/authz/opa/policy/Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "_examples/go.mod",
                "ai/eino/go.mod",
                "ai/langchaingo/go.mod",
                "ai/openai/go.mod",
                "broker/azuresb/go.mod",
                "broker/gcpubsub/go.mod",
                "broker/go.mod",
                "broker/kafka/go.mod",
                "broker/mqtt/go.mod",
                "broker/nats/go.mod",
                "broker/nsq/go.mod",
                "broker/pulsar/go.mod",
                "broker/rabbitmq/go.mod",
                "broker/redis/go.mod",
                "broker/rocketmq/go.mod",
                "broker/sqs/go.mod",
                "broker/stomp/go.mod",
                "cache/go.mod",
                "cache/local/go.mod",
                "cache/redis/go.mod",
                "circuitbreaker/go.mod",
                "circuitbreaker/hystrix/go.mod",
                "circuitbreaker/sentinel/go.mod",
                "circuitbreaker/sres/go.mod",
                "circuitbreaker/vegas/go.mod",
                "config/apollo/go.mod",
                "config/consul/go.mod",
                "config/env/go.mod",
                "config/etcd/go.mod",
                "config/file/go.mod",
                "config/fs/go.mod",
                "config/go.mod",
                "config/http/go.mod",
                "config/kubernetes/go.mod",
                "config/nacos/go.mod",
                "config/oss/go.mod",
                "config/polaris/go.mod",
                "config/redis/go.mod",
                "config/vault/go.mod",
                "config/zookeeper/go.mod",
                "encoding/avro/go.mod",
                "encoding/bson/go.mod",
                "encoding/cbor/go.mod",
                "encoding/flatbuffers/go.mod",
                "encoding/go.mod",
                "encoding/gob/go.mod",
                "encoding/json/go.mod",
                "encoding/msgpack/go.mod",
                "encoding/proto/go.mod",
                "encoding/thrift/go.mod",
                "encoding/toml/go.mod",
                "encoding/xml/go.mod",
                "encoding/yaml/go.mod",
                "errors/go.mod",
                "health/go.mod",
                "log/aliyun/go.mod",
                "log/charm/go.mod",
                "log/cloudwatch/go.mod",
                "log/fluent/go.mod",
                "log/glog/go.mod",
                "log/go.mod",
                "log/hclog/go.mod",
                "log/logrus/go.mod",
                "log/loki/go.mod",
                "log/phuslu/go.mod",
                "log/sentry/go.mod",
                "log/tencent/go.mod",
                "log/zap/go.mod",
                "log/zerolog/go.mod",
                "metrics/datadog/go.mod",
                "metrics/go.mod",
                "metrics/otel/go.mod",
                "metrics/prometheus/go.mod",
                "oss/minio/go.mod",
                "oss/s3/go.mod",
                "pprof/go.mod",
                "ratelimit/bbr/go.mod",
                "ratelimit/go.mod",
                "ratelimit/sentinel/go.mod",
                "ratelimit/tokenbucket/go.mod",
                "registry/consul/go.mod",
                "registry/etcd/go.mod",
                "registry/eureka/go.mod",
                "registry/go.mod",
                "registry/kubernetes/go.mod",
                "registry/nacos/go.mod",
                "registry/polaris/go.mod",
                "registry/servicecomb/go.mod",
                "registry/zookeeper/go.mod",
                "retry/go.mod",
                "security/authn/apikey/go.mod",
                "security/authn/basicauth/go.mod",
                "security/authn/go.mod",
                "security/authn/hmac/go.mod",
                "security/authn/jwt/go.mod",
                "security/authn/mtls/go.mod",
                "security/authn/oauth2/go.mod",
                "security/authn/oidc/go.mod",
                "security/authn/presharedkey/go.mod",
                "security/authn/session/go.mod",
                "security/authz/acl/go.mod",
                "security/authz/awsiam/go.mod",
                "security/authz/casbin/go.mod",
                "security/authz/cedar/go.mod",
                "security/authz/cerbos/go.mod",
                "security/authz/go.mod",
                "security/authz/opa/go.mod",
                "security/authz/rbac/go.mod",
                "security/authz/zanzibar/go.mod",
                "security/crypto/go.mod",
                "testing/go.mod",
                "tracer/otlp/go.mod",
                "transaction/dtm/go.mod",
                "transaction/go.mod",
                "transport/activemq/go.mod",
                "transport/asynq/go.mod",
                "transport/azuresb/go.mod",
                "transport/cron/go.mod",
                "transport/gcpubsub/go.mod",
                "transport/go.mod",
                "transport/graphql/go.mod",
                "transport/grpc/client/go.mod",
                "transport/grpc/middleware/authn/go.mod",
                "transport/grpc/middleware/authz/go.mod",
                "transport/grpc/middleware/circuitbreaker/go.mod",
                "transport/grpc/middleware/codec/go.mod",
                "transport/grpc/middleware/crypto/go.mod",
                "transport/grpc/middleware/errors/go.mod",
                "transport/grpc/middleware/logging/go.mod",
                "transport/grpc/middleware/metadata/go.mod",
                "transport/grpc/middleware/metrics/go.mod",
                "transport/grpc/middleware/ratelimit/go.mod",
                "transport/grpc/middleware/recovery/go.mod",
                "transport/grpc/middleware/requestid/go.mod",
                "transport/grpc/middleware/retry/go.mod",
                "transport/grpc/middleware/timeout/go.mod",
                "transport/grpc/middleware/tracing/go.mod",
                "transport/grpc/middleware/validate/go.mod",
                "transport/grpc/server/go.mod",
                "transport/hptimer/go.mod",
                "transport/http/benchmark/go.mod",
                "transport/http/binding/go.mod",
                "transport/http/driver/chi/go.mod",
                "transport/http/driver/fiber/go.mod",
                "transport/http/driver/gin/go.mod",
                "transport/http/driver/std/go.mod",
                "transport/http/go.mod",
                "transport/http/middleware/authn/go.mod",
                "transport/http/middleware/authz/go.mod",
                "transport/http/middleware/circuitbreaker/go.mod",
                "transport/http/middleware/codec/go.mod",
                "transport/http/middleware/cors/go.mod",
                "transport/http/middleware/crypto/go.mod",
                "transport/http/middleware/errors/go.mod",
                "transport/http/middleware/logging/go.mod",
                "transport/http/middleware/metadata/go.mod",
                "transport/http/middleware/metrics/go.mod",
                "transport/http/middleware/ratelimit/go.mod",
                "transport/http/middleware/recovery/go.mod",
                "transport/http/middleware/requestid/go.mod",
                "transport/http/middleware/retry/go.mod",
                "transport/http/middleware/timeout/go.mod",
                "transport/http/middleware/tracing/go.mod",
                "transport/http/middleware/validate/go.mod",
                "transport/http/redoc/go.mod",
                "transport/http/swagger/go.mod",
                "transport/http3/go.mod",
                "transport/kafka/go.mod",
                "transport/kcp/go.mod",
                "transport/machinery/go.mod",
                "transport/mcp/go.mod",
                "transport/mqtt/go.mod",
                "transport/nats/go.mod",
                "transport/nsq/go.mod",
                "transport/pulsar/go.mod",
                "transport/rabbitmq/go.mod",
                "transport/redis/go.mod",
                "transport/rocketmq/go.mod",
                "transport/signalr/go.mod",
                "transport/socketio/go.mod",
                "transport/sqs/go.mod",
                "transport/sse/go.mod",
                "transport/tcp/go.mod",
                "transport/thrift/go.mod",
                "transport/trpc/go.mod",
                "transport/webrtc/go.mod",
                "transport/websocket/go.mod",
                "transport/webtransport/go.mod",
                "workflow/argo/go.mod",
                "workflow/conductor/go.mod",
                "workflow/go.mod",
                "workflow/goworkflows/go.mod",
                "workflow/temporal/go.mod"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "security/authz/opa/policy/Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "security/authz/opa/policy/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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "Go (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "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 91",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 91
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "all dependencies are pinned",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 85305,
              "source_files_sampled": 812,
              "oversized_source_files": 1
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "1/812 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 812,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "good",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "example_dirs": [
                "example"
              ],
              "has_mcp_signal": false,
              "api_schema_files": [
                "testing/api/graphql/schema.graphql",
                "testing/api/protobuf/proto/hygrothermograph.proto",
                "testing/api/protobuf/proto/i_hygrothermograph.proto"
              ]
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": "testing/api/graphql/schema.graphql, testing/api/protobuf/proto/hygrothermograph.proto, testing/api/protobuf/proto/i_hygrothermograph.proto",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "testing/api/graphql/schema.graphql, testing/api/protobuf/proto/hygrothermograph.proto, testing/api/protobuf/proto/i_hygrothermograph.proto"
                    }
                  }
                ],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "example",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "example"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-23T21:51:59.657616Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/t/tx7do/go-wind-plugins.svg",
  "full_name": "tx7do/go-wind-plugins",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenGo.