@dailephd/my-frontend-observer 0.9.1 → 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.
- package/CHANGELOG.md +9 -1
- package/README.md +17 -9
- package/dist/application/visualChangeAgentHandoffService.d.ts +28 -0
- package/dist/application/visualChangeAgentHandoffService.js +111 -0
- package/dist/application/visualChangeAgentHandoffService.js.map +1 -0
- package/dist/application/visualChangeProjectWorkflowService.d.ts +95 -0
- package/dist/application/visualChangeProjectWorkflowService.js +376 -0
- package/dist/application/visualChangeProjectWorkflowService.js.map +1 -0
- package/dist/application/visualChangeReviewService.d.ts +50 -0
- package/dist/application/visualChangeReviewService.js +69 -0
- package/dist/application/visualChangeReviewService.js.map +1 -0
- package/dist/application/visualChangeWorkflowPersistenceService.d.ts +26 -0
- package/dist/application/visualChangeWorkflowPersistenceService.js +15 -0
- package/dist/application/visualChangeWorkflowPersistenceService.js.map +1 -0
- package/dist/artifacts/visualChangeWorkflowArtifactReader.d.ts +9 -0
- package/dist/artifacts/visualChangeWorkflowArtifactReader.js +47 -0
- package/dist/artifacts/visualChangeWorkflowArtifactReader.js.map +1 -0
- package/dist/artifacts/visualChangeWorkflowArtifactWriter.d.ts +20 -0
- package/dist/artifacts/visualChangeWorkflowArtifactWriter.js +41 -0
- package/dist/artifacts/visualChangeWorkflowArtifactWriter.js.map +1 -0
- package/dist/cli.js +510 -508
- package/dist/cli.js.map +1 -1
- package/dist/domain/visualChangeAgentHandoff.d.ts +82 -0
- package/dist/domain/visualChangeAgentHandoff.js +80 -0
- package/dist/domain/visualChangeAgentHandoff.js.map +1 -0
- package/dist/domain/visualChangeAgentHandoffSerialization.d.ts +2 -0
- package/dist/domain/visualChangeAgentHandoffSerialization.js +11 -0
- package/dist/domain/visualChangeAgentHandoffSerialization.js.map +1 -0
- package/dist/domain/visualChangeCycle.d.ts +8 -0
- package/dist/domain/visualChangeCycle.js +7 -0
- package/dist/domain/visualChangeCycle.js.map +1 -0
- package/dist/domain/visualChangeWorkflow.d.ts +125 -0
- package/dist/domain/visualChangeWorkflow.js +109 -0
- package/dist/domain/visualChangeWorkflow.js.map +1 -0
- package/dist/domain/visualChangeWorkflowIdentity.d.ts +5 -0
- package/dist/domain/visualChangeWorkflowIdentity.js +24 -0
- package/dist/domain/visualChangeWorkflowIdentity.js.map +1 -0
- package/dist/index.d.ts +21 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/projectWorkflow/projectPaths.d.ts +3 -0
- package/dist/projectWorkflow/projectPaths.js +7 -0
- package/dist/projectWorkflow/projectPaths.js.map +1 -1
- package/dist/viewer/assets/index-DglJ6f28.css +1 -0
- package/dist/viewer/assets/index-DsODREY5.js +9 -0
- package/dist/viewer/index.html +2 -2
- package/dist/viewer/sw.js +1 -1
- package/dist/viewerServer/evidence/classify.d.ts +3 -1
- package/dist/viewerServer/evidence/classify.js +10 -0
- package/dist/viewerServer/evidence/classify.js.map +1 -1
- package/dist/viewerServer/evidence/handles.js +1 -0
- package/dist/viewerServer/evidence/handles.js.map +1 -1
- package/dist/viewerServer/evidence/projection.d.ts +5 -0
- package/dist/viewerServer/evidence/projection.js +19 -0
- package/dist/viewerServer/evidence/projection.js.map +1 -1
- package/dist/viewerServer/evidence/visualChangeWorkflowView.d.ts +31 -0
- package/dist/viewerServer/evidence/visualChangeWorkflowView.js +36 -0
- package/dist/viewerServer/evidence/visualChangeWorkflowView.js.map +1 -0
- package/dist/viewerServer/httpServer.js +323 -1
- package/dist/viewerServer/httpServer.js.map +1 -1
- package/dist/viewerServer/referenceApproval.d.ts +22 -0
- package/dist/viewerServer/referenceApproval.js +42 -0
- package/dist/viewerServer/referenceApproval.js.map +1 -0
- package/dist/viewerServer/referenceVisualChangeAuthoring.d.ts +28 -0
- package/dist/viewerServer/referenceVisualChangeAuthoring.js +134 -0
- package/dist/viewerServer/referenceVisualChangeAuthoring.js.map +1 -0
- package/dist/viewerServer/runtimeVisualChangeAuthoring.d.ts +33 -0
- package/dist/viewerServer/runtimeVisualChangeAuthoring.js +81 -0
- package/dist/viewerServer/runtimeVisualChangeAuthoring.js.map +1 -0
- package/dist/viewerServer/visualChangeAuthoring.d.ts +46 -0
- package/dist/viewerServer/visualChangeAuthoring.js +63 -0
- package/dist/viewerServer/visualChangeAuthoring.js.map +1 -0
- package/dist/viewerServer/visualChangeHandoff.d.ts +23 -0
- package/dist/viewerServer/visualChangeHandoff.js +31 -0
- package/dist/viewerServer/visualChangeHandoff.js.map +1 -0
- package/dist/viewerServer/visualChangeReview.d.ts +30 -0
- package/dist/viewerServer/visualChangeReview.js +46 -0
- package/dist/viewerServer/visualChangeReview.js.map +1 -0
- package/docs/ARCHITECTURE.md +17 -5
- package/docs/CI_CD.md +12 -1
- package/docs/COMMANDS.md +18 -4
- package/docs/CONTRACTS.md +38 -4
- package/docs/CURRENT_STATE.md +23 -9
- package/docs/PROJECT_OVERVIEW.md +21 -16
- package/docs/QUICKSTART.md +7 -3
- package/docs/RELEASE.md +15 -12
- package/docs/ROADMAP.md +6 -5
- package/docs/SECURITY.md +25 -3
- package/docs/WORKFLOWS.md +28 -2
- package/docs/plans/v0.10-implementation-plan.md +1509 -0
- package/docs/reports/v0.10-batch1-visual-change-workflow-foundation.md +102 -0
- package/docs/reports/v0.10-batch2-project-composition-check-recording.md +103 -0
- package/docs/reports/v0.10-batch3-viewer-visual-change-workspace.md +93 -0
- package/docs/reports/v0.10-batch4-actual-frontend-entry.md +59 -0
- package/docs/reports/v0.10-batch5-reference-driven-entry.md +238 -0
- package/docs/reports/v0.10-batch6-coding-agent-handoff.md +85 -0
- package/docs/reports/v0.10-batch7-correction-review-acceptance.md +145 -0
- package/docs/reports/v0.10-batch8-integrated-acceptance.md +109 -0
- package/docs/reports/v0.10-implementation-completeness-documentation-reconciliation.md +344 -0
- package/docs/reports/v0.10-pre-release-readiness.md +120 -0
- package/docs/reports/v0.10-release-preparation.md +70 -0
- package/package.json +1 -1
- package/dist/viewer/assets/index-BN41MI7m.css +0 -1
- package/dist/viewer/assets/index-CkKXnlrI.js +0 -9
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Architecture
|
|
2
2
|
|
|
3
|
+
## v0.10 visual workflow boundaries
|
|
4
|
+
|
|
5
|
+
`VisualChangeWorkflowArtifact` (`1.0.0`) is the only new persisted v0.10
|
|
6
|
+
family. It owns frozen scope, explicit activation/restoration, immutable
|
|
7
|
+
attempt and review revisions, and optional references to governance results.
|
|
8
|
+
The Viewer is the human workflow entry; `checkProject` remains the canonical
|
|
9
|
+
evaluator. `VisualChangeAgentHandoff` (`1.0.0`) is a generated, non-persisted
|
|
10
|
+
transfer contract. An external human or coding agent edits source. Optional
|
|
11
|
+
orchestrator metadata is traceability only and Observer never imports or runs
|
|
12
|
+
the orchestrator. Human acceptance is separate from baseline/reference
|
|
13
|
+
governance and never rewrites prior workflow evidence.
|
|
14
|
+
|
|
3
15
|
## v0.8.1 project workflow
|
|
4
16
|
|
|
5
17
|
Versioned project configuration (`1.0.0` compatibility plus current `1.1.0`
|
|
@@ -21,7 +33,7 @@ the workflow result remain in memory/presentation.
|
|
|
21
33
|
## Current package architecture
|
|
22
34
|
|
|
23
35
|
The current repository is one published TypeScript ESM package
|
|
24
|
-
(`@dailephd/my-frontend-observer@0.9.
|
|
36
|
+
(`@dailephd/my-frontend-observer@0.9.1`). The CLI remains
|
|
25
37
|
`my-frontend-observer`; the npm scope does not rename the product or artifact
|
|
26
38
|
identities.
|
|
27
39
|
|
|
@@ -369,7 +381,7 @@ lab code in this repository - those remain separate sibling-repository
|
|
|
369
381
|
responsibilities per the Milestone 6 ownership split in
|
|
370
382
|
`docs/PROJECT_MILESTONES.md`.
|
|
371
383
|
|
|
372
|
-
## v0.7
|
|
384
|
+
## v0.7-v0.10 reference-evidence architecture constraints
|
|
373
385
|
|
|
374
386
|
The external visual-reference capability (v0.7) is released as package
|
|
375
387
|
version `0.7.0` - see "v0.7 Prompt 1" through "v0.7 Prompt 8" below for the
|
|
@@ -378,9 +390,9 @@ extends the existing v0.1-v0.6 evidence architecture rather than becoming a
|
|
|
378
390
|
UI-only feature or a parallel visual-comparison stack. v0.8 (interactive
|
|
379
391
|
viewer) is released as package version `0.8.0`. v0.9 (structured visual
|
|
380
392
|
annotation) is released as package version `0.9.0` - see "v0.9 visual
|
|
381
|
-
annotation architecture" below. v0.10 (full graphical human-LLM
|
|
382
|
-
|
|
383
|
-
|
|
393
|
+
annotation architecture" below. v0.10 (full graphical human-LLM workflow) is
|
|
394
|
+
implemented and documentation-reconciled but remains unreleased. The
|
|
395
|
+
constraints below apply to both v0.9 and v0.10.
|
|
384
396
|
|
|
385
397
|
The evidence domains remain distinct:
|
|
386
398
|
|
package/docs/CI_CD.md
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
# CI/CD
|
|
2
2
|
|
|
3
|
-
CI interprets `check` as PASS `0`, FAIL `1`, REVIEW_REQUIRED `2`, or BLOCKED `3`. The
|
|
3
|
+
CI interprets `check` as PASS `0`, FAIL `1`, REVIEW_REQUIRED `2`, or BLOCKED `3`. The current package is `@dailephd/my-frontend-observer@0.10.0`; its CLI remains `my-frontend-observer`. Packed readiness installs one exact tarball and runs `runPackedViewerSmoke.mjs` as the single project/viewer smoke owner for `init`, `capture`, bounded `check --json` REVIEW_REQUIRED and unchanged-contract FAIL-to-PASS, alias-aware project `view`, and viewer security. `runPackedObservationSmoke.mjs` remains the lower-level legacy observation smoke.
|
|
4
|
+
|
|
5
|
+
The same matrix now also runs `runPackedV010WorkflowSmoke.mjs`. It installs the
|
|
6
|
+
same SHA-verified candidate into a clean consumer and exercises installed
|
|
7
|
+
actual/reference workflow creation, activation, handoff, immutable correction
|
|
8
|
+
attempts, PASS-only acceptance, project-aware Viewer discovery, and standalone
|
|
9
|
+
read-only behavior. Its bounded summary is uploaded with the existing matrix
|
|
10
|
+
summary artifact. The candidate job still owns exactly one `npm pack`; no
|
|
11
|
+
second v0.10 candidate or matrix exists. Formal v0.10 exact-candidate readiness
|
|
12
|
+
passed on Windows, Linux, and macOS.
|
|
13
|
+
All four packed smokes, security checks, and PWA gates passed against the same
|
|
14
|
+
candidate. Run 35789033295 records that readiness result.
|
|
4
15
|
|
|
5
16
|
## Gate isolation invariant
|
|
6
17
|
|
package/docs/COMMANDS.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Commands
|
|
2
2
|
|
|
3
|
+
## v0.10 visual workflow operations
|
|
4
|
+
|
|
5
|
+
v0.10 adds no CLI command. Project-aware `view` exposes the Visual changes
|
|
6
|
+
workspace for actual/reference entry, explicit activation, bounded handoff,
|
|
7
|
+
Run check, correction/review, acceptance, governance-result recording, and
|
|
8
|
+
explicit restore. These are guarded local HTTP/UI actions backed by canonical
|
|
9
|
+
application owners, not new command-line subcommands. Standalone `view --root`
|
|
10
|
+
remains inspection-only.
|
|
11
|
+
|
|
12
|
+
Every handoff names `check <baseline> --json` as the exact post-edit machine
|
|
13
|
+
operation. It captures a fresh candidate and runs the existing canonical
|
|
14
|
+
comparison, contract, and configured reference-fidelity owners.
|
|
15
|
+
|
|
3
16
|
## v0.8.1 common workflow
|
|
4
17
|
|
|
5
18
|
`init --url <loopback-url> [--viewport WIDTHxHEIGHT] [--target id=selector ... | --targets-file file] [--default-baseline alias] [--replace]` creates schema-`1.1.0` project configuration; schema `1.0.0` remains readable and forbids `acceptance`. Schema `1.1.0` may add exactly:
|
|
@@ -948,12 +961,13 @@ Options:
|
|
|
948
961
|
- `--help` — show `view` usage.
|
|
949
962
|
|
|
950
963
|
The server binds only to `127.0.0.1` (never `0.0.0.0`), serves only the
|
|
951
|
-
built viewer application assets plus
|
|
964
|
+
built viewer application assets plus bounded `/api/*`
|
|
952
965
|
endpoints described above, and never exposes the supplied evidence root as a
|
|
953
966
|
generic static directory or arbitrary filesystem path. With `--root` it
|
|
954
|
-
accepts no write methods and writes nothing. Without `--root`, the
|
|
955
|
-
|
|
956
|
-
|
|
967
|
+
accepts no write methods and writes nothing. Without `--root`, the guarded
|
|
968
|
+
project-aware authoring routes create only new immutable artifacts and workflow
|
|
969
|
+
revisions through canonical owners; they never edit target source or rewrite
|
|
970
|
+
existing evidence. On success,
|
|
957
971
|
prints the viewer URL and keeps running (serving the viewer) until
|
|
958
972
|
interrupted. On invalid syntax, a missing/non-directory `--root`, an
|
|
959
973
|
invalid `--port`, an invalid `--bindings-file`, an invalid `--context-file`
|
package/docs/CONTRACTS.md
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# Contracts
|
|
2
2
|
|
|
3
|
+
## Visual-change workflow artifact (`1.0.0`, v0.10 Batch 1)
|
|
4
|
+
|
|
5
|
+
`my-frontend-observer/visual-change-workflow` is the immutable Observer-owned history envelope for one frozen visual-change request. It records a deterministic `visualChangeRequestId`, a fresh `visualChangeWorkflowId`, optional forward-only `supersedesVisualChangeWorkflowId`, exact references to existing canonical evidence, zero to twenty bounded attempt records, optional activation/governance result references, producer metadata, and creation provenance.
|
|
6
|
+
|
|
7
|
+
The two entry modes are exactly `actual-frontend` and `reference`. Reference mode stores validated explicit runtime binding declarations in canonical `bindings.json`; the manifest pins its SHA-256 and declaration count. Actual mode never writes that file. Project-relative evidence references must remain contained portable paths; source artifacts and media are referenced rather than copied.
|
|
8
|
+
|
|
9
|
+
Request identity hashes semantic scope only. It excludes timestamps and operational storage locations. Workflow instance identity is fresh for every explicit persistence. Attempt identity is deterministic over the visual-change request ID and candidate observation ID. Human review state is exactly `pending`, `correction-requested`, `accepted`, or `abandoned`; this foundation validates structure but does not implement the later acceptance rule or execute checks.
|
|
10
|
+
|
|
11
|
+
The v0.10 Batch 2 application composition explicitly activates either the frozen per-change contract or the frozen approved reference and workflow-owned bindings in project acceptance. Activation and restoration preserve unrelated configuration, use compensating atomic writes across mutable project configuration and immutable workflow revisions, and refuse acceptance drift. A workflow check resolves an alias only when its catalog identity and artifact location exactly match the frozen baseline, then invokes the existing `checkProject` owner once. Only a canonical result containing both baseline and candidate summaries can append a pending attempt revision; the snapshot is a bounded direct projection of that result and does not repeat evaluation.
|
|
12
|
+
|
|
13
|
+
The v0.10 Batch 3 Viewer exposes bounded workflow inspection at `GET /api/visual-changes/:handle/view` in both standalone and project-aware sessions. Create, activate, check, and restore POST operations are project-aware only, reuse the existing in-memory authoring capability and request guards, accept no filesystem paths, and delegate to the Batch 2 application service. Every new response is `no-store`. Successful immutable mutations return the exact new workflow ID so the Viewer can refresh and reselect that revision without guessing. The Viewer protocol remains `1.3.0`.
|
|
14
|
+
|
|
15
|
+
The v0.10 Batch 4 actual-frontend entry route promotes only explicitly selected, saved, confirmed, canonically promotable runtime intent without activating project acceptance. It freezes the exact resulting contract instance with the saved annotation, source observation, and configured persistent baseline contract through the Batch 2 workflow-creation owner. Repeated equivalent starts share `contractRequestId` while receiving fresh contract, visual-change request, and workflow instance identities. Activation remains a later explicit workflow action.
|
|
16
|
+
|
|
17
|
+
Reference entry freezes only an exact approved reference, an annotation authored
|
|
18
|
+
against that exact instance, an exact baseline observation, and explicitly
|
|
19
|
+
authored valid bindings. Adequacy, compatibility, complete required-region
|
|
20
|
+
coverage, and canonical binding evaluation fail closed. Imported references,
|
|
21
|
+
inferred bindings, and session bindings are not executable workflow scope.
|
|
22
|
+
|
|
23
|
+
`VisualChangeAgentHandoff` uses handoff kind
|
|
24
|
+
`my-frontend-observer/visual-change-agent-handoff` and version `1.0.0`. It is a
|
|
25
|
+
bounded non-artifact transfer contract and is never discovered or persisted as
|
|
26
|
+
Observer evidence. It includes confirmed scope, Observer-owned bounded context,
|
|
27
|
+
optional unchanged supplemental context, the exact post-edit check instruction,
|
|
28
|
+
and optional non-authoritative orchestrator correlation.
|
|
29
|
+
|
|
30
|
+
The current cycle is derived from the latest attempt. A pending attempt blocks
|
|
31
|
+
another check or handoff until explicit correction, acceptance, or abandonment.
|
|
32
|
+
Only the latest canonical PASS may be accepted. Review changes only the latest
|
|
33
|
+
attempt's review object in a fresh workflow revision. Governance references may
|
|
34
|
+
be recorded only after acceptance and only for already-persisted canonical
|
|
35
|
+
approval results; they do not perform approval or change project configuration.
|
|
36
|
+
No existing evidence schema changed for v0.10.
|
|
37
|
+
|
|
3
38
|
## Current contracts
|
|
4
39
|
|
|
5
40
|
The observation artifact contract is published in the current
|
|
@@ -490,7 +525,7 @@ blockers; on the canonical worktree, `npm run typecheck`, `npm run lint`,
|
|
|
490
525
|
`npm test` (627 tests), `npm run test:browser` (120 tests), `npm run
|
|
491
526
|
test:security`, `npm run build`, and `npm run check:docs` all pass.
|
|
492
527
|
|
|
493
|
-
## v0.7 external visual-reference contract direction (
|
|
528
|
+
## v0.7 external visual-reference contract direction (preserved through implemented, unreleased v0.10)
|
|
494
529
|
|
|
495
530
|
External visual-reference support is released as package version `0.7.0`
|
|
496
531
|
(see "v0.7 Prompt 1" through "v0.7 Prompt 8" below for the exact contract).
|
|
@@ -498,9 +533,8 @@ The exact public type names, artifact kinds, schema versions, persistence
|
|
|
498
533
|
layout, and command/programmatic entry points were designed during v0.7
|
|
499
534
|
implementation from current repository precedent, following the constraints
|
|
500
535
|
below. v0.8 (released as package version `0.8.0` - see
|
|
501
|
-
`docs/CURRENT_STATE.md`) has preserved them. v0.9
|
|
502
|
-
|
|
503
|
-
preserve them.
|
|
536
|
+
`docs/CURRENT_STATE.md`) has preserved them. v0.9 is released and preserves
|
|
537
|
+
them. The implemented, unreleased v0.10 workflow preserves them too.
|
|
504
538
|
|
|
505
539
|
**Distinct evidence domain**: an external reference is desired-design evidence,
|
|
506
540
|
not an `ObservationArtifact` and not the "before" side of a v0.4
|
package/docs/CURRENT_STATE.md
CHANGED
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
# Current State
|
|
2
2
|
|
|
3
|
-
v0.
|
|
3
|
+
v0.10.0 is the current release of `@dailephd/my-frontend-observer`.
|
|
4
|
+
Formal Windows, Linux, and macOS exact-candidate readiness, security checks,
|
|
5
|
+
and PWA gates passed before release. The package version is `0.10.0`.
|
|
6
|
+
|
|
7
|
+
The full Visual Change workflow supports actual-frontend and approved-reference
|
|
8
|
+
entry, structured intent, explicit activation, bounded coding-agent handoff,
|
|
9
|
+
immutable check attempts and correction, PASS-only human acceptance, and
|
|
10
|
+
separate governance. The Viewer discovers installed-package workflow evidence.
|
|
11
|
+
Observer never edits source or performs automatic approval. Schemas remain
|
|
12
|
+
independently versioned: observation `1.2.0`, comparison `1.0.0`, frontend
|
|
13
|
+
contract `1.0.0`, evaluation `1.0.0`, bounded-agent-context `1.0.0`,
|
|
14
|
+
external-reference `1.0.0`, visual annotation `1.0.0`, visual-change workflow
|
|
15
|
+
`1.0.0`, handoff `1.0.0`; Viewer protocol remains `1.3.0`.
|
|
4
16
|
v0.9 (Human Visual Annotation and Design-Intent Capture) adds structured visual
|
|
5
17
|
annotation to the project-aware viewer. It passed integrated real-Chromium
|
|
6
18
|
acceptance and final exact-candidate pre-release readiness on Windows, Linux
|
|
@@ -1195,14 +1207,15 @@ npm package.
|
|
|
1195
1207
|
implemented.) A CLI surface for Prompt 8's correction workflow specifically
|
|
1196
1208
|
remains unimplemented by design (programmatic-only, library-level use is
|
|
1197
1209
|
the current supported entry point) - see "v0.7 Prompt 8 status" above.
|
|
1198
|
-
The full graphical human-LLM workflow
|
|
1199
|
-
|
|
1200
|
-
released as `0.9.0` - see "v0.9 status" above.
|
|
1210
|
+
The full graphical human-LLM workflow is released as `0.10.0`. Structured
|
|
1211
|
+
visual annotation (v0.9) is
|
|
1212
|
+
implemented and released as `0.9.0` - see "v0.9 status" above.
|
|
1201
1213
|
|
|
1202
1214
|
## Next target
|
|
1203
1215
|
|
|
1204
|
-
v0.1-v0.
|
|
1205
|
-
`0.3.0`, `0.4.0`, `0.5.0`, `0.6.0`, `0.7.0`, `0.8.0`, `0.8.1`, `0.9.0
|
|
1216
|
+
v0.1-v0.10 are implemented, validated, and released (`0.1.0`, `0.2.0`,
|
|
1217
|
+
`0.3.0`, `0.4.0`, `0.5.0`, `0.6.0`, `0.7.0`, `0.8.0`, `0.8.1`, `0.9.0`,
|
|
1218
|
+
`0.9.1`, `0.10.0`). v0.7 (End-to-End
|
|
1206
1219
|
Coding-Agent Frontend Change Review) is fully implemented and released: the
|
|
1207
1220
|
external-reference artifact foundation, explicit reference
|
|
1208
1221
|
regions/relationships, selected design requirements/tolerance
|
|
@@ -1233,6 +1246,7 @@ for the completeness audit, and
|
|
|
1233
1246
|
for the cross-platform readiness validation that preceded this release.
|
|
1234
1247
|
|
|
1235
1248
|
v0.9 (structured visual annotation) is released as
|
|
1236
|
-
`@dailephd/my-frontend-observer@0.9.0` - see "v0.9 status" above.
|
|
1237
|
-
|
|
1238
|
-
|
|
1249
|
+
`@dailephd/my-frontend-observer@0.9.0` - see "v0.9 status" above. v0.10.0 is
|
|
1250
|
+
the current release. Its formal exact-candidate readiness passed on Windows,
|
|
1251
|
+
Linux, and macOS, including installed-package, security, and PWA gates. See
|
|
1252
|
+
`docs/reports/v0.10-release-preparation.md` for release-preparation evidence.
|
package/docs/PROJECT_OVERVIEW.md
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# Project Overview
|
|
2
2
|
|
|
3
|
-
The repository contains the
|
|
4
|
-
`@dailephd/my-frontend-observer
|
|
5
|
-
|
|
6
|
-
annotation added to the v0.8.1 project workflow (`init`,
|
|
7
|
-
`capture`, `check`, project-aware `view`).
|
|
3
|
+
The repository contains the v0.10.0 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).
|
|
8
6
|
|
|
9
7
|
`my-frontend-observer` is the rendered browser/runtime evidence producer in
|
|
10
8
|
the my-dev-kit ecosystem. It addresses the gap between source-level evidence
|
|
@@ -32,14 +30,15 @@ Comparison; v0.5, Executable Frontend Contracts and Explicit Change Scope;
|
|
|
32
30
|
v0.6, Bounded Agent Context and Native my-dev-kit Ecosystem Integration;
|
|
33
31
|
v0.7, End-to-End Coding-Agent Frontend Change Review; v0.8, Interactive
|
|
34
32
|
Local Observation Viewer; v0.8.1, Project Workflow CLI and Human-Readable
|
|
35
|
-
Evidence Aliases;
|
|
36
|
-
|
|
33
|
+
Evidence Aliases; v0.9, Human Visual Annotation and Design-Intent Capture; and
|
|
34
|
+
v0.10.0, Full Visual Human–LLM Frontend Change Workflow, are released and
|
|
35
|
+
published to npm. The current package version is `0.10.0` as
|
|
37
36
|
`@dailephd/my-frontend-observer` (observation schema `1.2.0`, comparison schema
|
|
38
37
|
`1.0.0`, frontend contract schema `1.0.0`, evaluation artifact schema `1.0.0`,
|
|
39
38
|
bounded-agent-context schema `1.0.0`, external-reference schema `1.0.0`,
|
|
40
|
-
visual annotation schema `1.0.0
|
|
41
|
-
|
|
42
|
-
macOS.
|
|
39
|
+
visual annotation schema `1.0.0`, visual-change workflow schema `1.0.0`,
|
|
40
|
+
handoff `1.0.0`; Viewer protocol `1.3.0`). Exact-candidate readiness passed
|
|
41
|
+
on Windows, Linux, and macOS.
|
|
43
42
|
|
|
44
43
|
The released low-level command surface remains artifact-oriented: a real
|
|
45
44
|
`observe` command launches Chromium, enforces loopback-only safety, captures
|
|
@@ -97,7 +96,7 @@ artifact identifiers during ordinary use. Existing low-level commands remain
|
|
|
97
96
|
supported. The frozen plan is
|
|
98
97
|
`docs/plans/v0.8.1-cli-usability-patch-plan.md`.
|
|
99
98
|
|
|
100
|
-
|
|
99
|
+
v0.9 added structured
|
|
101
100
|
visual annotation to the project-aware viewer for both runtime observations and
|
|
102
101
|
external references. People draw marks, explicitly associate them, and confirm
|
|
103
102
|
structured intent. Selected confirmed runtime intent can become a normal
|
|
@@ -112,7 +111,7 @@ The repository-owned deterministic demo and its four tutorial scenarios
|
|
|
112
111
|
with the release. They are release support and documentation, not product
|
|
113
112
|
behavior, and they are not shipped in the npm package.
|
|
114
113
|
|
|
115
|
-
The v0.9.1 maintenance release
|
|
114
|
+
The v0.9.1 maintenance release hardened the
|
|
116
115
|
PWA server-down hard acceptance test so the gate is reproducible from a fresh
|
|
117
116
|
browser profile and fresh test-owned state. PWA hard/security acceptance no
|
|
118
117
|
longer depends on prior test order or persistent browser state, and
|
|
@@ -121,9 +120,11 @@ longer depends on prior test order or persistent browser state, and
|
|
|
121
120
|
production PWA defect. No production behavior changed. The frozen concrete plan
|
|
122
121
|
is `docs/plans/v0.9.1-implementation-plan.md`.
|
|
123
122
|
|
|
124
|
-
v0.10
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
v0.10.0 completes the Visual Change workflow on top of the v0.9 annotation
|
|
124
|
+
model and v0.8.1 high-level acceptance surface. It supports actual-frontend
|
|
125
|
+
and approved-reference entry, explicit activation, bounded coding-agent
|
|
126
|
+
handoff, immutable correction history, PASS-only human acceptance, and
|
|
127
|
+
separate governance. Installed-package and Viewer support are included.
|
|
127
128
|
|
|
128
129
|
The revised dependency path reaches practical coding-agent use before graphical
|
|
129
130
|
interaction and keeps later visual work on the same canonical evidence system:
|
|
@@ -141,7 +142,8 @@ runtime observation and stable identity
|
|
|
141
142
|
→ structured visual annotation on runtime screenshots and external references
|
|
142
143
|
(released as 0.9.0)
|
|
143
144
|
→ full visual human-LLM workflow with actual-frontend-driven and
|
|
144
|
-
reference-driven entry modes (
|
|
145
|
+
reference-driven entry modes (implemented, documentation-reconciled,
|
|
146
|
+
unreleased v0.10)
|
|
145
147
|
```
|
|
146
148
|
|
|
147
149
|
The implemented reference model is not a second observer or a
|
|
@@ -184,6 +186,9 @@ Repository-local authorities and navigation:
|
|
|
184
186
|
precondition proof, and isolated-gate validation. It does not authorize a
|
|
185
187
|
production PWA change unless the corrected experiment demonstrates a real
|
|
186
188
|
product defect.
|
|
189
|
+
- [plans/v0.10-implementation-plan.md](plans/v0.10-implementation-plan.md)
|
|
190
|
+
is the frozen planning authority for the completed v0.10 implementation;
|
|
191
|
+
current evidence and reconciliation are recorded in the v0.10 reports.
|
|
187
192
|
- [reports/v0.9-architecture-retrieval.md](reports/v0.9-architecture-retrieval.md)
|
|
188
193
|
preserves the bounded current-source retrieval that grounded the v0.9 plan.
|
|
189
194
|
|
package/docs/QUICKSTART.md
CHANGED
|
@@ -80,9 +80,13 @@ approve a reference or prove every aesthetic requirement. See
|
|
|
80
80
|
[CONTRACTS.md](CONTRACTS.md) and [WORKFLOWS.md](WORKFLOWS.md).
|
|
81
81
|
|
|
82
82
|
`my-frontend-observer view --no-open` starts the loopback-only viewer over managed
|
|
83
|
-
project evidence.
|
|
84
|
-
|
|
85
|
-
|
|
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.
|
|
86
90
|
|
|
87
91
|
To validate this repository itself, rather than the target application:
|
|
88
92
|
|
package/docs/RELEASE.md
CHANGED
|
@@ -1,26 +1,29 @@
|
|
|
1
1
|
# Release
|
|
2
2
|
|
|
3
|
-
`v0.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
`v0.10.0` (Full Visual Human–LLM Frontend Change Workflow) is the current
|
|
4
|
+
release state. Formal exact-candidate readiness passed on Windows, Linux, and
|
|
5
|
+
macOS, including installed-package workflow smokes and security/PWA gates.
|
|
6
|
+
|
|
7
|
+
`v0.9.1` (PWA Hard-Gate Isolation and Reproducible Security Acceptance) is the
|
|
8
|
+
previous maintenance release, published to npm as
|
|
9
|
+
`@dailephd/my-frontend-observer`. It hardened isolated PWA security acceptance
|
|
10
|
+
without changing production behavior.
|
|
11
11
|
|
|
12
12
|
The CLI remains `my-frontend-observer`; package identity and product identity
|
|
13
13
|
are intentionally distinct. Canonical artifact schemas remain versioned
|
|
14
14
|
independently from the npm package version.
|
|
15
15
|
|
|
16
16
|
Observation, comparison, frontend contract, evaluation artifact,
|
|
17
|
-
bounded-agent-context, external-reference, visual annotation,
|
|
18
|
-
|
|
17
|
+
bounded-agent-context, external-reference, visual annotation,
|
|
18
|
+
visual-change-workflow, handoff, Viewer protocol, and package version all
|
|
19
|
+
remain separate: package version is `0.10.0`; observation schema is
|
|
19
20
|
`1.2.0`, comparison schema is `1.0.0`, frontend contract schema is `1.0.0`,
|
|
20
21
|
evaluation artifact schema is `1.0.0`, bounded-agent-context schema is
|
|
21
22
|
`1.0.0`, external-reference schema is `1.0.0`, and visual annotation schema is
|
|
22
|
-
`1.0.0
|
|
23
|
-
|
|
23
|
+
`1.0.0`, visual-change-workflow schema is `1.0.0`, handoff version is `1.0.0`,
|
|
24
|
+
and Viewer protocol is `1.3.0` - none changes automatically with the package
|
|
25
|
+
version. v0.9 introduced the visual annotation schema and bumped no existing
|
|
26
|
+
schema.
|
|
24
27
|
|
|
25
28
|
Prior releases: `v0.8.1` (Project Workflow CLI and Human-Readable Evidence
|
|
26
29
|
Aliases), `v0.8.0` (Interactive Local Observation Viewer), `v0.7.0` (End-to-End
|
package/docs/ROADMAP.md
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
# Roadmap
|
|
2
2
|
|
|
3
|
-
v0.
|
|
4
|
-
|
|
5
|
-
corrects the PWA hard-gate test-isolation defect discovered after the v0.9.0
|
|
6
|
-
release. No production PWA regression has been demonstrated. v0.10 remains
|
|
7
|
-
future work.
|
|
3
|
+
Current release: v0.10.0, Full Visual Human–LLM Frontend Change Workflow.
|
|
4
|
+
The v0.9.1 PWA hard-gate isolation maintenance release is preserved in history.
|
|
8
5
|
|
|
9
6
|
This is a version-level specification, not an implementation checklist.
|
|
10
7
|
Concrete steps and sequencing are designed only when a version begins, after
|
|
@@ -944,6 +941,10 @@ product/package behavior while proving the stronger test-isolation invariant.
|
|
|
944
941
|
|
|
945
942
|
## v0.10 — Full Visual Human–LLM Frontend Change Workflow
|
|
946
943
|
|
|
944
|
+
Current status: released as `0.10.0`. The frozen implementation authority
|
|
945
|
+
remains
|
|
946
|
+
`docs/plans/v0.10-implementation-plan.md`.
|
|
947
|
+
|
|
947
948
|
Objective/problem: complete the visual communication branch by combining the
|
|
948
949
|
already operational coding-agent loop with graphical inspection, external design
|
|
949
950
|
references, structured annotation, and the v0.8.1 project-level acceptance
|
package/docs/SECURITY.md
CHANGED
|
@@ -219,10 +219,12 @@ protect against other software already running as the same user.
|
|
|
219
219
|
`content-type: application/json`, identity `content-encoding` only, a
|
|
220
220
|
256 KiB (`262144` byte) body limit, valid JSON, and a closed request shape
|
|
221
221
|
with unknown fields rejected.
|
|
222
|
-
- **Exactly three `POST` routes**:
|
|
222
|
+
- **Exactly three v0.9 `POST` routes**: v0.9 introduced
|
|
223
|
+
`POST /api/annotations`,
|
|
223
224
|
`POST /api/annotations/:handle/promote-contract`, and
|
|
224
225
|
`POST /api/annotations/:handle/materialize-reference`. `PUT`, `PATCH`, and
|
|
225
|
-
`DELETE` stay unsupported everywhere.
|
|
226
|
+
`DELETE` stay unsupported everywhere. The implemented, unreleased v0.10
|
|
227
|
+
routes extend this same gate as described below.
|
|
226
228
|
- **No permissive CORS**: no `Access-Control-Allow-*` headers are sent, so a
|
|
227
229
|
page from any other origin cannot read the capability or send a JSON
|
|
228
230
|
authoring request. A real-Chromium test proves this for all three routes.
|
|
@@ -249,12 +251,32 @@ protect against other software already running as the same user.
|
|
|
249
251
|
`.tmp-*` directories, so a partially written artifact is never presented as
|
|
250
252
|
evidence.
|
|
251
253
|
|
|
254
|
+
## v0.10 Visual Change authoring boundary
|
|
255
|
+
|
|
256
|
+
v0.10 extends only the project-aware guarded `POST` surface. It adds explicit
|
|
257
|
+
reference approval and actual/reference workflow creation, plus workflow
|
|
258
|
+
activation, canonical check, restore, handoff preparation, human review, and
|
|
259
|
+
recording of already-existing governance results. Every route reuses the same
|
|
260
|
+
exact Host, Origin, memory-only capability token, JSON content type,
|
|
261
|
+
compression rejection, body limit, closed request-shape, serialized-write,
|
|
262
|
+
path-containment, and `no-store` controls. Standalone `view --root` remains
|
|
263
|
+
read-only, and the service worker continues to cache no `/api/` response.
|
|
264
|
+
|
|
265
|
+
The additional surface does not grant source-edit or external-process
|
|
266
|
+
authority. Observer never edits target source, executes a coding agent, invokes
|
|
267
|
+
my-dev-kit, or contacts/controls an orchestrator. Optional orchestrator fields
|
|
268
|
+
are bounded traceability metadata only. Handoffs are generated in memory and
|
|
269
|
+
are not a persisted evidence family. Review acceptance requires the latest
|
|
270
|
+
canonical Observer check to be PASS; it cannot approve a baseline/reference or
|
|
271
|
+
restore project acceptance. Governance recording can reference only a
|
|
272
|
+
separately persisted canonical approval and does not perform that approval.
|
|
273
|
+
|
|
252
274
|
## Not yet addressed
|
|
253
275
|
|
|
254
276
|
Certificate-failure-specific handling, permission-prompt-specific handling
|
|
255
277
|
(Chromium's default deny-all applies; no permission is ever explicitly
|
|
256
278
|
granted), and any non-loopback/remote browsing mode remain unimplemented and
|
|
257
|
-
out of scope. `@dailephd/my-frontend-observer@0.
|
|
279
|
+
out of scope. `@dailephd/my-frontend-observer@0.10.0` is the current release. A
|
|
258
280
|
pre-release readiness CI workflow (Windows/Linux/macOS packed-candidate
|
|
259
281
|
validation, now covering the v0.8 viewer alongside every earlier version's
|
|
260
282
|
packed behavior) exists (see `docs/CI_CD.md`). The v0.7 external-reference/
|
package/docs/WORKFLOWS.md
CHANGED
|
@@ -685,11 +685,37 @@ repository. The run result's `status` must be `passed` and its
|
|
|
685
685
|
`cleanupErrors` must be empty. The demo and scenarios are not in the npm
|
|
686
686
|
package. See `examples/v09-demo/README.md` for details and maintenance notes.
|
|
687
687
|
|
|
688
|
-
##
|
|
688
|
+
## Complete v0.10 visual-change workflow (implemented, unreleased)
|
|
689
689
|
|
|
690
690
|
The sequence on top of the v0.7/v0.8 foundation above preserves the current
|
|
691
691
|
engines and lets graphical interfaces consume rather than invent the reference
|
|
692
|
-
model. v0.9 is released as `0.9.0
|
|
692
|
+
model. v0.9 is released as `0.9.0`; v0.10 is implemented in the repository
|
|
693
|
+
and remains unreleased.
|
|
694
|
+
|
|
695
|
+
Actual-frontend entry starts in project-aware `view`: open a runtime
|
|
696
|
+
observation, draw and explicitly associate a mark, author and confirm runtime
|
|
697
|
+
intent, save it, select confirmed intent, and create an inactive visual-change
|
|
698
|
+
workflow. Reference entry opens one exact approved reference, saves confirmed
|
|
699
|
+
reference intent against that instance, selects an exact baseline observation,
|
|
700
|
+
authors explicit region-to-runtime bindings, and creates an inactive reference
|
|
701
|
+
workflow.
|
|
702
|
+
|
|
703
|
+
Both modes then share the same human-controlled loop:
|
|
704
|
+
|
|
705
|
+
```text
|
|
706
|
+
explicit Activate
|
|
707
|
+
-> Prepare handoff
|
|
708
|
+
-> external actor edits source outside Observer
|
|
709
|
+
-> Run check (the canonical check <baseline> --json operation)
|
|
710
|
+
-> immutable pending attempt
|
|
711
|
+
-> Request correction, Accept latest PASS, or Abandon
|
|
712
|
+
-> optional governance recording only after a separate canonical approval
|
|
713
|
+
-> optional explicit Restore acceptance
|
|
714
|
+
```
|
|
715
|
+
|
|
716
|
+
The controlling invariants are `DRAW != DECIDE`, `CONFIRM !=
|
|
717
|
+
PROMOTE/MATERIALIZE`, `PROMOTE/MATERIALIZE != ACTIVATE`, `PASS != ACCEPT`, and
|
|
718
|
+
`ACCEPT != GOVERNANCE`.
|
|
693
719
|
|
|
694
720
|
```text
|
|
695
721
|
stable targets and bounded runtime behavior
|