28 lines
991 B
Markdown
28 lines
991 B
Markdown
# Project Guidelines
|
|
|
|
MCIAS is the metacircular identity and access system, providing identity and
|
|
authentication across the metacircular projects.
|
|
|
|
## Structure
|
|
|
|
+ The system should be runnable through a cobra CLI tool, with
|
|
subcommands implemented as wrappers around packages.
|
|
+ The REST API code should be under the `api` directory.
|
|
+ The system should be backed by a single SQLite database whose schema
|
|
is stored in `schema.sql`.
|
|
|
|
## Writing code
|
|
|
|
+ Junie should write and run tests to validate correctness.
|
|
+ The tests should be runnable with just `go test` (with
|
|
any approporiate arguments).
|
|
+ Junie should validate the build and ensure that the code is
|
|
properly linted. Junie should use `golangci-lint` for this.
|
|
+ Junie should elide trivial comments, only write comments where it
|
|
is beneficial to provide exposition on the code, and ensure any
|
|
comments are complete English sentences.
|
|
|
|
## Notes
|
|
|
|
This is a security system, so care should be taken towards
|
|
correctness. |