Skip to content
This repository was archived by the owner on Mar 9, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,8 +186,8 @@ const result = parse(formData);

if (result.data !== null) {
// Success: data is available
console.log(result.data.username); // 'alice'
console.log(result.data.age); // '25'
console.log(result.data["username"]); // 'alice'
console.log(result.data["age"]); // '25'
} else {
// Failure: validation issues occurred
console.error(result.issues);
Expand Down
2 changes: 1 addition & 1 deletion skills/boundary-validator/references/api-contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ For complete versioning policy, see README.md Versioning section.
### Key Points

- **Patch versions** (0.1.x): bugfixes, no API changes
- **Minor versions** (0.x.0): Non-breaking additions (with caution in 0.x)
- **Minor versions** (0.x.0): Breaking changes allowed in 0.x (treated as effectively major)
- **Major versions** (1.0.0+): Breaking changes allowed

### What Counts as Breaking
Expand Down
4 changes: 2 additions & 2 deletions skills/boundary-validator/references/design-rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ Object.assign(data, { [key]: value });

```typescript
// Detect and report duplicates
const seen = new Set<unknown>();
const seen = new Set<string>();

for (const [key, value] of formData.entries()) {
if (seen.has(key)) {
Expand Down Expand Up @@ -248,4 +248,4 @@ When in doubt, reject the change.
---

**Source**: AGENTS.md (lines 36-75)
**Last updated**: 2026-01-12
**Last updated**: 2026-03-06
6 changes: 3 additions & 3 deletions skills/boundary-validator/references/security-rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,11 @@ for (const [key, value] of formData.entries()) {
**✅ Correct**:

```typescript
const FORBIDDEN_KEYS = ["__proto__", "constructor", "prototype"] as const;
const FORBIDDEN_KEYS: ReadonlySet<string> = new Set(["__proto__", "constructor", "prototype"]);

for (const [key, value] of formData.entries()) {
// Check for forbidden keys
if (FORBIDDEN_KEYS.includes(key as any)) {
if (FORBIDDEN_KEYS.has(key)) {
issues.push({
code: "forbidden_key",
key,
Expand Down Expand Up @@ -191,4 +191,4 @@ When implementing or reviewing security-related code:
---

**Source**: AGENTS.md (lines 76-95)
**Last updated**: 2026-01-12
**Last updated**: 2026-03-06
4 changes: 2 additions & 2 deletions skills/boundary-validator/references/validation-patterns.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ data[key] = value; // Always overwrites

```typescript
// ✅ Correct: Detect and report duplicates
const seen = new Set<unknown>();
const seen = new Set<string>();

for (const [key, value] of formData.entries()) {
if (seen.has(key)) {
Expand Down Expand Up @@ -442,4 +442,4 @@ grep -r "ParseOptions" src/

---

**Last updated**: 2026-01-12
**Last updated**: 2026-03-06
Loading