Sync docs: ARCHITECTURE, PROJECT, PROJECT_PLAN

- ARCHITECTURE.md §12: add mciasdb, mciasgrpcctl, internal/grpcserver,
  proto/, and gen/ to the directory structure diagram
- ARCHITECTURE.md §17: replace buf generate references with protoc;
  the implementation uses protoc + protoc-gen-go + protoc-gen-go-grpc
  invoked via go generate ./... (proto/generate.go)
- PROJECT_PLAN.md §7.1: replace buf.yaml/buf.gen.yaml acceptance
  criteria with the protoc-based go:generate approach actually used
- PROJECT_PLAN.md §7.6: clarify that gen/ is committed to the repo
  (not gitignored); only the binary /mciasgrpcctl is excluded
- PROJECT.md: replace scrypt with Argon2id (the actual algorithm);
  remove the redundant Argon2 suggestion line
This commit is contained in:
2026-03-11 14:44:08 -07:00
parent 59d51a1d38
commit 7c79d00514
3 changed files with 26 additions and 14 deletions

View File

@@ -501,19 +501,28 @@ passphrase_env = "MCIAS_MASTER_PASSPHRASE"
```
mcias/
├── cmd/
│ ├── mciassrv/ # server binary entrypoint
│ ├── mciassrv/ # server binary entrypoint (REST + gRPC dual-stack)
│ │ └── main.go
── mciasctl/ # admin CLI entrypoint
── mciasctl/ # REST admin CLI
│ │ └── main.go
│ ├── mciasdb/ # direct SQLite maintenance tool (Phase 6)
│ │ └── main.go
│ └── mciasgrpcctl/ # gRPC admin CLI companion (Phase 7)
│ └── main.go
├── internal/
│ ├── auth/ # login flow, TOTP verification, account lockout
│ ├── config/ # config file parsing and validation
│ ├── crypto/ # key management, AES-GCM helpers, master key derivation
│ ├── db/ # SQLite access layer (schema, migrations, queries)
│ ├── grpcserver/ # gRPC handler implementations (Phase 7)
│ ├── middleware/ # HTTP middleware (auth extraction, logging, rate-limit)
│ ├── model/ # shared data types (Account, Token, Role, etc.)
│ ├── server/ # HTTP handlers, router setup
│ └── token/ # JWT issuance, validation, revocation
├── proto/
│ └── mcias/v1/ # Protobuf service definitions (Phase 7)
├── gen/
│ └── mcias/v1/ # Generated Go stubs from protoc (committed; Phase 7)
└── go.mod
```
@@ -719,11 +728,12 @@ proto/
gen/
└── mcias/
└── v1/ # Generated Go stubs (buf generate output)
└── v1/ # Generated Go stubs (protoc output)
```
Generated code is committed to the repository under `gen/`. `buf generate`
is idempotent and is re-run via `go generate ./...`.
Generated code is committed to the repository under `gen/`. The generator
is invoked via `go generate ./...`, which runs the `protoc` command declared
in `proto/generate.go` using `protoc-gen-go` and `protoc-gen-go-grpc`.
### Service Definitions (summary)