my-frontend-observer 0.2.0 → 0.4.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.
Files changed (67) hide show
  1. package/CHANGELOG.md +102 -0
  2. package/README.md +51 -13
  3. package/dist/application/comparisonService.d.ts +56 -0
  4. package/dist/application/comparisonService.js +77 -0
  5. package/dist/application/comparisonService.js.map +1 -0
  6. package/dist/application/observationPersistence.js +1 -0
  7. package/dist/application/observationPersistence.js.map +1 -1
  8. package/dist/artifacts/artifactReader.d.ts +19 -0
  9. package/dist/artifacts/artifactReader.js +36 -0
  10. package/dist/artifacts/artifactReader.js.map +1 -0
  11. package/dist/artifacts/comparisonArtifactWriter.d.ts +41 -0
  12. package/dist/artifacts/comparisonArtifactWriter.js +67 -0
  13. package/dist/artifacts/comparisonArtifactWriter.js.map +1 -0
  14. package/dist/browser/chromiumAdapter.js +58 -4
  15. package/dist/browser/chromiumAdapter.js.map +1 -1
  16. package/dist/browser/evidenceCapture.d.ts +29 -2
  17. package/dist/browser/evidenceCapture.js +43 -19
  18. package/dist/browser/evidenceCapture.js.map +1 -1
  19. package/dist/browser/scrollCapture.d.ts +32 -0
  20. package/dist/browser/scrollCapture.js +163 -0
  21. package/dist/browser/scrollCapture.js.map +1 -0
  22. package/dist/browser/types.d.ts +3 -1
  23. package/dist/cli.js +299 -2
  24. package/dist/cli.js.map +1 -1
  25. package/dist/domain/comparison.d.ts +198 -0
  26. package/dist/domain/comparison.js +324 -0
  27. package/dist/domain/comparison.js.map +1 -0
  28. package/dist/domain/comparisonEngine.d.ts +48 -0
  29. package/dist/domain/comparisonEngine.js +694 -0
  30. package/dist/domain/comparisonEngine.js.map +1 -0
  31. package/dist/domain/comparisonIdentity.d.ts +13 -0
  32. package/dist/domain/comparisonIdentity.js +46 -0
  33. package/dist/domain/comparisonIdentity.js.map +1 -0
  34. package/dist/domain/evidence.d.ts +2 -0
  35. package/dist/domain/evidence.js +4 -0
  36. package/dist/domain/evidence.js.map +1 -1
  37. package/dist/domain/identity.d.ts +8 -3
  38. package/dist/domain/identity.js +9 -3
  39. package/dist/domain/identity.js.map +1 -1
  40. package/dist/domain/relationships.d.ts +168 -0
  41. package/dist/domain/relationships.js +343 -0
  42. package/dist/domain/relationships.js.map +1 -0
  43. package/dist/domain/schema.d.ts +116 -2
  44. package/dist/domain/schema.js +186 -2
  45. package/dist/domain/schema.js.map +1 -1
  46. package/dist/domain/scrollEvidence.d.ts +51 -0
  47. package/dist/domain/scrollEvidence.js +134 -0
  48. package/dist/domain/scrollEvidence.js.map +1 -0
  49. package/dist/index.d.ts +17 -4
  50. package/dist/index.js +9 -2
  51. package/dist/index.js.map +1 -1
  52. package/dist/request/request.d.ts +29 -0
  53. package/dist/request/request.js +108 -0
  54. package/dist/request/request.js.map +1 -1
  55. package/docs/ARCHITECTURE.md +110 -4
  56. package/docs/CI_CD.md +62 -6
  57. package/docs/COMMANDS.md +247 -6
  58. package/docs/CONTRACTS.md +172 -7
  59. package/docs/CURRENT_STATE.md +148 -10
  60. package/docs/DEVELOPMENT.md +52 -12
  61. package/docs/PROJECT_OVERVIEW.md +18 -11
  62. package/docs/QUICKSTART.md +7 -1
  63. package/docs/RELEASE.md +14 -7
  64. package/docs/ROADMAP.md +9 -0
  65. package/docs/SECURITY.md +14 -1
  66. package/docs/WORKFLOWS.md +90 -22
  67. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"chromiumAdapter.js","sourceRoot":"","sources":["../../src/browser/chromiumAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chromiumAdapter.js","sourceRoot":"","sources":["../../src/browser/chromiumAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { Page } from 'playwright';
1
+ import type { Page, Locator, ElementHandle } from 'playwright';
2
2
  import type { EvidenceField } from '../domain/evidence.js';
3
3
  import type { Diagnostic } from '../domain/diagnostics.js';
4
4
  import type { NamedTarget, Viewport } from '../request/request.js';
5
- import type { TargetEvidenceRecord } from '../domain/schema.js';
5
+ import type { TargetEvidenceRecord, TargetLocatorAttempt, TargetResolution } from '../domain/schema.js';
6
6
  /**
7
7
  * Captures the v0.1 minimum page evidence (docs/PROJECT_MILESTONES.md
8
8
  * "Minimum page evidence") from the already-navigated, already-ready page.
@@ -15,6 +15,33 @@ export interface TargetEvidenceCaptureResult {
15
15
  targetEvidence: Record<string, TargetEvidenceRecord>;
16
16
  diagnostics: Diagnostic[];
17
17
  }
18
+ export interface ResolvedTargetInfo {
19
+ name: string;
20
+ attempts: TargetLocatorAttempt[];
21
+ status: TargetResolution['selectionStatus'];
22
+ selectedIndex?: number;
23
+ locator?: Locator;
24
+ handle?: ElementHandle<Element>;
25
+ unavailableReason?: string;
26
+ }
27
+ /**
28
+ * Looks up one already-resolved configured target by its stable observer
29
+ * name (case-insensitively, matching the same case-insensitive comparison
30
+ * `request.ts#normalizeRequest` already uses for target-name uniqueness) -
31
+ * never a second locator/resolution algorithm, just a lookup into the
32
+ * `resolveConfiguredTargets` result already computed once for this
33
+ * observation.
34
+ */
35
+ export declare function findResolvedTarget(resolved: readonly ResolvedTargetInfo[], name: string): ResolvedTargetInfo | undefined;
36
+ /**
37
+ * The one canonical target-resolution algorithm (Phase 1 of the v0.2 Batch 3
38
+ * three-phase design below), exported so v0.3 Batch 2 scroll-scenario
39
+ * runtime-snapshot capture can resolve configured targets exactly once and
40
+ * reuse the same live `{locator, handle}` pairs across its initial/final
41
+ * snapshots, instead of re-implementing resolution with different locator
42
+ * semantics. Callers own disposing any returned `handle`.
43
+ */
44
+ export declare function resolveConfiguredTargets(page: Page, targets: readonly NamedTarget[]): Promise<ResolvedTargetInfo[]>;
18
45
  /**
19
46
  * Observes every explicitly configured target from the same live page,
20
47
  * honoring the frozen ordered-locator resolution contract: 0 matches tries
@@ -321,27 +321,27 @@ async function evaluateLocatorAttempt(page, locator) {
321
321
  }
322
322
  }
323
323
  /**
324
- * Observes every explicitly configured target from the same live page,
325
- * honoring the frozen ordered-locator resolution contract: 0 matches tries
326
- * the next locator; exactly 1 match selects and stops; more than 1 match is
327
- * ambiguous and stops (never falls through); an unevaluable locator is
328
- * unavailable and stops (never falls through). Ambiguity never triggers
329
- * fallback.
330
- *
331
- * Batch 3 restructures this into three phases over one resolved set: (1)
332
- * resolve every configured target exactly once, keeping a live
333
- * `{locator, handle}` for each match; (2) compute bounded pairwise DOM
334
- * containment among only the resolved configured targets, reusing those
335
- * same handles (never re-resolving, never a second/independent resolution
336
- * algorithm); (3) measure every resolved target and assemble its evidence,
337
- * attaching the phase-2 containment result. Every handle is disposed once,
338
- * after all three phases, regardless of outcome.
324
+ * Looks up one already-resolved configured target by its stable observer
325
+ * name (case-insensitively, matching the same case-insensitive comparison
326
+ * `request.ts#normalizeRequest` already uses for target-name uniqueness) -
327
+ * never a second locator/resolution algorithm, just a lookup into the
328
+ * `resolveConfiguredTargets` result already computed once for this
329
+ * observation.
339
330
  */
340
- export async function captureTargetEvidence(page, targets) {
341
- const targetEvidence = {};
342
- const diagnostics = [];
331
+ export function findResolvedTarget(resolved, name) {
332
+ const lower = name.toLowerCase();
333
+ return resolved.find((info) => info.name.toLowerCase() === lower);
334
+ }
335
+ /**
336
+ * The one canonical target-resolution algorithm (Phase 1 of the v0.2 Batch 3
337
+ * three-phase design below), exported so v0.3 Batch 2 scroll-scenario
338
+ * runtime-snapshot capture can resolve configured targets exactly once and
339
+ * reuse the same live `{locator, handle}` pairs across its initial/final
340
+ * snapshots, instead of re-implementing resolution with different locator
341
+ * semantics. Callers own disposing any returned `handle`.
342
+ */
343
+ export async function resolveConfiguredTargets(page, targets) {
343
344
  const infos = [];
344
- // Phase 1: resolve every configured target exactly once.
345
345
  for (const target of targets) {
346
346
  const attempts = [];
347
347
  let stopStatus;
@@ -405,6 +405,30 @@ export async function captureTargetEvidence(page, targets) {
405
405
  infos.push({ name: target.name, attempts, status: 'not-found' });
406
406
  }
407
407
  }
408
+ return infos;
409
+ }
410
+ /**
411
+ * Observes every explicitly configured target from the same live page,
412
+ * honoring the frozen ordered-locator resolution contract: 0 matches tries
413
+ * the next locator; exactly 1 match selects and stops; more than 1 match is
414
+ * ambiguous and stops (never falls through); an unevaluable locator is
415
+ * unavailable and stops (never falls through). Ambiguity never triggers
416
+ * fallback.
417
+ *
418
+ * Batch 3 restructures this into three phases over one resolved set: (1)
419
+ * resolve every configured target exactly once, keeping a live
420
+ * `{locator, handle}` for each match; (2) compute bounded pairwise DOM
421
+ * containment among only the resolved configured targets, reusing those
422
+ * same handles (never re-resolving, never a second/independent resolution
423
+ * algorithm); (3) measure every resolved target and assemble its evidence,
424
+ * attaching the phase-2 containment result. Every handle is disposed once,
425
+ * after all three phases, regardless of outcome.
426
+ */
427
+ export async function captureTargetEvidence(page, targets) {
428
+ const targetEvidence = {};
429
+ const diagnostics = [];
430
+ // Phase 1: resolve every configured target exactly once.
431
+ const infos = await resolveConfiguredTargets(page, targets);
408
432
  try {
409
433
  // Phase 2: bounded pairwise DOM containment among the configured targets
410
434
  // only (never unconfigured ancestors), in configured target order.
@@ -1 +1 @@
1
- {"version":3,"file":"evidenceCapture.js","sourceRoot":"","sources":["../../src/browser/evidenceCapture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evidenceCapture.js","sourceRoot":"","sources":["../../src/browser/evidenceCapture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { Page } from 'playwright';
2
+ import type { Viewport } from '../request/request.js';
3
+ import type { ScrollRuntimeSnapshot } from '../domain/schema.js';
4
+ import type { ResolvedTargetInfo } from './evidenceCapture.js';
5
+ /**
6
+ * Captures one point-in-time bounded `ScrollRuntimeSnapshot` (Batch 1 frozen
7
+ * contract) from the live page, using already-resolved target handles -
8
+ * never re-resolving targets itself. Called twice by the scenario lifecycle
9
+ * (once before the scroll action, once after stabilization) against the
10
+ * exact same `resolved` set, so "which browser element is target X" is
11
+ * answered exactly once per observation's scenario capture.
12
+ */
13
+ export declare function captureScrollRuntimeSnapshot(page: Page, resolved: readonly ResolvedTargetInfo[], viewport: Viewport): Promise<ScrollRuntimeSnapshot>;
14
+ /**
15
+ * Immediate, non-smooth window scroll using the Batch 1 normalized delta.
16
+ * `behavior: 'instant'` guarantees no smooth-scroll animation regardless of
17
+ * any `scroll-behavior: smooth` the observed page's own CSS declares - the
18
+ * position change is synchronous within this one `evaluate()` call.
19
+ */
20
+ export declare function performWindowScrollBy(page: Page, deltaX: number, deltaY: number): Promise<void>;
21
+ /**
22
+ * Immediate, non-smooth scroll of one uniquely-resolved configured target
23
+ * element, using the same `behavior: 'instant'` primitive as
24
+ * {@link performWindowScrollBy} - one stabilization/execution contract for
25
+ * both action kinds, never a forked one. `element.scrollBy` is a real,
26
+ * browser-native immediate-scroll method on every `Element` (no dependency
27
+ * on the target actually being scrollable - a non-overflowing target simply
28
+ * produces no position change, which is a valid, honestly-reported outcome).
29
+ */
30
+ export declare function performTargetScrollBy(handle: NonNullable<ResolvedTargetInfo['handle']>, deltaX: number, deltaY: number): Promise<void>;
31
+ /** The Batch 1 frozen stabilization contract: exactly two `requestAnimationFrame` cycles on the live page, no timers/sleeps/network-idle substitutes. */
32
+ export declare function waitTwoAnimationFrames(page: Page): Promise<void>;
@@ -0,0 +1,163 @@
1
+ import { deriveOverflowEvidence, deriveViewportRelation } from '../domain/scrollEvidence.js';
2
+ function browserField(value) {
3
+ return { state: 'available', source: 'browser', value };
4
+ }
5
+ function computedField(value) {
6
+ return { state: 'available', source: 'computed-browser', value };
7
+ }
8
+ function derivedField(value, derivedFrom) {
9
+ return { state: 'available', source: 'derived', value, derivedFrom };
10
+ }
11
+ function unavailableField(reason) {
12
+ return { state: 'unavailable', reason };
13
+ }
14
+ function notApplicableField(reason) {
15
+ return { state: 'not-applicable', reason };
16
+ }
17
+ /**
18
+ * `document.scrollingElement` (falling back to `documentElement`, which is
19
+ * what `scrollingElement` resolves to for any standards-mode document) is
20
+ * the browser's own answer to "which element actually scrolls the page" -
21
+ * that becomes `document.root`. `documentElement` is included as its own
22
+ * field only when it is a *different* element from the scrolling root
23
+ * (legacy quirks-mode pages, not exercised by this repository's fixtures);
24
+ * otherwise it would just duplicate `root`'s own metrics. `body` is always
25
+ * a distinct DOM element from `documentElement` when present, so its own
26
+ * metrics are genuine measurement, not fabrication, even when numerically
27
+ * equal to `root`.
28
+ */
29
+ async function captureWindowAndDocument(page) {
30
+ return page.evaluate(() => {
31
+ const metricsOf = (el) => ({
32
+ scrollTop: el.scrollTop,
33
+ scrollLeft: el.scrollLeft,
34
+ scrollWidth: el.scrollWidth,
35
+ scrollHeight: el.scrollHeight,
36
+ clientWidth: el.clientWidth,
37
+ clientHeight: el.clientHeight,
38
+ });
39
+ const scrollingElement = document.scrollingElement ?? document.documentElement;
40
+ const rootStyle = getComputedStyle(scrollingElement);
41
+ const body = document.body;
42
+ return {
43
+ scrollX: window.scrollX,
44
+ scrollY: window.scrollY,
45
+ root: metricsOf(scrollingElement),
46
+ rootOverflowX: rootStyle.overflowX,
47
+ rootOverflowY: rootStyle.overflowY,
48
+ documentElement: scrollingElement !== document.documentElement ? metricsOf(document.documentElement) : undefined,
49
+ body: body ? metricsOf(body) : undefined,
50
+ };
51
+ });
52
+ }
53
+ /** Same hidden-element convention as `evidenceCapture.ts#captureResolvedTargetRecord`: `display:none`/`visibility:hidden`/zero-size all mean "not visibly rendered". */
54
+ async function captureTargetScrollMeasurement(handle) {
55
+ return handle.evaluate((el) => {
56
+ const rect = el.getBoundingClientRect();
57
+ const computed = getComputedStyle(el);
58
+ return {
59
+ metrics: {
60
+ scrollTop: el.scrollTop,
61
+ scrollLeft: el.scrollLeft,
62
+ scrollWidth: el.scrollWidth,
63
+ scrollHeight: el.scrollHeight,
64
+ clientWidth: el.clientWidth,
65
+ clientHeight: el.clientHeight,
66
+ },
67
+ overflowX: computed.overflowX,
68
+ overflowY: computed.overflowY,
69
+ rect: { x: rect.x, y: rect.y, width: rect.width, height: rect.height, right: rect.right, bottom: rect.bottom },
70
+ visible: computed.display !== 'none' && computed.visibility !== 'hidden' && rect.width > 0 && rect.height > 0,
71
+ };
72
+ });
73
+ }
74
+ /**
75
+ * Builds one bounded `TargetScrollRuntimeState` for a single already-resolved
76
+ * configured target. Metrics/overflow/boundingRect are reported as real
77
+ * browser measurement (even when zero, for a hidden element) - consistent
78
+ * with how `evidenceCapture.ts` already reports geometry for hidden v0.2
79
+ * targets - but `viewportRelation` is `not-applicable` for a hidden target
80
+ * (Batch 1 Section 20/24: hidden is not the same claim as offscreen, so a
81
+ * hidden target must never receive ordinary above/below/intersecting
82
+ * geometry).
83
+ */
84
+ async function captureTargetScrollRuntimeState(info, viewport) {
85
+ if (info.status !== 'matched' || !info.handle) {
86
+ const reason = info.unavailableReason ?? `target itself did not resolve (status: ${info.status})`;
87
+ return {
88
+ metrics: unavailableField(reason),
89
+ overflow: unavailableField(reason),
90
+ boundingRect: unavailableField(reason),
91
+ viewportRelation: unavailableField(reason),
92
+ };
93
+ }
94
+ const raw = await captureTargetScrollMeasurement(info.handle);
95
+ const overflow = deriveOverflowEvidence(raw.metrics, raw.overflowX, raw.overflowY);
96
+ const viewportRelation = raw.visible
97
+ ? derivedField(deriveViewportRelation(raw.rect, viewport), ['boundingRect', 'viewport'])
98
+ : notApplicableField('target is hidden or non-rendered; viewport relation is not meaningful');
99
+ return {
100
+ metrics: browserField(raw.metrics),
101
+ overflow: computedField(overflow),
102
+ boundingRect: browserField(raw.rect),
103
+ viewportRelation,
104
+ };
105
+ }
106
+ /**
107
+ * Captures one point-in-time bounded `ScrollRuntimeSnapshot` (Batch 1 frozen
108
+ * contract) from the live page, using already-resolved target handles -
109
+ * never re-resolving targets itself. Called twice by the scenario lifecycle
110
+ * (once before the scroll action, once after stabilization) against the
111
+ * exact same `resolved` set, so "which browser element is target X" is
112
+ * answered exactly once per observation's scenario capture.
113
+ */
114
+ export async function captureScrollRuntimeSnapshot(page, resolved, viewport) {
115
+ const raw = await captureWindowAndDocument(page);
116
+ const rootOverflow = deriveOverflowEvidence(raw.root, raw.rootOverflowX, raw.rootOverflowY);
117
+ const targets = {};
118
+ for (const info of resolved) {
119
+ targets[info.name] = await captureTargetScrollRuntimeState(info, viewport);
120
+ }
121
+ return {
122
+ window: { scrollX: raw.scrollX, scrollY: raw.scrollY },
123
+ document: {
124
+ root: raw.root,
125
+ rootOverflow,
126
+ ...(raw.documentElement ? { documentElement: raw.documentElement } : {}),
127
+ ...(raw.body ? { body: raw.body } : {}),
128
+ },
129
+ targets,
130
+ };
131
+ }
132
+ /**
133
+ * Immediate, non-smooth window scroll using the Batch 1 normalized delta.
134
+ * `behavior: 'instant'` guarantees no smooth-scroll animation regardless of
135
+ * any `scroll-behavior: smooth` the observed page's own CSS declares - the
136
+ * position change is synchronous within this one `evaluate()` call.
137
+ */
138
+ export async function performWindowScrollBy(page, deltaX, deltaY) {
139
+ await page.evaluate(({ deltaX, deltaY }) => {
140
+ window.scrollBy({ left: deltaX, top: deltaY, behavior: 'instant' });
141
+ }, { deltaX, deltaY });
142
+ }
143
+ /**
144
+ * Immediate, non-smooth scroll of one uniquely-resolved configured target
145
+ * element, using the same `behavior: 'instant'` primitive as
146
+ * {@link performWindowScrollBy} - one stabilization/execution contract for
147
+ * both action kinds, never a forked one. `element.scrollBy` is a real,
148
+ * browser-native immediate-scroll method on every `Element` (no dependency
149
+ * on the target actually being scrollable - a non-overflowing target simply
150
+ * produces no position change, which is a valid, honestly-reported outcome).
151
+ */
152
+ export async function performTargetScrollBy(handle, deltaX, deltaY) {
153
+ await handle.evaluate((el, { deltaX, deltaY }) => {
154
+ el.scrollBy({ left: deltaX, top: deltaY, behavior: 'instant' });
155
+ }, { deltaX, deltaY });
156
+ }
157
+ /** The Batch 1 frozen stabilization contract: exactly two `requestAnimationFrame` cycles on the live page, no timers/sleeps/network-idle substitutes. */
158
+ export async function waitTwoAnimationFrames(page) {
159
+ await page.evaluate(() => new Promise((resolve) => {
160
+ requestAnimationFrame(() => requestAnimationFrame(() => resolve()));
161
+ }));
162
+ }
163
+ //# sourceMappingURL=scrollCapture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scrollCapture.js","sourceRoot":"","sources":["../../src/browser/scrollCapture.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Diagnostic } from '../domain/diagnostics.js';
2
2
  import type { EvidenceField } from '../domain/evidence.js';
3
- import type { TargetEvidenceRecord } from '../domain/schema.js';
3
+ import type { TargetEvidenceRecord, ScrollScenarioEvidence } from '../domain/schema.js';
4
4
  export interface BrowserProvenance {
5
5
  engine: string;
6
6
  version: string;
@@ -16,6 +16,8 @@ export type BrowserCaptureResult = {
16
16
  pageEvidence: Record<string, EvidenceField<unknown>>;
17
17
  targetEvidence: Record<string, TargetEvidenceRecord>;
18
18
  diagnostics: Diagnostic[];
19
+ /** v0.3 Batch 2: present only when the request configured a scrollScenario. */
20
+ scrollScenarioEvidence?: ScrollScenarioEvidence;
19
21
  } | {
20
22
  ok: false;
21
23
  diagnostics: Diagnostic[];