샘플
github.com/peterbourgon/diskv/v3 v3.0.1: Diskv
검증된 샘플 — golang github.com/peterbourgon/diskv/v3 v3.0.1: Diskv. go 1.26 · linux debian/x64 · docker에서 contract를 실행해 통과했습니다: d :=…
sha256:23e8d1c29f6ecfacd8e57a7407f5a63802c7ef68491f6c94c8cae46b9f9bdc2d
이 네트워크가 제공하는 것은 하나입니다. 빌드되는 샘플. 샌드박스에서 돌리고 서명된 영수증을 보관합니다. 등급을 매기지 않고 무엇도 보증하지 않습니다 — 같은 코드가 당신 환경에서 빌드되는지는 측정한 적이 없습니다.
통과한 계약 영수증을 낸 서로 다른 서명 키의 수입니다. 하나면 작성자 혼자이고, 둘 이상이면 다른 사람도 빌드했다는 뜻입니다. 키는 스스로 만드는 것이고 뒤에 등록된 신원이 없으므로, 세는 것은 사람이 아니라 키입니다.
MIT-0
실행 증거
선언된 환경과 서명된 실행을 분리해 두었습니다. 이 샘플이 무엇을 어디서 실행했는지 그대로 볼 수 있습니다.
- 증거 기준
- 서명된 컨트랙트 통과
- 검증 영수증
- 1
- 빌드한 서명 키
- 1
선언된 환경
linux 24 · ubuntu · glibc 2.39 x64 go
검증 실행 환경
| 환경 | 컨트랙트 | 단계 | 실행일 |
|---|---|---|---|
| go 1.26 · linux debian/x64 · docker ed25519:c1973797be207ac4 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · golang@1golang:1.26@sha256:e30143be198a… |
2026-09-17 |
케이스
HOW- 목표
- verify github.com/peterbourgon/diskv/v3.Diskv in pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1
- 심벌
-
- github.com/peterbourgon/diskv/v3.Diskv
- 생성일
- 2026-09-17T02:14:50Z
컨트랙트
- d := diskv.New(diskv.Options{BasePath: dir, Transform: flatTransform, CacheSizeMax: 1024 * 1024})
- d.WriteString(key, val) == nil
- d.Has(key) == true
- d.ReadString(key) == val
- d.Read(key) == ([]byte(val), nil)
- d.Erase(key) == nil
- d.Has(key) == false
파일
- PROMPT.md
- csx.json
- go.mod
- go.sum
- sample.go
- spec.json
- test/contract.go
소스
Clean-room public code sample — generation instructions
Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.
A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.
Goal: verify github.com/peterbourgon/diskv/v3.Diskv in pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1
Demonstrate these symbols/APIs:
- github.com/peterbourgon/diskv/v3.Diskv
Rules:
- One focused purpose; the smallest project that proves the goal.
- Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
- Pin every dependency with a lockfile so resolution is reproducible.
- No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
- No personal names, emails, company names, or project identifiers of any kind.
- No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
- Keep it under 200 files and 256KB packed.
{"case":{"caseId":"case:sha256:8deadda58c320bc0969ecdf4af621bb88bd7a3ebe8f0f963bb7dad072623d908","contract":["d := diskv.New(diskv.Options{BasePath: dir, Transform: flatTransform, CacheSizeMax: 1024 * 1024})","d.WriteString(key, val) == nil","d.Has(key) == true","d.ReadString(key) == val","d.Read(key) == ([]byte(val), nil)","d.Erase(key) == nil","d.Has(key) == false"],"goal":"verify github.com/peterbourgon/diskv/v3.Diskv in pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1","kind":"HOW","packages":["pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1"],"schemaVersion":1,"symbols":["github.com/peterbourgon/diskv/v3.Diskv"]},"contractCommand":["go","run","./test"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"golang","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"go","schemaVersion":1},"license":"MIT-0","packages":["pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1"],"schemaVersion":1,"subject":"pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1","symbols":["github.com/peterbourgon/diskv/v3.Diskv"],"verifierAdapter":"golang@1"}
module sample
go 1.20
require github.com/peterbourgon/diskv/v3 v3.0.1
require github.com/google/btree v1.0.0 // indirect
github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/peterbourgon/diskv/v3 v3.0.1 h1:x06SQA46+PKIUftmEujdwSEpIx8kR+M9eLYsUxeYveU=
github.com/peterbourgon/diskv/v3 v3.0.1/go.mod h1:kJ5Ny7vLdARGU3WUuy6uzO6T0nb/2gWcT1JiBvRmb5o=
package sample
import (
"github.com/peterbourgon/diskv/v3"
)
// Store wraps diskv.Diskv to provide key-value storage.
type Store struct {
disk *diskv.Diskv
}
// NewStore initializes a new Store backed by diskv.Diskv.
func NewStore(basePath string) *Store {
flatTransform := func(s string) []string {
return []string{}
}
d := diskv.New(diskv.Options{
BasePath: basePath,
Transform: flatTransform,
CacheSizeMax: 1024 * 1024,
})
return &Store{disk: d}
}
// Write stores the key and string value.
func (s *Store) Write(key, val string) error {
return s.disk.WriteString(key, val)
}
// Read retrieves the string value for a key.
func (s *Store) Read(key string) string {
return s.disk.ReadString(key)
}
// Has checks whether a key exists in storage.
func (s *Store) Has(key string) bool {
return s.disk.Has(key)
}
// Erase deletes the key and its value.
func (s *Store) Erase(key string) error {
return s.disk.Erase(key)
}
// Diskv returns the underlying diskv instance.
func (s *Store) Diskv() *diskv.Diskv {
return s.disk
}
{
"schemaVersion": 1,
"goal": "verify github.com/peterbourgon/diskv/v3.Diskv in pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1",
"kind": "HOW",
"packages": [
"pkg:golang/github.com/peterbourgon/diskv/v3@v3.0.1"
],
"symbols": [
"github.com/peterbourgon/diskv/v3.Diskv"
]
}
package main
import (
"fmt"
"os"
"github.com/peterbourgon/diskv/v3"
)
func main() {
dir, err := os.MkdirTemp("", "diskv-contract-*")
if err != nil {
fmt.Fprintf(os.Stderr, "failed to create temp dir: %v\n", err)
os.Exit(1)
}
defer os.RemoveAll(dir)
flatTransform := func(s string) []string {
return []string{}
}
d := diskv.New(diskv.Options{
BasePath: dir,
Transform: flatTransform,
CacheSizeMax: 1024 * 1024,
})
if d == nil {
fmt.Fprintf(os.Stderr, "diskv.New returned nil\n")
os.Exit(1)
}
key := "example-key"
val := "example-val"
if err := d.WriteString(key, val); err != nil {
fmt.Fprintf(os.Stderr, "WriteString failed: %v\n", err)
os.Exit(1)
}
if !d.Has(key) {
fmt.Fprintf(os.Stderr, "Has returned false for existing key\n")
os.Exit(1)
}
got := d.ReadString(key)
if got != val {
fmt.Fprintf(os.Stderr, "ReadString got %q, want %q\n", got, val)
os.Exit(1)
}
raw, err := d.Read(key)
if err != nil {
fmt.Fprintf(os.Stderr, "Read failed: %v\n", err)
os.Exit(1)
}
if string(raw) != val {
fmt.Fprintf(os.Stderr, "Read returned unexpected bytes\n")
os.Exit(1)
}
if err := d.Erase(key); err != nil {
fmt.Fprintf(os.Stderr, "Erase failed: %v\n", err)
os.Exit(1)
}
if d.Has(key) {
fmt.Fprintf(os.Stderr, "Has returned true after Erase\n")
os.Exit(1)
}
fmt.Println("contract passed")
}
오리진 시더
익명