@dailephd/my-frontend-observer 0.9.1 → 0.10.1

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 (150) hide show
  1. package/CHANGELOG.md +490 -471
  2. package/LICENSE +21 -21
  3. package/README.md +375 -357
  4. package/dist/application/projectCheckService.d.ts +6 -0
  5. package/dist/application/projectCheckService.js +8 -1
  6. package/dist/application/projectCheckService.js.map +1 -1
  7. package/dist/application/projectWorkflowService.d.ts +7 -2
  8. package/dist/application/projectWorkflowService.js +10 -3
  9. package/dist/application/projectWorkflowService.js.map +1 -1
  10. package/dist/application/visualChangeAgentHandoffService.d.ts +28 -0
  11. package/dist/application/visualChangeAgentHandoffService.js +111 -0
  12. package/dist/application/visualChangeAgentHandoffService.js.map +1 -0
  13. package/dist/application/visualChangeProjectWorkflowService.d.ts +95 -0
  14. package/dist/application/visualChangeProjectWorkflowService.js +376 -0
  15. package/dist/application/visualChangeProjectWorkflowService.js.map +1 -0
  16. package/dist/application/visualChangeReviewService.d.ts +50 -0
  17. package/dist/application/visualChangeReviewService.js +69 -0
  18. package/dist/application/visualChangeReviewService.js.map +1 -0
  19. package/dist/application/visualChangeWorkflowPersistenceService.d.ts +26 -0
  20. package/dist/application/visualChangeWorkflowPersistenceService.js +15 -0
  21. package/dist/application/visualChangeWorkflowPersistenceService.js.map +1 -0
  22. package/dist/artifacts/visualChangeWorkflowArtifactReader.d.ts +9 -0
  23. package/dist/artifacts/visualChangeWorkflowArtifactReader.js +47 -0
  24. package/dist/artifacts/visualChangeWorkflowArtifactReader.js.map +1 -0
  25. package/dist/artifacts/visualChangeWorkflowArtifactWriter.d.ts +20 -0
  26. package/dist/artifacts/visualChangeWorkflowArtifactWriter.js +41 -0
  27. package/dist/artifacts/visualChangeWorkflowArtifactWriter.js.map +1 -0
  28. package/dist/cli.js +9 -7
  29. package/dist/cli.js.map +1 -1
  30. package/dist/domain/visualChangeAgentHandoff.d.ts +82 -0
  31. package/dist/domain/visualChangeAgentHandoff.js +80 -0
  32. package/dist/domain/visualChangeAgentHandoff.js.map +1 -0
  33. package/dist/domain/visualChangeAgentHandoffSerialization.d.ts +2 -0
  34. package/dist/domain/visualChangeAgentHandoffSerialization.js +11 -0
  35. package/dist/domain/visualChangeAgentHandoffSerialization.js.map +1 -0
  36. package/dist/domain/visualChangeCycle.d.ts +8 -0
  37. package/dist/domain/visualChangeCycle.js +7 -0
  38. package/dist/domain/visualChangeCycle.js.map +1 -0
  39. package/dist/domain/visualChangeWorkflow.d.ts +125 -0
  40. package/dist/domain/visualChangeWorkflow.js +109 -0
  41. package/dist/domain/visualChangeWorkflow.js.map +1 -0
  42. package/dist/domain/visualChangeWorkflowIdentity.d.ts +5 -0
  43. package/dist/domain/visualChangeWorkflowIdentity.js +24 -0
  44. package/dist/domain/visualChangeWorkflowIdentity.js.map +1 -0
  45. package/dist/index.d.ts +21 -1
  46. package/dist/index.js +12 -1
  47. package/dist/index.js.map +1 -1
  48. package/dist/projectWorkflow/projectPaths.d.ts +3 -0
  49. package/dist/projectWorkflow/projectPaths.js +7 -0
  50. package/dist/projectWorkflow/projectPaths.js.map +1 -1
  51. package/dist/viewer/assets/index-DglJ6f28.css +1 -0
  52. package/dist/viewer/assets/index-DsODREY5.js +9 -0
  53. package/dist/viewer/index.html +15 -15
  54. package/dist/viewer/sw.js +1 -1
  55. package/dist/viewerServer/evidence/classify.d.ts +3 -1
  56. package/dist/viewerServer/evidence/classify.js +10 -0
  57. package/dist/viewerServer/evidence/classify.js.map +1 -1
  58. package/dist/viewerServer/evidence/handles.js +1 -0
  59. package/dist/viewerServer/evidence/handles.js.map +1 -1
  60. package/dist/viewerServer/evidence/projection.d.ts +5 -0
  61. package/dist/viewerServer/evidence/projection.js +19 -0
  62. package/dist/viewerServer/evidence/projection.js.map +1 -1
  63. package/dist/viewerServer/evidence/visualChangeWorkflowView.d.ts +31 -0
  64. package/dist/viewerServer/evidence/visualChangeWorkflowView.js +36 -0
  65. package/dist/viewerServer/evidence/visualChangeWorkflowView.js.map +1 -0
  66. package/dist/viewerServer/httpServer.js +323 -1
  67. package/dist/viewerServer/httpServer.js.map +1 -1
  68. package/dist/viewerServer/referenceApproval.d.ts +22 -0
  69. package/dist/viewerServer/referenceApproval.js +42 -0
  70. package/dist/viewerServer/referenceApproval.js.map +1 -0
  71. package/dist/viewerServer/referenceVisualChangeAuthoring.d.ts +28 -0
  72. package/dist/viewerServer/referenceVisualChangeAuthoring.js +134 -0
  73. package/dist/viewerServer/referenceVisualChangeAuthoring.js.map +1 -0
  74. package/dist/viewerServer/runtimeVisualChangeAuthoring.d.ts +33 -0
  75. package/dist/viewerServer/runtimeVisualChangeAuthoring.js +81 -0
  76. package/dist/viewerServer/runtimeVisualChangeAuthoring.js.map +1 -0
  77. package/dist/viewerServer/visualChangeAuthoring.d.ts +46 -0
  78. package/dist/viewerServer/visualChangeAuthoring.js +63 -0
  79. package/dist/viewerServer/visualChangeAuthoring.js.map +1 -0
  80. package/dist/viewerServer/visualChangeHandoff.d.ts +23 -0
  81. package/dist/viewerServer/visualChangeHandoff.js +31 -0
  82. package/dist/viewerServer/visualChangeHandoff.js.map +1 -0
  83. package/dist/viewerServer/visualChangeReview.d.ts +30 -0
  84. package/dist/viewerServer/visualChangeReview.js +46 -0
  85. package/dist/viewerServer/visualChangeReview.js.map +1 -0
  86. package/docs/ARCHITECTURE.md +1394 -1373
  87. package/docs/CI_CD.md +349 -327
  88. package/docs/COMMANDS.md +1035 -1012
  89. package/docs/CONTRACTS.md +1971 -1926
  90. package/docs/CURRENT_STATE.md +1277 -1238
  91. package/docs/DEVELOPMENT.md +240 -237
  92. package/docs/DOCUMENTATION_PRESERVATION_POLICY.md +50 -50
  93. package/docs/PROJECT_DESCRIPTION.md +2248 -2224
  94. package/docs/PROJECT_MILESTONES.md +2681 -2558
  95. package/docs/PROJECT_OVERVIEW.md +200 -191
  96. package/docs/QUICKSTART.md +100 -96
  97. package/docs/RELEASE.md +37 -33
  98. package/docs/ROADMAP.md +1105 -1033
  99. package/docs/SECURITY.md +297 -275
  100. package/docs/WORKFLOWS.md +806 -770
  101. package/docs/plans/v0.10-implementation-plan.md +1509 -0
  102. package/docs/plans/v0.8-implementation-plan.md +655 -655
  103. package/docs/plans/v0.8.1-cli-usability-patch-plan.md +505 -505
  104. package/docs/plans/v0.9-implementation-plan.md +1529 -1529
  105. package/docs/plans/v0.9.1-implementation-plan.md +468 -468
  106. package/docs/reports/v0.10-batch1-visual-change-workflow-foundation.md +102 -0
  107. package/docs/reports/v0.10-batch2-project-composition-check-recording.md +103 -0
  108. package/docs/reports/v0.10-batch3-viewer-visual-change-workspace.md +93 -0
  109. package/docs/reports/v0.10-batch4-actual-frontend-entry.md +59 -0
  110. package/docs/reports/v0.10-batch5-reference-driven-entry.md +238 -0
  111. package/docs/reports/v0.10-batch6-coding-agent-handoff.md +85 -0
  112. package/docs/reports/v0.10-batch7-correction-review-acceptance.md +145 -0
  113. package/docs/reports/v0.10-batch8-integrated-acceptance.md +109 -0
  114. package/docs/reports/v0.10-implementation-completeness-documentation-reconciliation.md +344 -0
  115. package/docs/reports/v0.10-pre-release-readiness.md +120 -0
  116. package/docs/reports/v0.10-release-preparation.md +70 -0
  117. package/docs/reports/v0.10.1-project-check-baseline-context-implementation.md +86 -0
  118. package/docs/reports/v0.7-bounded-fidelity-context-prompt7.md +243 -243
  119. package/docs/reports/v0.7-implementation-completeness-documentation-reconciliation.md +497 -497
  120. package/docs/reports/v0.7-pre-release-readiness.md +337 -337
  121. package/docs/reports/v0.7-reference-binding-prompt5.md +223 -223
  122. package/docs/reports/v0.7-reference-compatibility-prompt4.md +234 -234
  123. package/docs/reports/v0.7-reference-correction-workflow-prompt8.md +222 -222
  124. package/docs/reports/v0.7-reference-fidelity-prompt6.md +216 -216
  125. package/docs/reports/v0.7-reference-foundation-prompt1.md +151 -151
  126. package/docs/reports/v0.7-reference-regions-prompt2.md +195 -195
  127. package/docs/reports/v0.7-reference-requirements-prompt3.md +217 -217
  128. package/docs/reports/v0.7-release-prep.md +423 -423
  129. package/docs/reports/v0.8-binding-fidelity-interaction-batch6.md +279 -279
  130. package/docs/reports/v0.8-bounded-context-correlation-batch7.md +233 -233
  131. package/docs/reports/v0.8-comparison-contract-inspection-batch4.md +279 -279
  132. package/docs/reports/v0.8-evidence-index-readers-batch2.md +247 -247
  133. package/docs/reports/v0.8-implementation-completeness-documentation-reconciliation.md +741 -741
  134. package/docs/reports/v0.8-integrated-viewer-acceptance-batch8.md +128 -128
  135. package/docs/reports/v0.8-observation-svg-inspection-batch3.md +223 -223
  136. package/docs/reports/v0.8-prerelease-readiness-cross-platform-security-code-rot.md +687 -687
  137. package/docs/reports/v0.8-reference-candidate-inspection-batch5.md +232 -232
  138. package/docs/reports/v0.8-viewer-runtime-pwa-batch1.md +278 -278
  139. package/docs/reports/v0.8.1-implementation-completeness-documentation-reconciliation.md +114 -114
  140. package/docs/reports/v0.8.1-prerelease-readiness-cross-platform-security-code-rot.md +170 -170
  141. package/docs/reports/v0.9-architecture-retrieval.md +14 -37
  142. package/docs/reports/v0.9-final-pre-release-readiness.md +209 -209
  143. package/docs/reports/v0.9-final-readiness-corrections.md +530 -530
  144. package/docs/reports/v0.9-pre-release-readiness.md +169 -169
  145. package/docs/reports/v0.9.1-batch1-pwa-hard-gate-isolation.md +359 -359
  146. package/docs/reports/v0.9.1-batch2-hard-gate-validation-integration.md +262 -262
  147. package/docs/reports/v0.9.1-pre-release-readiness.md +206 -206
  148. package/package.json +59 -59
  149. package/dist/viewer/assets/index-BN41MI7m.css +0 -1
  150. package/dist/viewer/assets/index-CkKXnlrI.js +0 -9
