Skip to content

Commit d7d6b51

Browse files
authored
chore: decouple embedded showcase validation
Decouple the embedded showcase from Comptextv7 root validation, CI, and agent workflow documentation. - remove showcase install/build/typecheck steps from root scripts and CI - keep dashboard validation as the only Node validation surface - document the external Monaco showcase repository - preserve recovery path via archive/showcase-before-extraction - restore full agent workflow/security/review guidance No dependency, dashboard runtime, or Python core changes.
1 parent 34531d6 commit d7d6b51

5 files changed

Lines changed: 66 additions & 62 deletions

File tree

.github/workflows/agent-checks.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,8 @@ jobs:
6262
with:
6363
node-version: '22'
6464

65-
- name: Install dependencies
66-
run: |
67-
npm --prefix dashboard/app ci
68-
npm --prefix showcase/app ci
65+
- name: Install dashboard dependencies
66+
run: npm --prefix dashboard/app ci
6967

7068
- name: Typecheck
7169
run: npm run typecheck

.github/workflows/ci.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,8 @@ jobs:
2424
- name: Install Python dependencies
2525
run: python -m pip install -e ".[test]"
2626

27-
- name: Install Node dependencies
28-
run: |
29-
npm --prefix dashboard/app ci
30-
npm --prefix showcase/app ci
27+
- name: Install dashboard dependencies
28+
run: npm --prefix dashboard/app ci
3129

3230
- name: Canonical Check
3331
run: npm run check

docs/AGENT_WORKFLOW.md

Lines changed: 40 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ The default integration approach is documentation-first, lightweight, and safe.
1111
Agents should use synthetic examples only unless a human explicitly provides a
1212
sanitized artifact for review.
1313

14+
## Repository structure note
15+
16+
Comptextv7 no longer embeds the Monaco showcase application. The showcase is
17+
maintained separately in `ProfRandom92/comptext-v7-monaco-showcase`.
18+
19+
The historical embedded showcase state remains preserved on the
20+
`archive/showcase-before-extraction` branch for recovery or forensic review.
21+
1422
## Agent roles
1523

1624
| Agent work type | Belongs in Comptextv7 | Belongs in Comptext-Daimler-Experiment- |
@@ -20,6 +28,7 @@ sanitized artifact for review.
2028
| Report contract documentation | Yes. | Yes, when documenting producer-side details. |
2129
| Sanitization policy | Yes for consumer/review expectations. | Yes for producer-side sanitization implementation. |
2230
| Forensic replay findings | Yes when they require runtime, parser, dashboard, export, or validation fixes. | Yes when they require experiment scenario changes. |
31+
| Monaco showcase/UI demo work | No. It belongs in `ProfRandom92/comptext-v7-monaco-showcase`. | No, unless only experiment evidence changes. |
2332

2433
## Safe branch workflow
2534

@@ -40,20 +49,18 @@ git checkout -b agent/benchmark-integration-docs
4049
If a local clone does not have a `main` branch or remote, note that limitation in
4150
the final response and still ensure work happens on the requested feature branch.
4251

43-
4452
## Safe workflow helper scripts
4553

46-
Use the new deterministic helper scripts before making or reviewing agent-authored
54+
Use the deterministic helper scripts before making or reviewing agent-authored
4755
changes:
4856

4957
1. Run `python scripts/repo_intake.py` as the first safe discovery step. It
5058
records repository structure, project files, tests, workflows, and likely
5159
API/dashboard/report areas in `docs/reports/repo-intake-report.md` without
5260
reading sensitive payloads or requiring network access.
5361
2. Use the commands in [`docs/validation.md`](validation.md) as the local
54-
validation step. Use root wrapper commands for broad validation, or
55-
app-specific commands from `dashboard/app` and `showcase/app` for targeted
56-
validation.
62+
validation step. Use root wrapper commands for broad validation, or direct
63+
commands from `dashboard/app` for targeted dashboard validation.
5764
3. Run `python scripts/generate_contract_fixtures.py` when API/dashboard/export
5865
contracts are touched. It regenerates
5966
`contracts/examples/api-dashboard.example.json` and writes
@@ -75,14 +82,15 @@ changes:
7582
7. Let `.github/workflows/agent-checks.yml` provide the PR CI guardrail by
7683
compiling the helper scripts, regenerating intake evidence, generating
7784
contract fixtures, validating API/export payload shapes, generating the
78-
project health report, generating the dashboard health summary, and running
79-
the same safe checks on Python 3.11.
85+
project health report, generating the dashboard health summary, running the
86+
same safe Python checks, and running dashboard validation on Python 3.11 and
87+
Node.js 22.
8088

8189
These checks complement benchmark, regression, sanitization, and forensic replay
8290
reports from `ProfRandom92/Comptext-Daimler-Experiment-`. They do not replace
8391
benchmark review and do not introduce runtime coupling between repositories. Use
8492
only sanitized summaries or synthetic examples when connecting those reports to
85-
Comptextv7 PR evidence. Future dashboard/UI work should consume
93+
Comptextv7 PR evidence. Dashboard/UI work should consume
8694
`docs/reports/dashboard-health-summary.json` as a static status source for
8795
release-readiness cards, missing-artifact lists, and safety notes instead of
8896
requiring a live server, network access, or real Daimler data.
@@ -134,9 +142,11 @@ Prefer one narrow purpose per PR:
134142
- API/export schema-version addition.
135143
- Validation or replay fix tied to a specific forensic finding.
136144
- Follow-up issue creation for larger automation.
145+
- Showcase-only demo updates in `ProfRandom92/comptext-v7-monaco-showcase`, not in Comptextv7.
137146

138147
Avoid mixing benchmark integration docs with unrelated runtime refactors,
139-
dependency upgrades, dashboard redesigns, or fixture changes.
148+
dependency upgrades, dashboard redesigns, fixture changes, or showcase migration
149+
work.
140150

141151
## Security constraints
142152

@@ -146,8 +156,7 @@ Never commit:
146156
- Real Daimler payloads or customer data.
147157
- Raw production logs.
148158
- Proprietary documents or unreleased vendor material.
149-
- Unsanitized VIN/FIN, account, employee, plant, vehicle, or workshop
150-
identifiers.
159+
- Unsanitized VIN/FIN, account, employee, plant, vehicle, or workshop identifiers.
151160
- Large opaque binary artifacts from benchmark tools.
152161

153162
Prefer:
@@ -161,14 +170,16 @@ Prefer:
161170

162171
## Review checklist
163172

164-
Before opening a Comptextv7 PR, agents should verify:
173+
Before opening or updating a Comptextv7 PR, agents should verify:
165174

166175
- [ ] Branch is a feature branch and PR targets `main`.
167176
- [ ] The change does not introduce runtime coupling to the experiment
168177
repository unless explicitly approved.
169178
- [ ] New examples are synthetic.
170179
- [ ] No secrets, cookies, tokens, real Daimler data, customer data, raw logs, or
171180
proprietary documents are committed.
181+
- [ ] Unsanitized VIN/FIN, account, employee, plant, vehicle, or workshop
182+
identifiers are not committed.
172183
- [ ] Benchmark-sensitive routes are called out when affected.
173184
- [ ] p50, p95, p99, RPS, error rate, and payload size are reviewed when
174185
performance-sensitive code changes.
@@ -185,6 +196,8 @@ Before opening a Comptextv7 PR, agents should verify:
185196
and `python scripts/validate_api_exports.py`, with reports checked in under
186197
`docs/reports/contract-fixture-generation-report.md` and
187198
`docs/reports/api-export-validation-report.md` when generated.
199+
- [ ] Monaco showcase-only work is routed to
200+
`ProfRandom92/comptext-v7-monaco-showcase` instead of Comptextv7.
188201

189202
## Synthetic PR evidence example
190203

@@ -210,18 +223,24 @@ Before opening a Comptextv7 PR, agents should verify:
210223
Use this rule of thumb:
211224

212225
- If the change affects Comptextv7 users, dashboard/API surfaces, runtime
213-
behavior, validation gates, documentation, or exported report contracts, it
214-
belongs in Comptextv7.
226+
behavior, validation gates, documentation, exported report contracts, or
227+
release evidence, it belongs in Comptextv7.
215228
- If the change affects benchmark workload generation, experiment-only scripts,
216229
experiment report production, or exploratory forensic scenarios, it belongs in
217230
`ProfRandom92/Comptext-Daimler-Experiment-`.
218-
- If both repositories are affected, split the work into two PRs and keep the
219-
handoff contract small and sanitized.
231+
- If the change affects Monaco showcase UI, demo composition, Monaco editor
232+
behavior, standalone showcase assets, or showcase deployment, it belongs in
233+
`ProfRandom92/comptext-v7-monaco-showcase`.
234+
- If multiple repositories are affected, split the work into small PRs and keep
235+
the handoff contract sanitized, documented, and reversible.
220236

221237
## Next recommended PRs
222238

223-
1. Add a versioned JSON Schema for synthetic benchmark summaries.
224-
2. Add a versioned JSON Schema for regression and sanitization summaries.
225-
3. Add optional local import of sanitized summary files, disabled by default.
226-
4. Add dashboard trend cards for p50/p95/p99 and payload-size deltas.
227-
5. Add PR checklist entries for benchmark-sensitive route review.
239+
After this cleanup, prefer follow-up PRs in this order:
240+
241+
1. Remove the now-decoupled embedded showcase files from Comptextv7 once the full
242+
file list can be handled safely.
243+
2. Improve dashboard release-health UX using the existing static
244+
`docs/reports/dashboard-health-summary.json` contract.
245+
3. Keep dependency updates manual, scoped, and validated. Do not reintroduce
246+
Dependabot automation.

docs/validation.md

Lines changed: 18 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
# Validation Guide
22

3-
This repository intentionally has multiple validation surfaces. You can use the
4-
root npm wrapper commands for broad reviewer-friendly validation, or use direct
5-
app commands when you only need to validate one app.
3+
This repository intentionally has multiple validation surfaces. Use the root npm
4+
wrapper commands for broad reviewer-friendly validation, or use direct dashboard
5+
commands when only the dashboard application is affected.
66

77
## Repository layout
88

99
```text
1010
Comptextv7/
1111
├── package.json # Root command wrapper only; no root dependencies
1212
├── dashboard/app/ # Vite + TypeScript dashboard application
13-
├── showcase/app/ # Vite + TypeScript showcase application
1413
├── tests/ # Python regression, replay, and foundation tests
1514
├── scripts/ # Python validation and repository utility scripts
1615
├── artifacts/ # Committed deterministic replay artifacts
@@ -19,11 +18,15 @@ Comptextv7/
1918

2019
The repository root contains a minimal `package.json` wrapper for reviewer
2120
convenience. It does not define workspaces, dependencies, or a root Node app.
22-
Dashboard and showcase remain the real Node applications, with their dependency
23-
management in `dashboard/app` and `showcase/app`.
21+
The dashboard remains the only Node application in this repository, with its
22+
dependency management in `dashboard/app`.
2423

25-
Root npm scripts use `npm --prefix` to delegate to the app directories and use
26-
`pytest` for Python validation. No root `node_modules` directory or root npm
24+
The embedded showcase was removed from Comptextv7 and is maintained separately
25+
in `ProfRandom92/comptext-v7-monaco-showcase`. Historical Comptextv7 showcase
26+
files are preserved on the `archive/showcase-before-extraction` branch.
27+
28+
Root npm scripts use `npm --prefix` to delegate to the dashboard directory and
29+
use `pytest` for Python validation. No root `node_modules` directory or root npm
2730
dependencies are required for the wrapper itself.
2831

2932
## Root wrapper commands
@@ -42,11 +45,11 @@ npm run check
4245
The root wrapper delegates as follows:
4346

4447
- `npm run layout` runs `python scripts/check_repo_layout.py`.
45-
- `npm run typecheck` runs dashboard and showcase typechecks with
48+
- `npm run typecheck` runs the dashboard typecheck with `npm --prefix`.
49+
- `npm run validate` runs the dashboard release-health smoke test with
4650
`npm --prefix`.
47-
- `npm run validate` runs showcase static validation with `npm --prefix`.
48-
- `npm run build` runs dashboard and showcase builds with `npm --prefix`.
49-
- `npm test` runs `pytest -q`.
51+
- `npm run build` runs the dashboard build with `npm --prefix`.
52+
- `npm test` runs `pytest`.
5053
- `npm run check` chains layout, typecheck, validate, build, and Python tests.
5154

5255
## Dashboard app validation
@@ -58,25 +61,11 @@ changes:
5861
cd dashboard/app
5962
npm run typecheck
6063
npm run build
64+
npm run smoke:release-health
6165
```
6266

63-
Use these commands for core dashboard TypeScript changes, including the
64-
`dashboard/app/src/core/foundation/` modules.
65-
66-
## Showcase app validation
67-
68-
Run showcase validation directly from `showcase/app` for targeted showcase
69-
changes:
70-
71-
```bash
72-
cd showcase/app
73-
npm run typecheck
74-
npm run validate
75-
npm run build
76-
```
77-
78-
Use these commands for showcase TypeScript, static validation, and Vite build
79-
checks.
67+
Use these commands for dashboard TypeScript changes, release-health UI changes,
68+
and `dashboard/app/src/core/foundation/` modules.
8069

8170
## Python validation from the repository root
8271

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
"private": true,
44
"scripts": {
55
"postinstall": "npm run bootstrap",
6-
"bootstrap": "npm --prefix dashboard/app install && npm --prefix showcase/app install",
7-
"build": "npm --prefix dashboard/app run build && npm --prefix showcase/app run build",
8-
"typecheck": "npm --prefix dashboard/app run typecheck && npm --prefix showcase/app run typecheck",
9-
"validate": "npm --prefix showcase/app run validate",
6+
"bootstrap": "npm --prefix dashboard/app install",
7+
"build": "npm --prefix dashboard/app run build",
8+
"typecheck": "npm --prefix dashboard/app run typecheck",
9+
"validate": "npm --prefix dashboard/app run smoke:release-health",
1010
"test": "pytest",
1111
"test:core": "pytest tests/test_core_foundation_ts.py -q",
1212
"test:replay": "pytest tests/test_paper_replay_bench.py tests/test_agent_trace_replay.py tests/test_replay_continuity.py -q",

0 commit comments

Comments
 (0)