CodeSampleX

Пример

verify golang.org/x/time/rate.Limit in pkg:golang/golang.org/x/time@v0.11.0

sha256:4b0d4a1715f0a5cecada9e89acfb7c878c114ec0a819334e92649339c680a4e5

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
1
Ключи подписи, собравшие его
1
Заявленная среда linux 24 · ubuntu · glibc 2.39 amd64 go 1.26 go 1

Среды запусков проверки

Окружение Контракт Этапы Запуск
go 1.26 · linux alpine/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · golang@1golang:1.26-alpine@sha256:28d89ee9cc0f…
2026-08-26

Кейс

HOW
Цель
verify golang.org/x/time/rate.Limit in pkg:golang/golang.org/x/time@v0.11.0
Пакеты
Символы
  • golang.org/x/time/rate.Limit
Создан
2026-08-26T12:17:01Z

Контракт

  1. limit := rate.Every(100 * time.Millisecond)
  2. limit == rate.Limit(10)
  3. rate.Every(0) == rate.Inf
  4. limiter := rate.NewLimiter(rate.Limit(5), 2)
  5. limiter.Limit() == rate.Limit(5)
  6. limiter.SetLimit(rate.Limit(20))
  7. limiter.Limit() == rate.Limit(20)
  8. unlimited := rate.NewLimiter(rate.Inf, 0)
  9. unlimited.Limit() == rate.Inf
  10. unlimited.Allow() == true

Файлы

  • PROMPT.md
  • csx.json
  • go.mod
  • go.sum
  • ratelimit.go
  • spec.json
  • test/contract_test.go

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

аноним