// Package id üretir: ön ekli, rastgele, URL-safe kimlikler (ör. "conv_9f2a...").
package id

import (
	"crypto/rand"
	"encoding/hex"
)

// New "prefix_<24 hex>" biçiminde yeni bir kimlik döndürür.
func New(prefix string) string {
	var b [12]byte
	if _, err := rand.Read(b[:]); err != nil {
		// crypto/rand pratikte hata vermez; verirse süreç güvenli devam edemez.
		panic("id: crypto/rand failed: " + err.Error())
	}
	return prefix + "_" + hex.EncodeToString(b[:])
}
