Repository navigation
docs: clarify product goals and M3 showcase; fix CI regressions - #10
Merged
Merged
Conversation
Reviewer's GuideThis documentation-focused PR clarifies GateHouse’s intended small-deployment product, maps each milestone to a concrete evidence-backed showcase, adds a reproducible M3 walkthrough with committed examples, and introduces explicitly pending benchmark contracts and plans while documenting the decision to defer benchmark execution and resume M4 work. Sequence diagram for M3 dynamic configuration publicationsequenceDiagram
actor Operator
participant ControlPlane
participant PostgreSQL
participant DataPlane
participant Upstream
Operator->>ControlPlane: PublishConfig
ControlPlane->>ControlPlane: Validate configuration
ControlPlane->>PostgreSQL: Store revision
PostgreSQL-->>ControlPlane: Revision committed
ControlPlane-->>DataPlane: Config stream update
DataPlane->>DataPlane: Validate and compile snapshot
DataPlane->>DataPlane: Atomic activation
DataPlane-->>ControlPlane: ACK revision
Operator->>DataPlane: HTTP request
DataPlane->>Upstream: Forward request
Upstream-->>DataPlane: Response
DataPlane-->>Operator: Response
Sequence diagram for M3 rejection, rollback, and control-plane recoverysequenceDiagram
actor Operator
participant ControlPlane
participant PostgreSQL
participant DataPlane
Operator->>ControlPlane: PublishConfig
ControlPlane->>ControlPlane: Validate configuration
ControlPlane-->>Operator: InvalidArgument
DataPlane-->>ControlPlane: Active revision unchanged
Operator->>ControlPlane: Rollback
ControlPlane->>PostgreSQL: Store rollback revision
PostgreSQL-->>ControlPlane: Revision committed
ControlPlane-->>DataPlane: Config stream update
DataPlane->>DataPlane: Atomic activation
DataPlane-->>ControlPlane: ACK revision
Operator->>ControlPlane: Stop management
DataPlane->>DataPlane: Retain last-known-good snapshot
Operator->>DataPlane: HTTP request
DataPlane-->>Operator: Traffic continues
Operator->>ControlPlane: Restart management
DataPlane-->>ControlPlane: Reconnect and report status
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
GateHouse's README and architecture docs now describe the intended small-deployment workload, distinguish implemented capabilities from future gates, and provide a reproducible M3 walkthrough. The walkthrough demonstrates blue-to-green publication, invalid/stale rejection, revision history and rollback, ACK status, and traffic continuity while management is down. Benchmark execution is deferred under D052; performance targets remain unmeasured.
The first branch push exposed two CI defects. Compatibility checks now use the fetched default branch when GitHub supplies an all-zero previous head, while preserving PR-target and existing-push baselines and rejecting missing refs. The restart integration test now waits for server-persisted boot/build/revision/hash before killing management, with a deterministic delayed-ACK regression. No production Go behavior or protobuf schema changes.
Validation:
make verifypassed with disposable PostgreSQL 18.6, including full shuffled tests, race, vet, Staticcheck, Buf contracts/fixtures/generated checks, module verification, and govulncheck..empryo/is excluded.Hosted CI passed all six jobs (contracts, unit, integration, race, static, security) for exact correction head
cdc5e63fd3369bd48d35b00707739eaef394cdf8in both the push run and pull-request run. This resolves the hosted correction gate left pending in the pre-publication evidence. Local PostgreSQL is 18.6; hosted integration uses 16.