Bound title and language at create time (#86) #91

Merged
poslop merged 1 commits from fix-86-field-bounds into main 2026-09-09 15:59:32 +00:00
Owner

Fixes #86.

  • Title: trimmed and truncated to 200 characters at create time.
  • Language: blank allowed (stored NULL); otherwise must match ^[a-zA-Z0-9+#-]{1,40}$ and be at most 40 chars, else a clear 400.
  • Regression tests in internal/api/issue86_field_bounds_test.go: truncation, oversized/malformed language rejection, valid identifiers (go, c#, c++, objective-c), blank metadata storing NULL.

All tests pass (go test ./...).

Fixes #86. - Title: trimmed and truncated to 200 characters at create time. - Language: blank allowed (stored NULL); otherwise must match ^[a-zA-Z0-9+#-]{1,40}$ and be at most 40 chars, else a clear 400. - Regression tests in internal/api/issue86_field_bounds_test.go: truncation, oversized/malformed language rejection, valid identifiers (go, c#, c++, objective-c), blank metadata storing NULL. All tests pass (go test ./...).
poslop added 1 commit 2026-09-09 15:58:45 +00:00
Bound title and language at create time (#86)
CI / docker (pull_request) Skipped
CI / test (pull_request) Successful in 21s
389e4d333f
Titles are trimmed and truncated to 200 characters; language must be
blank or match ^[a-zA-Z0-9+#-]{1,40}$ (max 40 chars) or the create is
rejected with a clear 400. Regression tests cover truncation, malformed
and oversized language values, valid identifiers, and blank metadata.
poslop merged commit 959a83be1e into main 2026-09-09 15:59:32 +00:00
Sign in to join this conversation.