Skip to content

Remove styling-harvest instrumentation attributes from templates#5637

Merged
norman-abramovitz merged 2 commits into
cloudfoundry:developfrom
nabramovitz:norm/remove-stb-instrumentation
Jul 14, 2026
Merged

Remove styling-harvest instrumentation attributes from templates#5637
norman-abramovitz merged 2 commits into
cloudfoundry:developfrom
nabramovitz:norm/remove-stb-instrumentation

Conversation

@nabramovitz

@nabramovitz nabramovitz commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Removes the stb-snapshot-id / stba-* attributes that were added to the login page, confirm dialog, stepper and application wall to instrument the DOM for a styling-model harvesting experiment. That experiment has concluded and the attributes have no remaining consumer, so they are dead markup in production templates.

Notes on scope:

  • All 37 attribute uses across the 4 templates are removed; nothing is converted to aria-* because every element whose instrumentation described real accessibility semantics already carries a native role (role="alert" on the login error banner, role="note" on the login notice, role="status" on the app-wall loading indicator). The remaining descriptions were styling wording with no accessibility value.
  • The login page spec queried elements by stb-snapshot-id; those selectors now use the stable ids/classes (#login-error-message, .login-card, .login-logo, .login-title, .login-message). One describe block existed solely to assert the instrumentation was present; it is deleted with the instrumentation.

Gate: lint, full frontend unit suite (3117 passing) and production build, plus the jetstream Go tests — all green.

Follow-up commit: the theme-builder's live-template drift lints (lint:harvest, lint:templates) existed to protect the template-to-snapshot correspondence this PR severs, so they retire with the instrumentation — CI steps and the workflow's template path filters removed. harvest-login.ts stays: the model generator still harvests the frozen snapshot DOM, and the parser keeps its unit tests (601 stb tests green).

Strip the stb-snapshot-id / stba-* attributes from the login page,
confirm dialog, stepper and app wall. The DOM-harvest experiment they
served is superseded; component intent now lives in the declared
styling contract, not in DOM attributes. Every element with real
accessibility value already carries a native role (alert, note,
status), so nothing converts to aria-*.

Login spec selectors move to the stable ids/classes and the
instrumentation-only describe block is deleted.

repo: cf-stratos
@norman-abramovitz

Copy link
Copy Markdown
Contributor

Changing how Stratos is styled and cleaning up the integration points.

The harvest lint (login template <-> routing.json) and the shared-scene
template lint existed to protect the correspondence between live Stratos
templates and the captured snapshots. With the instrumentation removed
from the live templates that correspondence is deliberately severed, so
both lints retire: lint-templates.ts deleted, the lint:harvest /
lint:templates scripts dropped, the two CI steps removed, and the
template paths dropped from the workflow's change filter.

harvest-login.ts stays: generate-model.ts still harvests the frozen
snapshot DOM, and the parser has its own unit tests.

repo: cf-stratos

@norman-abramovitz norman-abramovitz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@norman-abramovitz norman-abramovitz merged commit 090847c into cloudfoundry:develop Jul 14, 2026
21 checks passed
@nabramovitz nabramovitz deleted the norm/remove-stb-instrumentation branch July 14, 2026 16:31

@norman-abramovitz norman-abramovitz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants