@usefidel/contracts 0.9.0 → 0.10.0

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.
@@ -263,7 +263,32 @@ export interface ValidationCancelledProperties {
263
263
  export interface ReportViewedProperties {
264
264
  run_id: string;
265
265
  validation_mode: ValidationMode;
266
- finding_count: number;
266
+ /**
267
+ * Findings shown on the report, or `null` when the run is not complete.
268
+ *
269
+ * NOT nullable in 0.9.0, which forced an errored or still-processing run to
270
+ * report `0` — indistinguishable from "this report genuinely showed nothing"
271
+ * and dragging any average toward zero with every error view. `null` is the
272
+ * honest encoding of "there is no count yet".
273
+ *
274
+ * For `design_system_vs_live` this counts findings, which is a SUPERSET of
275
+ * violations: it includes `unused` and `scoped` rows. Use
276
+ * `web_validation_completed.violation_count` for violations.
277
+ */
278
+ finding_count: number | null;
279
+ /**
280
+ * Whether the viewer arrived through a share link (`?t=`), and whether they
281
+ * own the run.
282
+ *
283
+ * These lived on `report_viewed` before the 0.9.0 rewrite and were briefly
284
+ * split onto a separate untyped event — which broke the share funnel, since
285
+ * PostHog filters each funnel step on that step's OWN properties. Without
286
+ * them here, "shared-report viewers who signed up" cannot be expressed at
287
+ * all: the step either counts every report view (dominated by owners) or is
288
+ * dropped. They belong on the event they describe.
289
+ */
290
+ is_shared: boolean;
291
+ is_owner: boolean;
267
292
  }
268
293
  /**
269
294
  * The exhaustive event-to-property mapping.
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "The source of truth still lives in the monorepo at packages/contracts/."
8
8
  ],
9
9
  "name": "@usefidel/contracts",
10
- "version": "0.9.0",
10
+ "version": "0.10.0",
11
11
  "description": "Shared, code-free contracts between Fidel surfaces. Run-error taxonomy, theme-intake wire types, and the canonical fidel.config.json builders.",
12
12
  "license": "UNLICENSED",
13
13
  "private": false,