26 Commits
Author SHA1 Message Date
sneak 538eca9f5d Re-vendor .golangci.yml and REPO_POLICIES.md from the canonical source
The canonical config is already in the v2 layout and now enables
depguard with the test-support rule and a gomodguard_v2 block list;
this copy is byte-identical to it plus exhaustruct_v5 in the disable
list, which is what the pending upstream change adds. REPO_POLICIES.md
is refreshed from 2026-07-06 to 2026-09-08.
2026-11-01 16:31:32 -08:00
sneak 09ec70009d Verify .golangci.yml against the linter schema in make lint
golangci-lint ignores keys it does not know and silently runs with
defaults, which is how the v1-era settings went unapplied. make lint now
runs golangci-lint config verify before golangci-lint run, in both the
Docker and the in-image paths.
2026-11-01 16:31:30 -08:00
sneak e1b385f847 Satisfy the now-effective lll limit and the modernize linter 2026-10-31 13:22:44 -07:00
sneak 897dc9aced Update golangci-lint to v2.15.0 and fix the linter config
Convert .golangci.yml to the v2 layout: linters-settings and
issues.exclude-use-default were rejected by the v2 schema, so the lll,
funlen, cyclop, and dupl settings were never applied. Disable
exhaustruct_v5 (the newer major version of the already-disabled
exhaustruct) and the deprecated gomodguard. Pin the golangci-lint image
at v2.15.0 in the Makefile and Dockerfile.
2026-10-31 13:22:43 -07:00
sneak ad1d51a9f9 Drop the BIP39 passphrase from cbk
The seed is always computed with an empty passphrase; Params is just
the mnemonic and the BIP85 index.
2026-10-31 11:41:11 -07:00
sneak fe6dbba428 Derive cbk keys with BIP85 instead of an ad hoc HKDF label
The private key is now the BIP85 HEX application output for 32 bytes at
m/83696968'/128169'/32'/{index}' from the BIP32 master key of the BIP39
seed, via sneak.berlin/go/secret/pkg/bip85, so any BIP85 tool reproduces
it and one mnemonic backs many keypairs through Params.Index. Tests
check the mnemonic-to-master step and the HEX application against the
BIP85 specification vectors and pin the resulting keypair.
2026-10-31 11:38:02 -07:00
sneak ea6faaecff Narrow pkg/cbk to keypair derivation
Remove KeyFromHex, Seal, and Open with their errors and constants. The
library only derives crypto_box keypairs from BIP39 mnemonics; callers
use golang.org/x/crypto/nacl/box directly for everything else.
2026-10-31 11:27:09 -07:00
sneak 5932cc12ee Remove cbk and mnemonic commands from sutil
sutil holds only the utilities wanted on every machine; it is not a
command-line front end for the packages in pkg/. cbk and bip39wordlist
remain libraries with no CLI surface. The README states the boundary.
2026-10-31 10:16:10 -07:00
sneak 9def7ba586 Document config loading, cgo policy, and tagging policy in README 2026-10-31 10:11:49 -07:00
sneak 4d45aa4ca3 Restore config loading, keep exported Version, keep cgo off
Bring back the in-progress viper and go-homedir configuration loading
from the original root command as a persistent pre-run on the root
command, with a --config flag and a config line in sutil info. Restore
the exported main.Version with a nolint directive instead of renaming
it. Export CGO_ENABLED=0 from the Makefile, drop -race from make test,
and remove the C toolchain from the Docker builder stage.
2026-10-31 10:11:47 -07:00
sneak f53b6aad42 Add sutil CLI in cmd/sutil with internal/cli command tree 2026-10-31 10:03:06 -07:00
sneak c9ce5ff442 Add internal randstream and pwgen packages 2026-10-31 10:03:06 -07:00
sneak b7028fd7e3 Implement pkg/cbk: crypto_box keypairs from BIP39 mnemonics 2026-10-31 10:03:06 -07:00
sneak 02386a6ff1 Rename module to sneak.berlin/go/x and rework bip39wordlist
Move to Go 1.26, embed the wordlist from english.txt, add
ValidateWordlist, NormalizeWordlist, and GenerateMnemonic with tests,
and remove the old root-level CLI that used the previous module path.
2026-10-31 10:03:06 -07:00
sneak 4d27e30ea8 Add hash-pinned Dockerfile and Gitea workflow, drop Drone 2026-10-31 10:03:06 -07:00
sneak 157e5ef124 Add Makefile with test, lint, fmt, check, docker, and hooks targets 2026-10-31 10:03:06 -07:00
sneak 7be0fa7060 Add canonical .golangci.yml 2026-10-31 10:03:06 -07:00
sneak 386155a480 Add editor, ignore, and prettier configuration 2026-10-31 10:03:06 -07:00
sneak 3510f8a144 Add WTFPL LICENSE and REPO_POLICIES.md 2026-10-31 10:03:06 -07:00
sneak 6f9dcc8f93 Rewrite README with required sections and package docs 2026-10-31 10:03:06 -07:00
sneak 5a5577c7a5 latest
continuous-integration/drone/push Build is failing
2020-10-13 11:45:57 -07:00
sneak 52aedf636f don't run golangci-lint
continuous-integration/drone/push Build is passing
2020-10-12 14:36:02 -07:00
sneak 02a126ee54 make tests recursive, add golangci-lint
continuous-integration/drone/push Build is failing
2020-10-12 14:35:07 -07:00
sneak de93378e4c add README
continuous-integration/drone/push Build is passing
2020-10-12 14:33:23 -07:00
sneak 841b488d7c reorganizing 2020-10-12 14:23:54 -07:00
sneak 3338f9d53d initial 2020-10-11 07:50:18 -07:00