mirror of
https://github.com/Sea-Haven-Industries/engineering-handbook.git
synced 2026-09-30 18:33:14 +00:00
Adds three handbook pages covering conventions that were previously scattered across feedback memories or rederived from scratch each time: - bedrock.md captures the cross-region inference profile requirement for Claude 4.x Bedrock Agents and the alias-version pinning gotcha, plus the IAM resource pattern and the KB Docker requirement. - dev-environment.md documents the workstation directory layout, pyenv/Node conventions, the macOS launchd/TCC sandbox gotcha, and cleanup cadence. - lambda-template.md provides a minimal SAM scaffold that follows the Lambda defaults already in aws-infrastructure.md (Python 3.12, arm64, explicit 60-day log retention, scoped Secrets Manager access, module-level secret cache). Also extends two existing pages: - sam-project-layout.md gains a Lambda Layers section with the BuildMethod nesting pattern that caused a ~22-hour production outage when violated. - naming-conventions.md adds a Legacy Stacks note acknowledging that pre-convention PascalCase stacks (SeaHavenDoorUnlockStack, WorkorderIngestStack) stay as-is rather than risk stack replacement.
30 lines
1.8 KiB
Markdown
30 lines
1.8 KiB
Markdown
# Engineering Handbook
|
|
|
|
Engineering conventions and best practices for Sea Haven Industries.
|
|
|
|
## Contents
|
|
|
|
- [Naming Conventions](naming-conventions.md) -- kebab-case everywhere, no exceptions
|
|
- [Development Environment](dev-environment.md) -- workstation directory layout, pyenv, Node, launchd/TCC
|
|
- [Git Workflow](git-workflow.md) -- feature branches, incremental commits, deploy-then-merge
|
|
- [Commit Messages](commit-messages.md) -- imperative mood, 50/72 rule, explain "why"
|
|
- [Pull Requests](pull-requests.md) -- scope, title, description format, merge strategy
|
|
- [Code Review](code-review.md) -- what to look for, giving feedback, turnaround expectations
|
|
- [GitHub Standards](github-standards.md) -- branch defaults, repo hygiene, Dependabot
|
|
- [AWS Infrastructure](aws-infrastructure.md) -- SAM vs CDK, Lambda defaults, CloudFormation
|
|
- [SAM Project Layout](sam-project-layout.md) -- standard directory structure for serverless projects
|
|
- [Lambda Starter Template](lambda-template.md) -- minimal SAM scaffold for a new Python Lambda
|
|
- [Secrets and Configuration](secrets-and-config.md) -- Secrets Manager vs SSM Parameter Store
|
|
- [CI/CD Pipelines](cicd.md) -- every deployable repo gets a pipeline, no manual deploys
|
|
- [Bedrock](bedrock.md) -- cross-region inference profiles, alias pinning, KB Docker requirement
|
|
- [Git Hooks](hooks/) -- recommended pre-push and pre-commit hooks
|
|
- [Scripts](scripts/) -- repo provisioning, automation tooling
|
|
- [CDK Constructs](constructs/) -- shared VPN EC2 instance construct and other reusable patterns
|
|
|
|
## Contributing
|
|
|
|
See [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
|
|
## License
|
|
|
|
This work is licensed under [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/). The commit messages section adapts content from [commit-messages-guide](https://github.com/RomuloOliveira/commit-messages-guide) by Romulo Oliveira, also licensed under CC-BY-4.0.
|