Step 1: Replace C++ prototype with Go project scaffolding.

Remove all old C++ source files, proto definitions, CMake build,
clang configs, IDE files, and Trunk linter config. Initialize Go
module (github.com/kisom/sgard) with cobra and yaml.v3 deps.
Set up cobra root command with --repo persistent flag.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-23 21:19:37 -07:00
parent b678ce572a
commit 6cadda01a8
23 changed files with 71 additions and 420 deletions

View File

@@ -1,12 +0,0 @@
syntax = 'proto3';
package sgardpb;
import "google/protobuf/timestamp.proto";
// Header defines common metadata for messages in sgard.
message Header
{
uint32 version = 1;
google.protobuf.Timestamp created = 2;
google.protobuf.Timestamp updated = 3;
}

View File

@@ -1,12 +0,0 @@
syntax = 'proto3';
package sgardpb;
import 'header.proto';
import 'path.proto';
message HomeDir
{
Header header = 1;
map<string, Source> files = 5;
};

View File

@@ -1,33 +0,0 @@
syntax = 'proto3';
package sgardpb;
import 'header.proto';
import "google/protobuf/timestamp.proto";
enum PathType {
PATHTYPE_UNSPECIFIED = 0;
PATHTYPE_FILE = 1;
PATHTYPE_DIRECTORY = 2;
PATHTYPE_LINK = 3;
};
message FilePath
{
Header header = 1;
string source_path = 2;
string dest_path = 3;
// todo: add mode, action (e.g. copy vs link)
};
message Source
{
Header header = 1;
PathType path_type = 2;
oneof path
{
FilePath file = 5;
};
};