Skip to content

feat: Cascade skill set for the IIS+SQL Server flavor#41

Merged
rmartin93 merged 6 commits into
mainfrom
skill/cascade-skill-set
Jun 4, 2026
Merged

feat: Cascade skill set for the IIS+SQL Server flavor#41
rmartin93 merged 6 commits into
mainfrom
skill/cascade-skill-set

Conversation

@rmartin93

@rmartin93 rmartin93 commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

What

Adds six more Windsurf/Cascade skills under .windsurf/skills/ (a sibling set to feature-surface-map in #40), to keep a weaker Windsurf agent on the rails when working an IIS + SQL Server fork. Each is grounded in this repo's real files and critical rules — not generic advice.

Skill Covers Maps to
mssql-function-authoring T-SQL migrations, usp_/fn_ patterns, GO batches, positional @p0 binding, snapshot-in-same-commit, the read-test seam critical rules 1, 3
verify-before-done typecheck → lint → build → DB tests (throwaway SQL Server) + the manual browser walk; no "done" without evidence testing discipline
error-logging-flow 5xx persist to the error log + /errors; next(err) not console.error; frontend auto-reports via apiFetch critical rule 8
frontend-crud-page DataTable (never raw <table>), AppForm + typed fields, per-domain hooks, the 3 route-registration files critical rules 6, 7
types-contract schema-first / z.infer type, one schema for API + frontend, as const vocab tuples critical rule 2
mssql-troubleshoot diagnostic T-SQL via sqlcmd (ledger, functions, error log, locks, sizes) SQL Server analog of pg-troubleshoot
pr-workflow feature → dev → main, conventional commits, the PR-template checklist, what CI enforces branching / CI policy

Why this shape

  • Scoped to the IIS flavor (no infra/Lambda/Cognito; data layer is @app/db at packages/db/ on T-SQL). .windsurf/skills/ is the deliberate "this is the Windsurf/IIS fork" marker — Windsurf reads both .claude/skills/ and .windsurf/skills/.
  • Self-contained with copy-paste examples mirroring the real tasks/issues code, plus a "common mistakes" / "don't" section each, since a weak agent may not follow links reliably.
  • Each frontmatter description is written so Cascade auto-invokes the skill on the matching kind of work (or via @skill-name).

Review note

These are advisory docs (no code paths touched). Skim and keep whichever you'll actually use — they're independent, so dropping any one is a clean delete of its folder.

🤖 Generated with Claude Code


Update (rebased onto main after #40 merged): this branch was originally cut from a pre-#40 main, so it didn't include feature-surface-map. Rebased onto the current main; the PR now also revises feature-surface-map (a +14 callout) so all skills carry the same guidance: the real repo's DB conventions win over the template's usp_/fn_+dbo style — real forks are often proc-centric (stored procs under db/schema/stored-procedures/, schema-qualified prefix-less names like crd.adjustment_dtl_delete across dbo/crd). mssql-function-authoring and mssql-troubleshoot carry the same note plus a TODO to author a project-specific stored-proc-authoring skill once real procs can be analyzed.

rmartin93 and others added 3 commits June 4, 2026 09:12
Adds six more .windsurf/skills/ to guide a weaker Windsurf agent working an
IIS-flavor fork, each grounded in this repo's real conventions and critical
rules:

- mssql-function-authoring — T-SQL data layer: GO batches, uniqueidentifier/
  datetimeoffset, EXEC procs returning a `value` column, inline TVFs,
  positional @p0 binding, functions-only, snapshot-in-the-same-commit, and
  validating the SQL<->zod seam with the read test.
- verify-before-done — the local check sequence (typecheck/lint/build, DB
  tests against a throwaway SQL Server) plus the manual browser walk; forbids
  claiming "done" without evidence.
- error-logging-flow — 5xx persist to the error log and surface on /errors;
  next(err) over console.error; how the frontend auto-reports via apiFetch.
- frontend-crud-page — DataTable (never a raw table), AppForm + typed fields
  with @app/types schemas (never re-declared), per-domain hooks, the three
  route-registration files.
- types-contract — schema-first/type-inferred, one schema imported by API and
  frontend, `as const` vocabulary tuples; no drift.
- mssql-troubleshoot — diagnostic T-SQL via sqlcmd (ledger, functions, error
  log, locks, sizes); the SQL Server counterpart to pg-troubleshoot.
- pr-workflow — feature -> dev -> main, conventional commits, the PR-template
  checklist, and what CI enforces.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…d procs

The mssql-* skills were grounded in the template's usp_/fn_ + dbo conventions.
Real forks are often proc-centric: mostly stored procedures under
db/schema/stored-procedures/, schema-qualified and prefix-less (e.g.
crd.adjustment_dtl_delete, dbo.<entity>_<action>) across schemas like dbo/crd.

- mssql-function-authoring: add a callout that the existing repo's conventions
  win over the template's, and a TODO to author a project-specific
  stored-proc-authoring skill once real procs can be analyzed.
- mssql-troubleshoot: note the naming difference and add a prefix-less,
  all-schema variant of the "objects present" diagnostic query.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The DB rows of the surface map described the template's usp_/fn_ + dbo +
schema/functions/ layout. Real forks are often proc-centric (stored procs
under db/schema/stored-procedures/, schema-qualified prefix-less names like
crd.adjustment_dtl_delete across dbo/crd). Add a callout that the existing
repo's conventions win and that the map's *shape* holds regardless of DB
naming, pointing at mssql-function-authoring and a future stored-proc skill.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@rmartin93 rmartin93 force-pushed the skill/cascade-skill-set branch from f07ec69 to c549136 Compare June 4, 2026 14:13
rmartin93 and others added 3 commits June 4, 2026 09:18
The map table and the add/remove/review steps still described the DB layer
purely as usp_/fn_ functions under schema/functions/. Rewrite the DB rows and
steps to lead with stored procedures (one .sql per proc, schema-qualified
prefix-less names like crd.<entity>_<action> under db/schema/stored-procedures/),
keeping the template's usp_/fn_ style as the noted variant. Also widen the
grep recipe to match <entity>_<action> proc names and update the description.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This project's procs don't use usp_/fn_ prefixes (e.g. crd.adjustment_dtl_delete),
so presenting "writes are usp_ procs, reads are fn_ functions" as the convention
is misleading. Replace those asides (map table, add step, review bullet, SQL
specifics, the callout, the child-entity example) with "naming + read/write
conventions & best practices TBD — determine them from the existing procs," and
keep usp_/fn_ only as an explicit "the template uses…" contrast.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Badge the intro and the worked example as app-starter TEMPLATE mechanics: the
usp_/fn_ names are the template's, not this project's (which uses prefix-less
schema-qualified procs like crd.adjustment_dtl_delete). Call out what transfers
regardless of naming (GO batching, NEWID/datetimeoffset, COALESCE, positional
binding, the read-test seam) and that exact naming/return conventions are TBD
from the project's existing procs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@rmartin93 rmartin93 merged commit 8260fa0 into main Jun 4, 2026
4 checks passed
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.

1 participant