Merge pull request 'test(creator-web): guard responsive console layout' (#236) from codex/dev-000248-self-development-runtime-status into main
CI / test (push) Successful in 59s
CI / test (push) Successful in 59s
This commit was merged in pull request #236.
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestCreatorConsoleResponsiveGuardrails(t *testing.T) {
|
||||
html, err := staticFiles.ReadFile("static/index.html")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !strings.Contains(string(html), `<meta name="viewport" content="width=device-width, initial-scale=1">`) {
|
||||
t.Fatal("creator console is missing responsive viewport metadata")
|
||||
}
|
||||
css, err := staticFiles.ReadFile("static/assets/console.css")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
stylesheet := string(css)
|
||||
for _, guard := range []string{
|
||||
"@media (max-width: 680px)",
|
||||
".console { display: block; }",
|
||||
".diagnostic-list { grid-template-columns: 1fr; }",
|
||||
".agent-details { grid-template-columns: 1fr; gap: 14px; }",
|
||||
".fleet-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }",
|
||||
".section-nav { display: flex;",
|
||||
"overflow-x: auto",
|
||||
} {
|
||||
if !strings.Contains(stylesheet, guard) {
|
||||
t.Fatalf("responsive guardrail missing: %s", guard)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"task_file": "dev/tasks/DEV-000257-operations-acceptance-fast-smoke.json",
|
||||
"task_id": "DEV-000257",
|
||||
"task_file": "dev/tasks/DEV-000258-responsive-console-regression-guard.json",
|
||||
"task_id": "DEV-000258",
|
||||
"task_revision": 1
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"task_id": "DEV-000258",
|
||||
"task_revision": 1,
|
||||
"architecture_revision": "ADR-0018",
|
||||
"base_repo_revision": "5e8286695f0da3f3819cdc17ced6525237512e6e",
|
||||
"risk_tier": "E",
|
||||
"intent": "Add a fast static responsive regression guard for the authenticated Creator console while retaining the requirement for real mobile visual acceptance.",
|
||||
"requirement_ids": ["UI responsive safety", "authenticated console acceptance"],
|
||||
"allowed_change_scope": {"modules": ["creator-web"], "paths": ["cmd/creator-web/responsive_test.go", "dev/ACTIVE_TASK.json", "dev/tasks/DEV-000258-responsive-console-regression-guard.json"]},
|
||||
"forbidden_change_scope": {"paths": ["architecture/**", "security/**", "database/**", "deploy/**", "contracts/**", "LLM-local/**", "cmd/core-runtime/**", "modules/**", "adapters/**"]},
|
||||
"allowed_architecture_delta": {"new_cross_module_dependencies": 0, "new_canonical_owners": 0, "new_privileges": 0, "new_third_party_dependencies": 0, "new_database_owner_roles": 0},
|
||||
"contracts": {"consume": ["embedded Creator console HTML/CSS"], "may_change": ["tests only"]},
|
||||
"semantic_owner": "Creator Web presentation tests",
|
||||
"canonical_state": ["none"],
|
||||
"state_transitions": ["none"],
|
||||
"side_effects_and_privileges": ["test-only static inspection"],
|
||||
"persistence_and_migrations": ["none"],
|
||||
"failure_retry_restart": ["test fails when responsive guardrails disappear"],
|
||||
"assumptions": ["static guard is not a substitute for browser visual acceptance; real mobile viewport evidence remains required when browser capability exists"],
|
||||
"acceptance_scenarios": ["viewport metadata exists", "mobile media block exists", "key panels collapse to safe single-column layouts", "only section navigation owns horizontal scrolling"],
|
||||
"required_tests": ["go test ./cmd/creator-web", "go vet ./cmd/creator-web", "independent evidence review", "go run ./cmd/devctl preflight -active dev/ACTIVE_TASK.json", "go run ./cmd/devctl check-diff -active dev/ACTIVE_TASK.json", "go run ./cmd/devctl check-architecture", "git diff --check", "CI", "production health smoke"],
|
||||
"terminal_gap_states": ["BLOCKED_BY_MISSING_CAPABILITY", "BLOCKED_BY_SPEC_GAP"]
|
||||
}
|
||||
Reference in New Issue
Block a user