* Rewrite .golangci.yaml to v2 schema: linters-settings -> linters.settings, issues.exclude-rules -> issues.exclusions.rules, issues.exclude-dirs -> issues.exclusions.paths * Drop deprecated revive exported/package-comments rules: personal project, not a public library; godoc completeness is not a CI req * Add //nolint:gosec G101 on PassphraseEnv default in config.go: environment variable name is not a credential value * Add //nolint:gosec G101 on EventPGCredUpdated in model.go: audit event type string, not a credential Security: no logic changes. gosec G101 suppressions are false positives confirmed by code inspection: neither constant holds a credential value.
33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
The project notes are in PROJECT.md.
|
|
|
|
Before starting the project, read the project description and develop a
|
|
system architecture document (ARCHITECTURE.md). It should describe the
|
|
technical design of the system. Then, PROJECT_PLAN.md should be written
|
|
that describes how to build this system in discrete steps.
|
|
|
|
Commit these files to Git after human review. For this project, all git
|
|
commits should have a single first line, no more than 55 characters,
|
|
that succinctly describes an overview of the changes. As necessary, the
|
|
body of the commit message should contain bullets describing the work
|
|
that was done.
|
|
|
|
Then, create PROGRESS.md. This should be initialized with the first
|
|
steps for the project.
|
|
|
|
The development process for this should generally be:
|
|
|
|
1. Determine the current state of the project. Track the progress in
|
|
PROGRESS.md, explicitly stating what was done and next steps.
|
|
2. Develop reasonable, discrete next steps to move forward with
|
|
actionable acceptance criteria.
|
|
3. Complete the next steps.
|
|
+ You should adversarially check whether any outputs are correct.
|
|
+ All code units should be thoroughly unit tested.
|
|
+ All subsystems should be thoroughly integration tested.
|
|
+ Where appropriate, end-to-end tests to validate the system should
|
|
be developed.
|
|
+ All code changes must pass golangci-lint checks.
|
|
4. After each phase, checkpoint your work, committing it to git.
|
|
|
|
Repeat this cycle until the system is in the desired end state.
|