@@ -1,191 +1,200 @@
1
- # Project Overview
2
-
3
- The repository contains the complete v0.9.1 release, published as
4
- `@dailephd/my-frontend-observer@0.9.1` under the MIT license. It hardens
5
- independent PWA security acceptance while preserving the structured visual
6
- annotation added to the v0.8.1 project workflow (`init`,
7
- `capture`, `check`, project-aware `view`).
8
-
9
- `my-frontend-observer` is the rendered browser/runtime evidence producer in
10
- the my-dev-kit ecosystem. It addresses the gap between source-level evidence
11
- and what a browser actually renders and supports three durable jobs: human-to-LLM
12
- design communication, safer LLM-assisted frontend changes, and runtime evidence
13
- for coordinated ecosystem work. Human-to-LLM design communication can begin
14
- from the currently rendered frontend or from an approved external visual
15
- reference that describes the desired design.
16
-
17
- The responsibility split is stable:
18
-
19
- - `my-dev-kit` produces static repository/source evidence.
20
- - `my-frontend-observer` produces rendered browser/runtime evidence and owns the
21
- structured external-reference evidence used to compare approved desired-design
22
- intent with an actual browser-rendered candidate.
23
- - `my-dev-kit-orchestrator` coordinates workflows and bounded evidence use.
24
- - `my-dev-kit-lab` owns compatibility, fixtures, experiments, and evaluation.
25
-
26
- ## Current repository state
27
-
28
- v0.1, Runtime Observation Foundation; v0.2, Stable Semantic Targets and
29
- Region Identity; v0.3, Runtime Scrolling, Overflow, and Visibility Behavior;
30
- v0.4, Layout Relationships, Dependency Evidence, and Before/After
31
- Comparison; v0.5, Executable Frontend Contracts and Explicit Change Scope;
32
- v0.6, Bounded Agent Context and Native my-dev-kit Ecosystem Integration;
33
- v0.7, End-to-End Coding-Agent Frontend Change Review; v0.8, Interactive
34
- Local Observation Viewer; v0.8.1, Project Workflow CLI and Human-Readable
35
- Evidence Aliases; and v0.9, Human Visual Annotation and Design-Intent Capture,
36
- are released and published to npm. The current package version is `0.9.1` as
37
- `@dailephd/my-frontend-observer` (observation schema `1.2.0`, comparison schema
38
- `1.0.0`, frontend contract schema `1.0.0`, evaluation artifact schema `1.0.0`,
39
- bounded-agent-context schema `1.0.0`, external-reference schema `1.0.0`,
40
- visual annotation schema `1.0.0`). The released package was validated as a
41
- packed npm tarball in a clean consumer environment across Windows, Linux, and
42
- macOS.
43
-
44
- The released low-level command surface remains artifact-oriented: a real
45
- `observe` command launches Chromium, enforces loopback-only safety, captures
46
- bounded page/target evidence through CSS shorthand, structured semantic targets,
47
- or a bounded scroll scenario, and persists one portable local artifact; a real
48
- `compare` command reads two persisted observations and derives before/after
49
- relationship and difference evidence; `approve-baseline`,
50
- `save-change-contract`, and `evaluate-contract` provide canonical executable
51
- change-scope evaluation; and the v0.7 reference commands import, approve, and
52
- evaluate approved external visual references. See `docs/CURRENT_STATE.md` for
53
- the complete implemented state and release evidence.
54
-
55
- v0.6 adds a programmatic bounded runtime projection plus an explicit
56
- runtime/static correlation boundary (`correlated`/`ambiguous`/
57
- `unavailable`), exported from `src/index.ts` with no new CLI command.
58
-
59
- v0.7 (End-to-End Coding-Agent Frontend Change Review) adds the complete
60
- external-reference architecture: the external-reference artifact foundation
61
- and explicit approval lifecycle (`import-reference`/`approve-reference`),
62
- explicit reference regions and reusable geometry relationships, selected
63
- design requirements/tolerances/reference-evidence adequacy, reference
64
- applicability and candidate-state compatibility, explicit
65
- reference-region-to-runtime-target binding, structured
66
- reference-vs-candidate fidelity evaluation (`evaluate-reference-fidelity`),
67
- its integration into the existing v0.6 bounded-agent-context, and a
68
- controlled, programmatic end-to-end correction workflow
69
- (`prepareReferenceCorrection`/`reviewReferenceCorrectionAttempt`) proven
70
- against real Chromium (success, protected-regression, and multi-attempt
71
- correction-iteration cases). See `docs/CURRENT_STATE.md` for the full
72
- implementation record and
73
- `docs/reports/v0.7-implementation-completeness-documentation-reconciliation.md`
74
- for the completeness audit that preceded release.
75
-
76
- v0.8 (Interactive Local Observation Viewer) is released as package version
77
- `0.8.0` - `my-frontend-observer view` starts a loopback-only Node server
78
- serving a React + TypeScript + Vite viewer (normal browser or installed PWA)
79
- that inspects observations, comparisons, contract results, external
80
- references/candidates with explicit binding cross-selection and on-demand
81
- fidelity evaluation, and, when supplied, a bounded agent context's
82
- adequacy/omissions/truncations/correlation - all through the same canonical
83
- engines used by the CLI, never a second implementation of them. See
84
- `docs/CURRENT_STATE.md`,
85
- `docs/reports/v0.8-implementation-completeness-documentation-reconciliation.md`,
86
- and `docs/reports/v0.8-prerelease-readiness-cross-platform-security-code-rot.md`
87
- for the implementation and release evidence.
88
-
89
- v0.8.1 was a project-workflow CLI usability patch published as
90
- `@dailephd/my-frontend-observer@0.8.1`. It does
91
- not introduce a new evidence model. It adds project configuration,
92
- human-readable aliases, managed project-local Observer state, and a small
93
- high-level `init` / `capture` / `check` / project-aware `view` workflow above
94
- the existing canonical engines. The purpose is to stop making humans and coding
95
- agents repeatedly manage output paths, evidence roots, and long canonical
96
- artifact identifiers during ordinary use. Existing low-level commands remain
97
- supported. The frozen plan is
98
- `docs/plans/v0.8.1-cli-usability-patch-plan.md`.
99
-
100
- The latest published release is v0.9.1. v0.9 added structured
101
- visual annotation to the project-aware viewer for both runtime observations and
102
- external references. People draw marks, explicitly associate them, and confirm
103
- structured intent. Selected confirmed runtime intent can become a normal
104
- per-change contract, and selected confirmed reference intent can become a new
105
- imported external-reference revision. The existing contract and reference
106
- evaluators stay authoritative. It followed the frozen plan in
107
- `docs/plans/v0.9-implementation-plan.md`, grounded by
108
- `docs/reports/v0.9-architecture-retrieval.md`.
109
- The repository-owned deterministic demo and its four tutorial scenarios
110
- (`examples/v09-demo/`, recorded by the external
111
- `@dailephd/my-dev-kit-lab@0.4.9` tool) passed final cross-platform readiness
112
- with the release. They are release support and documentation, not product
113
- behavior, and they are not shipped in the npm package.
114
-
115
- The v0.9.1 maintenance release hardens the
116
- PWA server-down hard acceptance test so the gate is reproducible from a fresh
117
- browser profile and fresh test-owned state. PWA hard/security acceptance no
118
- longer depends on prior test order or persistent browser state, and
119
- `npm run test:security` now also runs the gate by itself through
120
- `npm run test:pwa-hard-gate`. This was a test-isolation correction, not a
121
- production PWA defect. No production behavior changed. The frozen concrete plan
122
- is `docs/plans/v0.9.1-implementation-plan.md`.
123
-
124
- v0.10 remains future and unimplemented and completes the visual human-LLM
125
- workflow on top of the v0.9 annotation model and v0.8.1 high-level acceptance
126
- surface.
127
-
128
- The revised dependency path reaches practical coding-agent use before graphical
129
- interaction and keeps later visual work on the same canonical evidence system:
130
-
131
- ```text
132
- runtime observation and stable identity
133
- → bounded behavior, relationships, comparison, and safe-change contracts
134
- → bounded agent context plus native ecosystem integration (released as 0.6.0)
135
- → text/config-driven coding-agent change review
136
- + external visual-reference evidence foundation
137
- + reference-vs-candidate structured fidelity evaluation
138
- + controlled end-to-end correction workflow (released as 0.7.0)
139
- → interactive viewer with reference/candidate inspection (released as 0.8.0)
140
- → project workflow CLI + human-readable evidence aliases (released as 0.8.1)
141
- → structured visual annotation on runtime screenshots and external references
142
- (released as 0.9.0)
143
- → full visual human-LLM workflow with actual-frontend-driven and
144
- reference-driven entry modes (planned v0.10)
145
- ```
146
-
147
- The implemented reference model is not a second observer or a
148
- screenshot-cloning system. An external reference is desired-design evidence,
149
- not an earlier runtime observation, and reference design vs candidate remains
150
- distinct from before vs after comparison and contract vs candidate evaluation.
151
- Structured geometry, relationships, explicit design intent, applicability
152
- state, provenance, and bounded tolerances remain primary; image similarity may
153
- only supplement them where reliable. Reference-derived executable intent must
154
- reuse the existing requested/expected-dependent/protected/preserved contract
155
- semantics rather than create a second PASS/FAIL taxonomy.
156
-
157
- Viewer and annotation enhance the proven coding-agent workflow; they are not
158
- prerequisites for proving it. The viewer must consume the reference model and
159
- fidelity evidence established before it rather than inventing a UI-only
160
- comparison engine. The implemented v0.8.1 workflow layer likewise resolves project
161
- configuration and human aliases to existing canonical artifacts and services;
162
- it does not replace artifact identity or evaluation semantics.
163
-
164
- Repository-local authorities and navigation:
165
-
166
- - [PROJECT_DESCRIPTION.md](PROJECT_DESCRIPTION.md) contains complete durable
167
- product intent and responsibility boundaries.
168
- - [PROJECT_MILESTONES.md](PROJECT_MILESTONES.md) contains the complete ordered
169
- capability plan and cross-milestone rules.
170
- - [ROADMAP.md](ROADMAP.md) owns version-level direction without prewritten
171
- implementation batches.
172
- - [CURRENT_STATE.md](CURRENT_STATE.md) records current implementation and
173
- release state.
174
- - [plans/v0.8.1-cli-usability-patch-plan.md](plans/v0.8.1-cli-usability-patch-plan.md)
175
- freezes the concrete implementation plan for the v0.8.1 patch.
176
- - [plans/v0.9-implementation-plan.md](plans/v0.9-implementation-plan.md)
177
- freezes the concrete implementation architecture, seven ordered batches,
178
- gates, and validation expectations for v0.9. It is planning authority only;
179
- the v0.9 implementation state is recorded in CURRENT_STATE.md and the
180
- `reports/v0.9-*.md` reports.
181
- - [plans/v0.9.1-implementation-plan.md](plans/v0.9.1-implementation-plan.md)
182
- freezes the bounded maintenance plan for independent PWA hard-gate
183
- reproduction, fresh browser-profile ownership, explicit service-worker/cache
184
- precondition proof, and isolated-gate validation. It does not authorize a
185
- production PWA change unless the corrected experiment demonstrates a real
186
- product defect.
187
- - [reports/v0.9-architecture-retrieval.md](reports/v0.9-architecture-retrieval.md)
188
- preserves the bounded current-source retrieval that grounded the v0.9 plan.
189
-
190
- Historical greenfield artifacts and reports are retained as evidence that an
191
- earlier run overreached into v0.1; they are not current-state authority.
1
+ # Project Overview
2
+
3
+ The repository contains the v0.10.1 release of
4
+ `@dailephd/my-frontend-observer` under the MIT license. It completes the Visual
5
+ Change workflow on the project workflow (`init`, `capture`, `check`, Viewer).
6
+
7
+ `my-frontend-observer` is the rendered browser/runtime evidence producer in
8
+ the my-dev-kit ecosystem. It addresses the gap between source-level evidence
9
+ and what a browser actually renders and supports three durable jobs: human-to-LLM
10
+ design communication, safer LLM-assisted frontend changes, and runtime evidence
11
+ for coordinated ecosystem work. Human-to-LLM design communication can begin
12
+ from the currently rendered frontend or from an approved external visual
13
+ reference that describes the desired design.
14
+
15
+ The responsibility split is stable:
16
+
17
+ - `my-dev-kit` produces static repository/source evidence.
18
+ - `my-frontend-observer` produces rendered browser/runtime evidence and owns the
19
+ structured external-reference evidence used to compare approved desired-design
20
+ intent with an actual browser-rendered candidate.
21
+ - `my-dev-kit-orchestrator` coordinates workflows and bounded evidence use.
22
+ - `my-dev-kit-lab` owns compatibility, fixtures, experiments, and evaluation.
23
+
24
+ ## Current repository state
25
+
26
+ v0.1, Runtime Observation Foundation; v0.2, Stable Semantic Targets and
27
+ Region Identity; v0.3, Runtime Scrolling, Overflow, and Visibility Behavior;
28
+ v0.4, Layout Relationships, Dependency Evidence, and Before/After
29
+ Comparison; v0.5, Executable Frontend Contracts and Explicit Change Scope;
30
+ v0.6, Bounded Agent Context and Native my-dev-kit Ecosystem Integration;
31
+ v0.7, End-to-End Coding-Agent Frontend Change Review; v0.8, Interactive
32
+ Local Observation Viewer; v0.8.1, Project Workflow CLI and Human-Readable
33
+ Evidence Aliases; v0.9, Human Visual Annotation and Design-Intent Capture; and
34
+ v0.10.0, Full Visual Human–LLM Frontend Change Workflow, and v0.10.1, Project
35
+ Check Baseline Context Replay, are released and published to npm. The current
36
+ package version is `0.10.1` as
37
+ `@dailephd/my-frontend-observer` (observation schema `1.2.0`, comparison schema
38
+ `1.0.0`, frontend contract schema `1.0.0`, evaluation artifact schema `1.0.0`,
39
+ bounded-agent-context schema `1.0.0`, external-reference schema `1.0.0`,
40
+ visual annotation schema `1.0.0`, visual-change workflow schema `1.0.0`,
41
+ handoff `1.0.0`; Viewer protocol `1.3.0`). Exact-candidate readiness passed
42
+ on Windows, Linux, and macOS.
43
+
44
+ In v0.10.1, project-aware `check` replays a validated baseline's optional
45
+ scroll and caller-declared state context while project configuration continues
46
+ to own URL, viewport, and targets. See `CURRENT_STATE.md` for release state.
47
+
48
+ The released low-level command surface remains artifact-oriented: a real
49
+ `observe` command launches Chromium, enforces loopback-only safety, captures
50
+ bounded page/target evidence through CSS shorthand, structured semantic targets,
51
+ or a bounded scroll scenario, and persists one portable local artifact; a real
52
+ `compare` command reads two persisted observations and derives before/after
53
+ relationship and difference evidence; `approve-baseline`,
54
+ `save-change-contract`, and `evaluate-contract` provide canonical executable
55
+ change-scope evaluation; and the v0.7 reference commands import, approve, and
56
+ evaluate approved external visual references. See `docs/CURRENT_STATE.md` for
57
+ the complete implemented state and release evidence.
58
+
59
+ v0.6 adds a programmatic bounded runtime projection plus an explicit
60
+ runtime/static correlation boundary (`correlated`/`ambiguous`/
61
+ `unavailable`), exported from `src/index.ts` with no new CLI command.
62
+
63
+ v0.7 (End-to-End Coding-Agent Frontend Change Review) adds the complete
64
+ external-reference architecture: the external-reference artifact foundation
65
+ and explicit approval lifecycle (`import-reference`/`approve-reference`),
66
+ explicit reference regions and reusable geometry relationships, selected
67
+ design requirements/tolerances/reference-evidence adequacy, reference
68
+ applicability and candidate-state compatibility, explicit
69
+ reference-region-to-runtime-target binding, structured
70
+ reference-vs-candidate fidelity evaluation (`evaluate-reference-fidelity`),
71
+ its integration into the existing v0.6 bounded-agent-context, and a
72
+ controlled, programmatic end-to-end correction workflow
73
+ (`prepareReferenceCorrection`/`reviewReferenceCorrectionAttempt`) proven
74
+ against real Chromium (success, protected-regression, and multi-attempt
75
+ correction-iteration cases). See `docs/CURRENT_STATE.md` for the full
76
+ implementation record and
77
+ `docs/reports/v0.7-implementation-completeness-documentation-reconciliation.md`
78
+ for the completeness audit that preceded release.
79
+
80
+ v0.8 (Interactive Local Observation Viewer) is released as package version
81
+ `0.8.0` - `my-frontend-observer view` starts a loopback-only Node server
82
+ serving a React + TypeScript + Vite viewer (normal browser or installed PWA)
83
+ that inspects observations, comparisons, contract results, external
84
+ references/candidates with explicit binding cross-selection and on-demand
85
+ fidelity evaluation, and, when supplied, a bounded agent context's
86
+ adequacy/omissions/truncations/correlation - all through the same canonical
87
+ engines used by the CLI, never a second implementation of them. See
88
+ `docs/CURRENT_STATE.md`,
89
+ `docs/reports/v0.8-implementation-completeness-documentation-reconciliation.md`,
90
+ and `docs/reports/v0.8-prerelease-readiness-cross-platform-security-code-rot.md`
91
+ for the implementation and release evidence.
92
+
93
+ v0.8.1 was a project-workflow CLI usability patch published as
94
+ `@dailephd/my-frontend-observer@0.8.1`. It does
95
+ not introduce a new evidence model. It adds project configuration,
96
+ human-readable aliases, managed project-local Observer state, and a small
97
+ high-level `init` / `capture` / `check` / project-aware `view` workflow above
98
+ the existing canonical engines. The purpose is to stop making humans and coding
99
+ agents repeatedly manage output paths, evidence roots, and long canonical
100
+ artifact identifiers during ordinary use. Existing low-level commands remain
101
+ supported. The frozen plan is
102
+ `docs/plans/v0.8.1-cli-usability-patch-plan.md`.
103
+
104
+ v0.9 added structured
105
+ visual annotation to the project-aware viewer for both runtime observations and
106
+ external references. People draw marks, explicitly associate them, and confirm
107
+ structured intent. Selected confirmed runtime intent can become a normal
108
+ per-change contract, and selected confirmed reference intent can become a new
109
+ imported external-reference revision. The existing contract and reference
110
+ evaluators stay authoritative. It followed the frozen plan in
111
+ `docs/plans/v0.9-implementation-plan.md`, grounded by
112
+ `docs/reports/v0.9-architecture-retrieval.md`.
113
+ The repository-owned deterministic demo and its four tutorial scenarios
114
+ (`examples/v09-demo/`, recorded by the external
115
+ `@dailephd/my-dev-kit-lab@0.4.9` tool) passed final cross-platform readiness
116
+ with the release. They are release support and documentation, not product
117
+ behavior, and they are not shipped in the npm package.
118
+
119
+ The v0.9.1 maintenance release hardened the
120
+ PWA server-down hard acceptance test so the gate is reproducible from a fresh
121
+ browser profile and fresh test-owned state. PWA hard/security acceptance no
122
+ longer depends on prior test order or persistent browser state, and
123
+ `npm run test:security` now also runs the gate by itself through
124
+ `npm run test:pwa-hard-gate`. This was a test-isolation correction, not a
125
+ production PWA defect. No production behavior changed. The frozen concrete plan
126
+ is `docs/plans/v0.9.1-implementation-plan.md`.
127
+
128
+ v0.10.0 completes the Visual Change workflow on top of the v0.9 annotation
129
+ model and v0.8.1 high-level acceptance surface. It supports actual-frontend
130
+ and approved-reference entry, explicit activation, bounded coding-agent
131
+ handoff, immutable correction history, PASS-only human acceptance, and
132
+ separate governance. Installed-package and Viewer support are included.
133
+
134
+ The revised dependency path reaches practical coding-agent use before graphical
135
+ interaction and keeps later visual work on the same canonical evidence system:
136
+
137
+ ```text
138
+ runtime observation and stable identity
139
+ → bounded behavior, relationships, comparison, and safe-change contracts
140
+ → bounded agent context plus native ecosystem integration (released as 0.6.0)
141
+ → text/config-driven coding-agent change review
142
+ + external visual-reference evidence foundation
143
+ + reference-vs-candidate structured fidelity evaluation
144
+ + controlled end-to-end correction workflow (released as 0.7.0)
145
+ → interactive viewer with reference/candidate inspection (released as 0.8.0)
146
+ → project workflow CLI + human-readable evidence aliases (released as 0.8.1)
147
+ → structured visual annotation on runtime screenshots and external references
148
+ (released as 0.9.0)
149
+ → full visual human-LLM workflow with actual-frontend-driven and
150
+ reference-driven entry modes (released as v0.10.0)
151
+ ```
152
+
153
+ The implemented reference model is not a second observer or a
154
+ screenshot-cloning system. An external reference is desired-design evidence,
155
+ not an earlier runtime observation, and reference design vs candidate remains
156
+ distinct from before vs after comparison and contract vs candidate evaluation.
157
+ Structured geometry, relationships, explicit design intent, applicability
158
+ state, provenance, and bounded tolerances remain primary; image similarity may
159
+ only supplement them where reliable. Reference-derived executable intent must
160
+ reuse the existing requested/expected-dependent/protected/preserved contract
161
+ semantics rather than create a second PASS/FAIL taxonomy.
162
+
163
+ Viewer and annotation enhance the proven coding-agent workflow; they are not
164
+ prerequisites for proving it. The viewer must consume the reference model and
165
+ fidelity evidence established before it rather than inventing a UI-only
166
+ comparison engine. The implemented v0.8.1 workflow layer likewise resolves project
167
+ configuration and human aliases to existing canonical artifacts and services;
168
+ it does not replace artifact identity or evaluation semantics.
169
+
170
+ Repository-local authorities and navigation:
171
+
172
+ - [PROJECT_DESCRIPTION.md](PROJECT_DESCRIPTION.md) contains complete durable
173
+ product intent and responsibility boundaries.
174
+ - [PROJECT_MILESTONES.md](PROJECT_MILESTONES.md) contains the complete ordered
175
+ capability plan and cross-milestone rules.
176
+ - [ROADMAP.md](ROADMAP.md) owns version-level direction without prewritten
177
+ implementation batches.
178
+ - [CURRENT_STATE.md](CURRENT_STATE.md) records current implementation and
179
+ release state.
180
+ - [plans/v0.8.1-cli-usability-patch-plan.md](plans/v0.8.1-cli-usability-patch-plan.md)
181
+ freezes the concrete implementation plan for the v0.8.1 patch.
182
+ - [plans/v0.9-implementation-plan.md](plans/v0.9-implementation-plan.md)
183
+ freezes the concrete implementation architecture, seven ordered batches,
184
+ gates, and validation expectations for v0.9. It is planning authority only;
185
+ the v0.9 implementation state is recorded in CURRENT_STATE.md and the
186
+ `reports/v0.9-*.md` reports.
187
+ - [plans/v0.9.1-implementation-plan.md](plans/v0.9.1-implementation-plan.md)
188
+ freezes the bounded maintenance plan for independent PWA hard-gate
189
+ reproduction, fresh browser-profile ownership, explicit service-worker/cache
190
+ precondition proof, and isolated-gate validation. It does not authorize a
191
+ production PWA change unless the corrected experiment demonstrates a real
192
+ product defect.
193
+ - [plans/v0.10-implementation-plan.md](plans/v0.10-implementation-plan.md)
194
+ is the frozen planning authority for the completed v0.10 implementation;
195
+ current evidence and reconciliation are recorded in the v0.10 reports.
196
+ - [reports/v0.9-architecture-retrieval.md](reports/v0.9-architecture-retrieval.md)
197
+ preserves the bounded current-source retrieval that grounded the v0.9 plan.
198
+
199
+ Historical greenfield artifacts and reports are retained as evidence that an
200
+ earlier run overreached into v0.1; they are not current-state authority.
@@ -1,96 +1,100 @@
1
- # Quickstart
2
-
3
- For complete coding-agent features, runtime-to-source repair, shared-component
4
- protection, and ecosystem failure feedback, use the single
5
- [ecosystem workflow guide in my-dev-kit](https://github.com/dailephd/my-dev-kit/blob/main/docs/ECOSYSTEM_DEVELOPMENT_WORKFLOWS.md).
6
- Observer owns the browser evidence and its canonical evaluations. Project tests
7
- own application actions and backend/frontend integration. Orchestrator owns
8
- native lifecycle when selected. Lab supplies applicable assurance separately.
9
- This repository does not maintain another ecosystem-guide copy.
10
-
11
- The common source workflow is:
12
-
13
- ```powershell
14
- node dist/cli.js init --url http://127.0.0.1:3000 --target app=#app
15
- node dist/cli.js capture baseline
16
- # make a frontend change
17
- node dist/cli.js check baseline --json
18
- node dist/cli.js view
19
- ```
20
-
21
- Use `check baseline --json` for a coding agent. It captures a new immutable
22
- candidate, compares it canonically, and evaluates configured acceptance. The
23
- result and exit status are `PASS`/0, `FAIL`/1, `REVIEW_REQUIRED`/2, or `BLOCKED`/3.
24
- Comparison alone returns `REVIEW_REQUIRED`, even when no differences are found.
25
- Configure the applicable contract and/or approved reference through the current
26
- project schema before expecting an acceptance PASS. See
27
- [COMMANDS.md](COMMANDS.md#v081-common-workflow) for the exact fields.
28
-
29
- On a failure, preserve the bounded evidence, correct source externally, and
30
- recheck against the same baseline. Do not replace the baseline, relax protected
31
- requirements, or treat REVIEW_REQUIRED/BLOCKED as success. Observer never edits
32
- source. Canonical IDs remain available in details and provenance but are not
33
- required as ordinary project-command input.
34
-
35
- Prerequisites are Node.js 24 or later and npm. The package identity is:
36
-
37
- ```powershell
38
- npm install --save-dev @dailephd/my-frontend-observer
39
- npx playwright install chromium
40
- ```
41
-
42
- The installed CLI remains `my-frontend-observer`. Use the resolved local binary
43
- or `npx @dailephd/my-frontend-observer` and record its version. For source setup:
44
-
45
- ```powershell
46
- npm install
47
- npx playwright install chromium
48
- npm run build
49
- ```
50
-
51
- The advanced observation workflow remains supported:
52
-
53
- ```powershell
54
- node dist/cli.js observe `
55
- --url http://localhost:3000/ `
56
- --viewport 1280x720 `
57
- --target header=header `
58
- --target main-content=main `
59
- --output observations
60
- ```
61
-
62
- It launches Chromium, captures a screenshot plus bounded page/target evidence,
63
- and writes a portable artifact under `observations/<observation-id>/`.
64
- [COMMANDS.md](COMMANDS.md) documents structured `--targets-file` input, bounded
65
- `--scroll-scenario-file` actions, and declared `--state-file` identity. Declaring
66
- state does not log in, seed data, or execute a user journey. Establish required
67
- application state with the project's actual setup/browser test commands.
68
-
69
- With two observations, `compare --before <root> --after <root> --output
70
- comparisons` derives before/after evidence without launching another browser.
71
- It can report incomparable evidence successfully, so inspect the semantic
72
- result rather than treat advanced-command exit 0 as acceptance.
73
-
74
- `approve-baseline`, `save-change-contract`, and `evaluate-contract` expose the
75
- advanced frontend contract flow. A selected external image additionally uses
76
- `import-reference`, `approve-reference`, and `evaluate-reference-fidelity`.
77
- Reference requirements, applicability, explicit bindings, and protected behavior
78
- remain independent acceptance responsibilities. A raw image import does not
79
- approve a reference or prove every aesthetic requirement. See
80
- [CONTRACTS.md](CONTRACTS.md) and [WORKFLOWS.md](WORKFLOWS.md).
81
-
82
- `my-frontend-observer view --no-open` starts the loopback-only viewer over managed
83
- project evidence. Use `view --root observations --no-open` for standalone roots.
84
- The viewer is inspect-only. Its `--bindings-file` and `--context-file` inputs do
85
- not create a second evaluator or automatic source-owner mapping.
86
-
87
- To validate this repository itself, rather than the target application:
88
-
89
- ```powershell
90
- npm run typecheck
91
- npm run lint
92
- npm test
93
- npm run test:browser
94
- npm run build
95
- npm run check:docs
96
- ```
1
+ # Quickstart
2
+
3
+ For complete coding-agent features, runtime-to-source repair, shared-component
4
+ protection, and ecosystem failure feedback, use the single
5
+ [ecosystem workflow guide in my-dev-kit](https://github.com/dailephd/my-dev-kit/blob/main/docs/ECOSYSTEM_DEVELOPMENT_WORKFLOWS.md).
6
+ Observer owns the browser evidence and its canonical evaluations. Project tests
7
+ own application actions and backend/frontend integration. Orchestrator owns
8
+ native lifecycle when selected. Lab supplies applicable assurance separately.
9
+ This repository does not maintain another ecosystem-guide copy.
10
+
11
+ The common source workflow is:
12
+
13
+ ```powershell
14
+ node dist/cli.js init --url http://127.0.0.1:3000 --target app=#app
15
+ node dist/cli.js capture baseline
16
+ # make a frontend change
17
+ node dist/cli.js check baseline --json
18
+ node dist/cli.js view
19
+ ```
20
+
21
+ Use `check baseline --json` for a coding agent. It captures a new immutable
22
+ candidate, compares it canonically, and evaluates configured acceptance. The
23
+ result and exit status are `PASS`/0, `FAIL`/1, `REVIEW_REQUIRED`/2, or `BLOCKED`/3.
24
+ Comparison alone returns `REVIEW_REQUIRED`, even when no differences are found.
25
+ Configure the applicable contract and/or approved reference through the current
26
+ project schema before expecting an acceptance PASS. See
27
+ [COMMANDS.md](COMMANDS.md#v081-common-workflow) for the exact fields.
28
+
29
+ On a failure, preserve the bounded evidence, correct source externally, and
30
+ recheck against the same baseline. Do not replace the baseline, relax protected
31
+ requirements, or treat REVIEW_REQUIRED/BLOCKED as success. Observer never edits
32
+ source. Canonical IDs remain available in details and provenance but are not
33
+ required as ordinary project-command input.
34
+
35
+ Prerequisites are Node.js 24 or later and npm. The package identity is:
36
+
37
+ ```powershell
38
+ npm install --save-dev @dailephd/my-frontend-observer
39
+ npx playwright install chromium
40
+ ```
41
+
42
+ The installed CLI remains `my-frontend-observer`. Use the resolved local binary
43
+ or `npx @dailephd/my-frontend-observer` and record its version. For source setup:
44
+
45
+ ```powershell
46
+ npm install
47
+ npx playwright install chromium
48
+ npm run build
49
+ ```
50
+
51
+ The advanced observation workflow remains supported:
52
+
53
+ ```powershell
54
+ node dist/cli.js observe `
55
+ --url http://localhost:3000/ `
56
+ --viewport 1280x720 `
57
+ --target header=header `
58
+ --target main-content=main `
59
+ --output observations
60
+ ```
61
+
62
+ It launches Chromium, captures a screenshot plus bounded page/target evidence,
63
+ and writes a portable artifact under `observations/<observation-id>/`.
64
+ [COMMANDS.md](COMMANDS.md) documents structured `--targets-file` input, bounded
65
+ `--scroll-scenario-file` actions, and declared `--state-file` identity. Declaring
66
+ state does not log in, seed data, or execute a user journey. Establish required
67
+ application state with the project's actual setup/browser test commands.
68
+
69
+ With two observations, `compare --before <root> --after <root> --output
70
+ comparisons` derives before/after evidence without launching another browser.
71
+ It can report incomparable evidence successfully, so inspect the semantic
72
+ result rather than treat advanced-command exit 0 as acceptance.
73
+
74
+ `approve-baseline`, `save-change-contract`, and `evaluate-contract` expose the
75
+ advanced frontend contract flow. A selected external image additionally uses
76
+ `import-reference`, `approve-reference`, and `evaluate-reference-fidelity`.
77
+ Reference requirements, applicability, explicit bindings, and protected behavior
78
+ remain independent acceptance responsibilities. A raw image import does not
79
+ approve a reference or prove every aesthetic requirement. See
80
+ [CONTRACTS.md](CONTRACTS.md) and [WORKFLOWS.md](WORKFLOWS.md).
81
+
82
+ `my-frontend-observer view --no-open` starts the loopback-only viewer over managed
83
+ project evidence. The v0.10.0 project-aware Viewer also owns the explicit
84
+ Visual Change workflow: visual entry, activation, handoff, check,
85
+ review/correction, acceptance, and separate
86
+ governance-result recording. Use `view --root observations --no-open` for
87
+ standalone roots; that mode remains inspect-only. The `--bindings-file` and
88
+ `--context-file` inputs do not create a second evaluator or automatic
89
+ source-owner mapping. The installed package includes the Visual Change surface.
90
+
91
+ To validate this repository itself, rather than the target application:
92
+
93
+ ```powershell
94
+ npm run typecheck
95
+ npm run lint
96
+ npm test
97
+ npm run test:browser
98
+ npm run build
99
+ npm run check:docs
100
+ ```