Commit Graph

  • a73a409fe4 Refactor unlockers command structure and add quiet flag to list command main sneak 2025-07-22 16:04:44 +0200
  • 70d19d09d0 latest sneak 2025-07-22 13:35:19 +0200
  • 40ea47b2a1 Add missing changes from feature branch sneak 2025-07-22 12:51:02 +0200
  • 7ed3e287ea Merge branch 'add-list-remove-commands' sneak 2025-07-22 12:47:20 +0200
  • 8e3530a510 Fix use-after-free crash in readSecurePassphrase sneak 2025-07-22 12:46:16 +0200
  • e5d7407c79 Fix mnemonic input to not echo to screen sneak 2025-07-22 12:39:32 +0200
  • 377b51f2db Add Docker support for building and running the CLI tool sneak 2025-07-21 22:13:19 +0200
  • a09fa89f30 Fix cross-platform build issues and security vulnerabilities sneak 2025-07-21 22:05:23 +0200
  • 7af1e6efa8 Improve PGP unlocker ergonomics sneak 2025-07-21 18:57:58 +0200
  • 09b3a1fcdc Remove internal/macse package and fix all linter issues sneak 2025-07-21 17:48:47 +0200
  • 816f53f819 Replace shell-based keychain implementation with keybase/go-keychain library sneak 2025-07-21 15:58:41 +0200
  • bba1fb21e6 docs sneak 2025-07-15 19:01:29 +0200
  • d4f557631b prototype secure enclave interface sneak 2025-07-15 09:37:02 +0200
  • e53161188c Fix remaining memory security issues sneak 2025-07-15 09:08:51 +0200
  • ff17b9b107 Update TODO.md - DecryptWithPassphrase already fixed sneak 2025-07-15 09:04:59 +0200
  • 63cc06b93c Fix DecryptWithIdentity to return LockedBuffer sneak 2025-07-15 09:04:34 +0200
  • 8ec3fc877d Fix GetValue methods to return LockedBuffer internally sneak 2025-07-15 08:59:23 +0200
  • 819902f385 Fix gpgEncryptDefault to accept LockedBuffer for data parameter sneak 2025-07-15 08:46:33 +0200
  • 292564c6e7 Fix storeInKeychain to accept LockedBuffer for data parameter sneak 2025-07-15 08:44:09 +0200
  • eef2332823 Fix EncryptWithPassphrase to accept LockedBuffer for data parameter sneak 2025-07-15 08:42:46 +0200
  • e82d428b05 Remove deprecated Secret.Save function sneak 2025-07-15 08:40:35 +0200
  • 9cbe055791 fmt sneak 2025-07-15 08:33:16 +0200
  • 7596049828 uses protected memory buffers now for all secrets in ram fix-memory-security sneak 2025-07-15 08:32:33 +0200
  • d3ca006886 Merge branch 'main' into fix-memory-security sneak 2025-07-15 07:36:13 +0200
  • f91281e991 Merge branch 'fix-test-json-fields' sneak 2025-07-15 07:35:58 +0200
  • 7c5e78db17 fix: update JSON fields from snake_case to camelCase and make tests quiet by default sneak 2025-07-15 07:35:48 +0200
  • 8e374b3d24 add test binaries to gitignore sneak 2025-07-15 07:24:15 +0200
  • c9774e89e0 WIP: refactor to use memguard for secure memory handling sneak 2025-07-15 07:22:41 +0200
  • f9938135c6 fix: resolve all remaining linter issues (staticcheck, tagliatelle, lll) sneak 2025-07-15 06:33:25 +0200
  • 386a27c0b6 fix: resolve all revive linter issues sneak 2025-07-15 06:06:48 +0200
  • 080a3dc253 fix: resolve all nlreturn linter errors sneak 2025-07-15 06:00:32 +0200
  • 811ddee3b7 fix: resolve all nestif linter errors sneak 2025-07-15 05:47:16 +0200
  • 4e242c3491 go 1.24 sneak 2025-07-09 16:09:59 -0700
  • 54fce0f187 fix: resolve mnd and nestif linter errors sneak 2025-07-09 12:54:59 -0700
  • 93a32217e0 fix: resolve mnd (magic number) linter errors in agehd and bip85 packages sneak 2025-07-09 12:52:46 -0700
  • 95ba80f618 fix: resolve gochecknoglobals, gosec, lll, and mnd linter errors sneak 2025-07-09 12:49:59 -0700
  • d710323bd0 fix: add nolint comments for necessary global variables in internal/secret sneak 2025-07-09 12:47:51 -0700
  • 38b450cbcf fix: resolve mnd and nestif linter errors sneak 2025-07-09 07:05:07 -0700
  • 6fe49344e2 fix: resolve errcheck, gosec, and mnd linter errors sneak 2025-07-09 06:59:01 -0700
  • 6e01ae6002 chore: exclude errcheck linter from test files sneak 2025-07-09 06:18:52 -0700
  • 11e43542cf fix: handle error returns from os.Unsetenv and file.Close (errcheck) sneak 2025-07-09 06:16:13 -0700
  • 2256a37b72 Update golangci-lint configuration to v2.2.1 format sneak 2025-07-09 06:11:48 -0700
  • 533133486c fix: remove unnecessary type conversions (unconvert) sneak 2025-06-20 12:52:19 -0700
  • eb19fa4b97 fix: replace unused parameters with underscores (revive) sneak 2025-06-20 12:50:16 -0700
  • 5ed850196b fix: convert ALL_CAPS constants to CamelCase (revive) sneak 2025-06-20 12:49:01 -0700
  • be1f323a09 fix: remove unnecessary zero value initialization (revive) sneak 2025-06-20 12:47:58 -0700
  • bdcddadf90 fix: resolve exported type stuttering issues (revive) sneak 2025-06-20 12:47:06 -0700
  • 4062242063 fix: break long error messages to meet line length limits sneak 2025-06-20 09:51:26 -0700
  • abcc7b6c3a fix: resolve gosec integer overflow and unconvert issues sneak 2025-06-20 09:50:00 -0700
  • 9e35bf21a3 fix: more nlreturn and testifylint issues sneak 2025-06-20 09:40:17 -0700
  • 2a1e0337fd fix: add blank lines before return statements (nlreturn) sneak 2025-06-20 09:37:56 -0700
  • dcc15008cd add instructions to keep going sneak 2025-06-20 09:37:01 -0700
  • dd2e95f8af fix: replace magic file permissions and add crypto constant comments sneak 2025-06-20 09:23:50 -0700
  • c450e1c13d fix: replace remaining os.Setenv with t.Setenv in tests sneak 2025-06-20 09:22:01 -0700
  • c6935d8f0f add rules for claude sneak 2025-06-20 09:20:52 -0700
  • 5d973f76ec fix: break long lines to 77 characters in non-test files sneak 2025-06-20 09:17:45 -0700
  • fd125c5fe1 fix: disable line length checks for test files with test vectors sneak 2025-06-20 09:16:40 -0700
  • 08a42b16dd fix: replace os.Setenv with t.Setenv in tests (usetesting) sneak 2025-06-20 09:13:01 -0700
  • b736789ecb fix: adjust line lengths to 77 characters sneak 2025-06-20 09:10:28 -0700
  • f569bc55ea fix: convert for loops to Go 1.22+ integer range syntax (intrange) sneak 2025-06-20 09:05:49 -0700
  • 9231409c5c fix: remove unnecessary string conversions (unconvert) sneak 2025-06-20 09:02:56 -0700
  • 0d140b4636 fix: correct file permissions in integration test (gosec G306) sneak 2025-06-20 09:02:01 -0700
  • 9e74b34b5d Fix remaining usetesting errors in vault integration test sneak 2025-06-20 08:58:29 -0700
  • 47afe117f4 Fix unused parameter errors in agehd and bip85 tests sneak 2025-06-20 08:55:42 -0700
  • 4fe49ca8d0 Fix unused parameter errors in secret test mock implementations sneak 2025-06-20 08:52:19 -0700
  • 8ca7796d04 Fix unused parameter errors in debug.go slog.Handler interface sneak 2025-06-20 08:51:13 -0700
  • dcab84249f Fix unused parameter errors in CLI integration tests sneak 2025-06-20 08:50:34 -0700
  • e5b18202f3 Fix revive package stuttering errors sneak 2025-06-20 08:47:32 -0700
  • efc9456948 Fix G115 integer overflow warnings in agehd tests sneak 2025-06-20 08:27:41 -0700
  • c52430554a Fix usetesting errors in CLI integration test sneak 2025-06-20 08:24:54 -0700
  • fd7ab06fb1 Modify test target to re-run in verbose mode only on failure sneak 2025-06-20 08:12:06 -0700
  • 434b73d834 Fix intrange and G101 linting issues sneak 2025-06-20 08:08:01 -0700
  • 985d79d3c0 fix: resolve critical security vulnerabilities in debug logging and command execution sneak 2025-06-20 07:50:26 -0700
  • 004dce5472 passes tests now! sneak 2025-06-20 07:24:48 -0700
  • 0b31fba663 latest from ai, it broke the tests sneak 2025-06-20 05:40:20 -0700
  • 6958b2a6e2 ignore *.log files sneak 2025-06-11 15:29:20 -0700
  • fd4194503c removed file erroneously committed sneak 2025-06-11 15:29:02 -0700
  • a1800a8e88 removed binary erroneously committed by LLM :/ sneak 2025-06-11 15:28:14 -0700
  • 03e0ee2f95 refactor: remove confusing dual ID method pattern from Unlocker interface - Removed redundant ID() method from Unlocker interface - Removed ID field from UnlockerMetadata struct - Modified GetID() to generate IDs dynamically based on unlocker type and data - Updated vault package to create unlocker instances when searching by ID - Fixed all tests and CLI code to remove ID field references - IDs are now consistently generated from unlocker data, preventing redundancy sneak 2025-06-11 15:21:20 -0700
  • 9adf0c0803 refactor: fix redundant metadata fields across the codebase - Removed VaultMetadata.Name (redundant with directory structure) - Removed SecretMetadata.Name (redundant with Secret.Name field) - Removed AgePublicKey and AgeRecipient from PGPUnlockerMetadata - Removed AgePublicKey from KeychainUnlockerMetadata - Changed PGP and Keychain unlockers to store recipient in pub.txt instead of pub.age - Fixed all tests to reflect these changes - Follows DRY principle and prevents data inconsistency sneak 2025-06-09 17:44:10 -0700
  • e9d03987f9 refactor: remove redundant SecretName and Version fields from VersionMetadata - Removed SecretName and Version fields that were redundant with directory structure and parent SecretVersion struct - Updated tests to remove references to deleted fields - Follows DRY principle and prevents potential data inconsistency sneak 2025-06-09 17:26:57 -0700
  • b0e3cdd3d0 fix: Restore fmt target to Makefile sneak 2025-06-09 17:22:44 -0700
  • 2e3fc475cf fix: Use vault metadata derivation index for environment mnemonic - Fixed bug where GetValue() used hardcoded index 0 instead of vault metadata - Added test31 to verify environment mnemonic respects vault derivation index - Rewrote test19DisasterRecovery to actually test manual recovery process - Removed all test skip statements as requested sneak 2025-06-09 17:21:02 -0700
  • 1f89fce21b latest sneak 2025-06-09 05:59:26 -0700
  • 512b742c46 latest agent instructions sneak 2025-06-09 05:59:17 -0700
  • 02be4b2a55 Fix integration tests: correct vault derivation index and debug test failures sneak 2025-06-09 04:54:45 -0700
  • e036d280c0 tests pass now, not sure if they are any good sneak 2025-06-08 22:29:55 -0700
  • ac81023ea0 add LLM instructions sneak 2025-06-08 22:19:13 -0700
  • d76a4cbf4d fix tests sneak 2025-06-08 22:13:22 -0700
  • fbda2d91af add secret versioning support sneak 2025-06-08 22:07:19 -0700
  • f59ee4d2d6 'unlock keys' renamed to 'unlockers' sneak 2025-05-30 07:29:02 -0700
  • 0bf8e71b52 fix: resolve ineffectual assignment lint error in pgpunlock_test.go sneak 2025-05-29 16:36:10 -0700
  • 34d6870e6a feat: add derivation index to vault metadata for unique keys - Add VaultMetadata fields: DerivationIndex, LongTermKeyHash, MnemonicHash - Implement GetNextDerivationIndex() to track and increment indices for same mnemonics - Update init and import commands to use proper derivation indices - Add ComputeDoubleSHA256() for hash calculations - Save vault metadata on creation with all derivation information - Add comprehensive tests for metadata functionality. This ensures multiple vaults using the same mnemonic will derive different long-term keys by using incremented derivation indices. The mnemonic is double SHA256 hashed and stored to track which vaults share mnemonics. Fixes TODO item #5 sneak 2025-05-29 16:23:29 -0700
  • 1a1b11c5a3 Add comprehensive PGP unlock key testing with non-interactive GPG support sneak 2025-05-29 15:05:58 -0700
  • 85d7ef21eb Add comprehensive test coverage and fix empty branch issue sneak 2025-05-29 14:18:39 -0700
  • a4d7225036 Standardize file permissions using constants and fix parameter ordering inconsistencies sneak 2025-05-29 13:13:44 -0700
  • 8dc2e9d748 Remove duplicated wrapper crypto functions and use exported implementations directly sneak 2025-05-29 13:08:00 -0700
  • 8cc15fde3d latest sneak 2025-05-29 13:02:39 -0700
  • ddb395901b Refactor vault functionality to dedicated package, fix import cycles with interface pattern, fix tests sneak 2025-05-29 12:48:36 -0700
  • c33385be6c Clean up integration test script: remove redundant tests and fix misleading output - Remove redundant manual input tests that were actually using environment variables - Update all test output to honestly reflect automated testing with env vars - Consolidate similar test cases to reduce duplication - Fix cross-vault operations test by properly recreating work vault after reset_state - Import mnemonic into work vault so it can store secrets - Update test descriptions to be accurate about automation vs manual input - All tests now pass successfully with proper environment variable usage sneak 2025-05-29 11:04:31 -0700