Repository navigation
feat: dns:delete, dns:update, and tunnel:get commands - #8
Merged
Merged
Conversation
jordanpartridge
force-pushed
the
cursor/dns-tunnel-crud-6412
branch
from
September 10, 2026 05:52
db7a575 to
a230228
Compare
There was a problem hiding this comment.
Observations only (no blocking issues).
- Three new commands + supporting Saloon request/resource + feature tests + README.
- Duplicate helper methods (
getConnector,resolveZoneId) appear in every command file; consider a shared trait/base. - TunnelGetCommand enforces ACCOUNT_ID while DNS commands do not—minor contract inconsistency.
- Tests cover happy paths and endpoint construction; CI should be sufficient to green-light.
Ship when ready.
jordanpartridge
added a commit
that referenced
this pull request
Sep 10, 2026
Research seat. Commands + Saloon PUT overwrite. Raw --json, not the #7 envelope. Keep tunnel:expose README. Do not merge.
jordanpartridge
force-pushed
the
cursor/dns-tunnel-crud-6412
branch
from
September 10, 2026 13:35
a230228 to
e72c180
Compare
There was a problem hiding this comment.
Ship it.
- Commands, Saloon request, resource wiring, and tests match the locked spec exactly.
- Zone resolution, --json output (raw result only), confirmation flow, and connector usage are consistent with existing dns:* and tunnel:* commands.
- README additions preserve the expose section and add the three new signatures.
- No blocking issues; CI should be the final gate.
…l:get Complete CRUD gaps by adding DnsDeleteCommand and TunnelGetCommand for existing DeleteDnsRecord/GetTunnel requests, plus UpdateDnsRecord (PUT) with DnsUpdateCommand. Includes Pest coverage with Saloon mocks and CI. Co-authored-by: Jordan Partridge <jordan@partridge.rocks>
…, get json Decode --json payloads for dns:delete --force and tunnel:get, and assert dns:update table fields. Keep expose coverage in the Pest run.
Research seat. Commands + Saloon PUT overwrite. Raw --json, not the #7 envelope. Keep tunnel:expose README. Do not merge.
DNS delete/update keep the dns:create token-only connector and pint concat.
jordanpartridge
marked this pull request as ready for review
September 12, 2026 13:43
jordanpartridge
force-pushed
the
cursor/dns-tunnel-crud-6412
branch
from
September 12, 2026 13:43
e72c180 to
bf63912
Compare
There was a problem hiding this comment.
Ship it.
- Commands, resource method, and UpdateDnsRecord request match the locked spec signatures and behavior (zone ID resolution, --force/--json, table vs JSON output, accountId only for tunnels).
- Tests exercise registration, happy paths, endpoint construction, and connector wiring; MockClient usage is consistent with existing test style.
- No duplication or pattern conflicts with main (DNS commands correctly avoid InteractsWithCloudflare; README expose section untouched).
- CI and pest runs are the remaining checklist items; nothing blocking in the patch itself.
jordanpartridge
added a commit
that referenced
this pull request
Sep 12, 2026
Also give tunnel:get OutputsJson so missing creds is JSON-safe and PHPStan is clean after the #8 merge.
jordanpartridge
added a commit
that referenced
this pull request
Sep 12, 2026
* feat: add cf setup auth onboarding command Add interactive and non-interactive setup that verifies the API token via Cloudflare's user/tokens/verify endpoint, writes credentials to .env, and documents ./cf setup as the primary configuration path. Co-authored-by: Jordan Partridge <jordan@partridge.rocks> * chore: drop local php symlink from setup branch Co-authored-by: Jordan Partridge <jordan@partridge.rocks> * test: cover successful cf setup credential save Failure paths were covered; this asserts token verify + .env write. * test: parse setup json fail payload and restore .env after write Cover missing token/account, verify fail, JSON fail, and happy-path .env write. * docs: lock cf setup SPEC (verify then .env) Write .env only after GET /user/tokens/verify succeeds. Non-interactive flags. Do not merge. * fix: quote-safe .env replace in cf setup Replace existing keys with a callback so token values are not treated as preg backreferences. Verify still gates on envelope success only. * test: prove setup never writes .env or leaks the token Also give tunnel:get OutputsJson so missing creds is JSON-safe and PHPStan is clean after the #8 merge. --------- Co-authored-by: Cursor Agent <agent@cursor.com>
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.
Summary
Wires orphaned Saloon requests into CLI commands.
dns:delete,dns:update,tunnel:getUpdateDnsRecordrequest + resource methodTest plan