chore: keep widget sources only

This commit is contained in:
2026-09-17 23:29:09 +03:00
commit e0404617d2
125 changed files with 8935 additions and 0 deletions
@@ -0,0 +1,30 @@
---
name: shd-safe-bulk-change
description: Use before any SHD bulk create, update, import, archive, delete, or other multi-record mutation, and whenever the user asks to plan a mass change.
---
# Safe SHD bulk changes
## Plan first
1. Confirm the target module, organization/project scope, exact match rule and
intended side effect.
2. Read current schemas and records. Estimate affected, skipped, invalid and
ambiguous rows.
3. Prefer a server validation or dry-run operation. For AirBase use
`shd_airbase_validate_records`, then
`shd_airbase_bulk_create_records` or
`shd_airbase_bulk_upsert_records` with `dry_run: true` when applicable.
4. Present the plan and stop unless the user explicitly authorized execution.
## Execute safely
Use stable idempotency keys, expected versions and exact match fields accepted
by the selected tool. Do not silently widen a project, organization, table or
record filter. Do not convert a failed or conflicting row into a new record.
After execution, report created, updated, skipped, rejected and conflicted
rows, then use the server's persisted readback when available. Destructive
operations require explicit confirmation and remain subject to server ACL.
See `references/write-preflight.md` for the required preflight record.
@@ -0,0 +1,5 @@
interface:
display_name: SHD safe bulk changes
short_description: Plan and validate bulk mutations
policy:
allow_implicit_invocation: false
@@ -0,0 +1,7 @@
# Write preflight
Before a multi-record write, record:
`module → scope → match rule → current count → affected count → skipped/ambiguous count → validation result → idempotency key`
Stop on an ambiguous match, validation failure, conflict or missing readback.