agentsclimarketplace

Lamina forms

Skill aryaniyaps/lamina/skills/lamina-forms

Form behavior in contracts — validation timing, field semantics, and recovery UX. Use when data entry blocks workflows or causes scenario gaps.From its SKILL.md

Install
npx -y skills add aryaniyaps/lamina --skill lamina-forms

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.9 KB, 511 tokens by cl100k_base, as published. Nobody here has run it

Forms (agent-native)

Specify how data entry behaves in run.json — field semantics, validation timing, and recovery — not CSS or component libraries.

Contract encoding

ConcernWhere
Fields per screensurfaces[].fields[] or workflow step notes
Validation timingscenario trigger.when: validation_failed
Recoverable vs blockingscenario category: partial vs failure
Data immunity vs integritydecisions.md + form policy in implement.md

Data immunity (default for high-volume entry): accept input, flag uncertainty, audit later — never halt batch flow for recoverable format issues.

Bounded controls: match widget semantics to data type in screen spec; allow override when domain requires.

Design checklists

  1. Prefer immunity over keystroke-level rejection unless invariant requires hard stop.
  2. Batch-review anomalies instead of modal-blocking each error.
  3. Preserve entered data on validation failure (scenario + implement.md).
  4. Required fields only when invariant or workflow depends on them.
  5. Map each field to domain entity attribute — not database column names in user-facing copy.
  6. Classify date/time fields before choosing a control. A datetime-local value has no zone: submit its untouched local components plus the subject/place IANA zone for trusted resolution. Never convert it in the browser and attach another zone afterward.
  7. Invalid DST-gap times preserve input and offer a nearby valid choice; ambiguous overlap times require an explicit earlier/later choice. Show the relevant zone when actors may differ.

Verify checks

  • Actor walk: submit invalid/partial data — observe recovery UX matches scenarios.
  • Actor walk: required-for-invariant fields block with clear ux (banner/alert).
  • A11y: labels associated with inputs on captured walkthrough steps.
  • Temporal: run the form with browser zone different from subject zone and cover applicable DST gap/overlap recovery.

Anti-patterns

  • Keystroke rejection modals for recoverable typos.
  • Clearing form on error without scenario documenting it.
  • Free-text where bounded selection prevents inconsistency.
  • Form spec that mirrors implementation model instead of actor mental model.

Related

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.