packetdial: finish resource wrapping (reads + gated writes across the platform)

Added read wrappers: addresses (E911), smsnumbers, blocked-numbers, moh, dialrules,
recording, transcriptions. Added gated write wrappers: DID update/delete, per-user device
CRUD, E911 address CRUD, contact CRUD, site create/update, auto-attendant create, SMS
number CRUD, block/unblock numbers, MoH TTS create/delete.

Verification: contact create→delete lifecycle verified on arizonacomputerguru (id field is
`unique-id`); reads for addresses/blocked-numbers/moh verified. Remaining writes are plumbed
per the OpenAPI spec [P] but not lifecycle-verified (test domain lacks the feature or needs a
special body) — SKILL.md marks each [V]/[P] and documents the gotchas (E911 pidflo via
addresses/validate; SMS not provisioned on test domain; number-filters add 202'd but didn't
persist; MoH file upload is multipart -> raw). Capability map + api.md history updated.
All writes --confirm-gated; anything unwrapped still reachable via `raw`.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-22 08:05:06 -07:00
parent fec8b364d6
commit 1062a5ed44
4 changed files with 321 additions and 9 deletions

View File

@@ -93,3 +93,12 @@ exact request/response schema of any specific path.
server selects the op from the body) — wrappers pass `--body` verbatim. Note: entry-bearing
timeframe types (days-of-week etc.) reject create without their array — create `always` then
convert, or include the array.
Finished the resource wrapping: added reads (`addresses`, `smsnumbers`, `blocked-numbers`,
`moh`, `dialrules`, `recording`, `transcriptions`) and gated writes (DID update/delete,
per-user device CRUD, E911 address CRUD, contact CRUD, site create/update, auto-attendant
create, SMS number CRUD, block/unblock numbers, MoH TTS create/delete). Verified [V]
lifecycles on `arizonacomputerguru`: contact create→delete (id = `unique-id`), plus the
callqueue/timeframe lifecycles. The rest are plumbed per spec [P] but not lifecycle-verified
(test domain lacks the feature, or needs a special body — E911 `address-formatted-pidflo` via
`addresses/validate`; SMS not provisioned; number-filters add 202'd but didn't persist on the
empty domain). Multipart MoH upload + dialrule writes + queue-agent PATCH stay on `raw`.