Skip to content

feat(cloudflare): adopt seerrsense, now registered by DCR - #1400

Merged
mashkovd merged 1 commit into
mainfrom
feat/1370-seerrsense-dcr-import
Sep 25, 2026
Merged

mashkovd merged 1 commit into
mainfrom
feat/1370-seerrsense-dcr-import

Conversation

@mashkovd

Copy link
Copy Markdown
Member

Adopts seerrsense into mcp-servers.tf in automatic (DCR) mode. It was moved there live on 2026-09-25.

The move (done against the API, because the provider cannot express it — auth_credentials is write-only, so omitting it never clears an existing manual registration):

  1. PUT {auth_type: "bearer", auth_credentials: "<dummy>"} clears the manual registration: auth_config_summary becomes null.
  2. PUT {auth_type: "oauth", name, description} with no auth_credentials. A PUT with auth_type alone answers 7000 D1_ERROR: near "WHERE". With name and description it succeeds, and the dashboard shows Automatic (recommended).
  3. Authenticate server in the dashboard. Cloudflare registered itself at https://seerrsense.mctl.ai/register, which admits only the two portal callbacks (auth: DCR fallback restricted to the Cloudflare portal callback, with the full scope set for DCR clients seerrsense#74). The owner address signed in and consented.

Result:

  • status: ready, authentication_status: connected.
  • last_successful_sync moved from 2026-09-13 to 2026-09-25 23:13 on its own.
  • The portal mapping survived untouched: 5 tools, all enabled.
  • seerrsense_whoami through the portal returns the owner, connected: true.

In this PR:

Expected plan: 1 to import, 0 to add, 0 to change, 0 to destroy.

Refs #1363, #1370.

🤖 Generated with Claude Code

https://claude.ai/code/session_01T5nLoYSquzMsGsdS64wvry

seerrsense moved from manual OAuth to automatic (DCR) mode on 2026-09-25,
through the API: a bearer flip clears the manual registration, a PUT with
auth_type oauth, name and description and no auth_credentials leaves the
server automatic, and "Authenticate server" lets Cloudflare register at
seerrsense's portal-restricted /register (mctlhq/seerrsense#74). It is ready,
its catalogue synced on its own, and the portal mapping survived.

Adopts it into mcp-servers.tf in automatic mode (no auth_credentials, no
client_secret) with an import block, and adds it to DCR_SERVERS in
portal-auth-credentials-drift.py; without that, its empty blob in state would
abort the nightly scan. The selftest's manual example moves to api.

Refs #1363, #1370.
Copilot AI lite review requested due to automatic review settings September 25, 2026 23:15

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@claude

claude Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

Claude finished @mashkovd's task in 1m 47s —— View job


Review complete ✅

  • Gather context (diff, CLAUDE.md, changed files)
  • Review infrastructure/cloudflare/portal/mcp-servers.tf
  • Review scripts/portal-auth-credentials-drift.py
  • Review infrastructure/cloudflare/portal/README.md
  • Post findings / submit verdict

Reviewed c7642574...84f04ec8 against this repo's CLAUDE.md conventions (Terraform correctness, secrets handling, no hardcoded credentials).

Summary: The new seerrsense resource in mcp-servers.tf (import + resource block) is structurally identical to the existing projects/alice/coolify DCR-mode resources — auth_type = "oauth", no auth_credentials, no client_secret, same ignore_changes lifecycle rationale. DCR_SERVERS in scripts/portal-auth-credentials-drift.py correctly gains seerrsense (needed so its empty auth_credentials blob doesn't raise Undetermined and abort the nightly scan), and the selftest's "non-DCR server with no credentials" fixture moving from seerrsense to api is consistent with api remaining the manual/non-DCR server. No secrets, credentials, or write-only blobs are committed.

Findings: 1 P3 (nit, non-blocking) — inline comment noting that the README section heading (## The sixth upstream, coolify, and what this change does not do) is now slightly stale since the paragraph underneath it documents that seerrsense has moved to DCR.

Note: I could not execute terraform validate or the script's --selftest in this sandbox (Bash tool required approval that wasn't available), so verification was via static reading of the diff and cross-referencing mcp-portal.tf/allowlists/seerrsense.json (both already present and consistent with this change).

Verdict: ✅ Approved — no P1/P2 findings (1 P3).

@github-actions

Copy link
Copy Markdown
Contributor

Antigravity (agy) review — informational

Model: gemini-3.8-flash-medium · commit 84f04ec.

No significant issues found.

for field on `tg`'s model (manual, interim) or `projects`'s (automatic,
final), following mctlhq/mctl-gitops#1363's tasks 1, 2, 5 and 6, and extend
`DCR_SERVERS`/`OWNERS` accordingly once the mode of each is settled.
`seerrsense` moved to automatic (DCR) mode on 2026-09-25 and is adopted in

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P3: This paragraph now sits under the ## The sixth upstream, coolify, and what this change does not do heading (README.md:183), which was written for the coolify PR. It now also documents that seerrsense has moved to DCR — worth a follow-up to retitle the section (e.g. drop "what this change does not do") so it doesn't read as still-pending work.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Acknowledged. The section will be retitled in the api/tg DCR follow-up, which rewrites the same paragraph again.

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No P1/P2 findings (1 P3). Good to merge.

@mashkovd
mashkovd merged commit 8e6f98b into main Sep 25, 2026
26 checks passed
@mashkovd
mashkovd deleted the feat/1370-seerrsense-dcr-import branch September 25, 2026 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants