@dereekb/dbx-components-mcp 13.10.3 → 13.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -309,6 +309,16 @@
309
309
  "whenItDoesNotApply": "Fields whose name is unambiguously self-describing (rare with 1-4 char abbreviations).",
310
310
  "canonicalFix": "Add `/** <fullName> -- <description> *\\/` above the field declaration."
311
311
  },
312
+ {
313
+ "code": "MODEL_FIELD_MISSING_VARIABLE_TAG",
314
+ "source": "dbx_model_validate",
315
+ "severity": "warning",
316
+ "title": "A persisted field is missing its `@dbxModelVariable <name>` JSDoc tag",
317
+ "whatItFlags": "A persisted field is missing its `@dbxModelVariable <name>` JSDoc tag.",
318
+ "whenItApplies": "Every field on a `@dbxModel` interface — the tag carries the human-readable long name the catalog and decoder use when surfacing the field to operators.",
319
+ "whenItDoesNotApply": "Fields on embedded sub-object interfaces (no `@dbxModel` parent) and fields the project deliberately leaves untagged (rare).",
320
+ "canonicalFix": "Append `@dbxModelVariable <longName>` to the field's JSDoc block."
321
+ },
312
322
  {
313
323
  "code": "MODEL_FIELD_NAME_TOO_LONG",
314
324
  "source": "dbx_model_validate",
@@ -319,6 +329,22 @@
319
329
  "whenItDoesNotApply": "Fields that compose well-known multi-character abbreviations the project intentionally allows.",
320
330
  "canonicalFix": "Rename the field to a 1–4 character abbreviation (e.g. `name` → `n`, `userId` → `uid`)."
321
331
  },
332
+ {
333
+ "code": "MODEL_GROUP_INTERFACE_MISSING_TAG",
334
+ "source": "dbx_model_validate",
335
+ "severity": "error",
336
+ "title": "The `<Group>FirestoreCollections` interface is missing its `@dbxModelGroup` JSDoc tag",
337
+ "whatItFlags": "The `<Group>FirestoreCollections` interface is missing its `@dbxModelGroup` JSDoc tag.",
338
+ "whenItApplies": "Every group container — the rich catalog extractor (`scan/extract-models`) requires the tag to register the group, and downstream traversal/referencing depends on that registration.",
339
+ "whenItDoesNotApply": "Files in `@dereekb/firebase` itself (upstream-owned sources).",
340
+ "canonicalFix": "Add `@dbxModelGroup <Group>` to the JSDoc above the `<Group>FirestoreCollections` declaration.",
341
+ "seeAlso": [
342
+ {
343
+ "kind": "artifact",
344
+ "target": "firestore-model"
345
+ }
346
+ ]
347
+ },
322
348
  {
323
349
  "code": "MODEL_IDENTITY_BAD_ARGS",
324
350
  "source": "dbx_model_validate",
@@ -339,6 +365,38 @@
339
365
  "whenItDoesNotApply": "When intentionally module-private (rare).",
340
366
  "canonicalFix": "Add `export` to the identity constant declaration."
341
367
  },
368
+ {
369
+ "code": "MODEL_IDENTITY_NOT_TAGGED",
370
+ "source": "dbx_model_validate",
371
+ "severity": "error",
372
+ "title": "`firestoreModelIdentity(...)` was found but its corresponding model interface lacks the `@dbxModel` JSDoc tag, leaving the model invisible to the catalog and to downstream traversal/referencing code",
373
+ "whatItFlags": "`firestoreModelIdentity(...)` was found but its corresponding model interface lacks the `@dbxModel` JSDoc tag, leaving the model invisible to the catalog and to downstream traversal/referencing code.",
374
+ "whenItApplies": "Every `firestoreModelIdentity(...)` call whose `<PascalName>` interface is missing `@dbxModel`. Anchored at the identity line so the fix points at both the interface and the identity.",
375
+ "whenItDoesNotApply": "Files in `@dereekb/firebase` itself.",
376
+ "canonicalFix": "Add `@dbxModel` to the JSDoc on the `<PascalName>` interface so the catalog and decoder recognise it as a model.",
377
+ "seeAlso": [
378
+ {
379
+ "kind": "artifact",
380
+ "target": "firestore-model"
381
+ }
382
+ ]
383
+ },
384
+ {
385
+ "code": "MODEL_INTERFACE_MISSING_TAG",
386
+ "source": "dbx_model_validate",
387
+ "severity": "error",
388
+ "title": "The model's data interface is missing its `@dbxModel` JSDoc tag",
389
+ "whatItFlags": "The model's data interface is missing its `@dbxModel` JSDoc tag.",
390
+ "whenItApplies": "Every `<PascalName>` interface that anchors a `firestoreModelIdentity(...)` model — the rich catalog extractor (`scan/extract-models`) requires the tag to register the model.",
391
+ "whenItDoesNotApply": "Embedded sub-object interfaces (no matching identity) and files in `@dereekb/firebase` itself.",
392
+ "canonicalFix": "Add `@dbxModel` to the JSDoc above the `<PascalName>` interface declaration.",
393
+ "seeAlso": [
394
+ {
395
+ "kind": "artifact",
396
+ "target": "firestore-model"
397
+ }
398
+ ]
399
+ },
342
400
  {
343
401
  "code": "MODEL_INTERFACE_NOT_EXPORTED",
344
402
  "source": "dbx_model_validate",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/dbx-components-mcp",
3
- "version": "13.10.3",
3
+ "version": "13.10.4",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "dbx-components-mcp": "dbx-components-mcp.js"