Skip to content

docs: Add ADR 0002 for API enhancement and drift detection#6590

Merged
chenrui333 merged 12 commits into
runatlantis:mainfrom
jamengual:docs/adr-0002-drift-detection
Jun 27, 2026
Merged

docs: Add ADR 0002 for API enhancement and drift detection#6590
chenrui333 merged 12 commits into
runatlantis:mainfrom
jamengual:docs/adr-0002-drift-detection

Conversation

@jamengual

Copy link
Copy Markdown
Contributor

Summary

Adds the Architecture Decision Record ADR 0002: API Enhancement and Drift Detection, split out of #6360 so the design can be reviewed and merged independently from the implementation.

This is docs-only — no code changes. The ADR documents the rationale behind the modernized API response framework and the drift detection/remediation endpoints implemented in #6360.

Test plan

  • Docs-only change (no build/test impact)
  • DCO sign-off

Splits the architecture decision record out of runatlantis#6360 so it can be
reviewed and merged independently from the implementation.

Signed-off-by: PePe Amengual <2208324+jamengual@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 26, 2026 21:52
@dosubot dosubot Bot added the docs Documentation label Jun 26, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new Architecture Decision Record (ADR 0002) documenting the design rationale for planned Atlantis API response modernization and drift detection/remediation endpoints (split out for independent review from the implementation work referenced in #6360).

Changes:

  • Introduces ADR 0002 describing phased API enhancements (error serialization, non-PR workflows) and drift detection/remediation endpoint design.
  • Captures historical context from prior PR attempts and proposes an implementation plan and consequences analysis.

Comment thread docs/adr/0002-api-enhancement-drift-detection.md
jamengual added a commit to jamengual/atlantis that referenced this pull request Jun 26, 2026
The drift detection ADR is moved to a separate PR (runatlantis#6590) so it can be
reviewed and merged independently from this implementation.

Signed-off-by: PePe Amengual <2208324+jamengual@users.noreply.github.com>
jamengual and others added 6 commits June 26, 2026 15:24
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: PePe Amengual <2208324+jamengual@users.noreply.github.com>
Preserve full plan drift stats by requiring reuse of the existing plan stats parser, and expand the VCS remediation plan to cover every client implementation plus generated mocks.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Make the drift parsing and VCS remediation examples compile as written, and key drift status storage by path and workspace so unnamed Atlantis projects do not collide.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Make drift status storage the required data source for the status endpoint, and require remediation to create a real branch diff before opening a PR or MR.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Require VCS repository identity in drift status queries and storage keys, and update the provider implementation snippets to match the current client types and GitLab label options.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Use the canonical VCS type in drift status examples, update the GitHub branch creation snippet for go-github v88, and document GitLab draft MR title handling.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Keep drift status models in one package, remove derived repo IDs from the lookup key, and document how non-PR API applies seed dependency status.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
@chenrui333

Copy link
Copy Markdown
Member

Require API token authentication for drift endpoints, make drift status lookups ref-scoped, and document API apply dependency status updates for non-PR runs.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
Document force-unlock IDs as query/body/catch-all values so slash-containing Atlantis lock keys are preserved when calling Locker.Unlock.

Assisted-by: OpenAI <noreply@openai.com>
Signed-off-by: Rui Chen <rui@chenrui.dev>
@dosubot dosubot Bot added the lgtm This PR has been approved by a maintainer label Jun 27, 2026
@chenrui333 chenrui333 merged commit 5cbe126 into runatlantis:main Jun 27, 2026
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Documentation lgtm This PR has been approved by a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants