Public: anyone can read this; the crew can change it.

Settings › Access, what outside agents tried, speaks the home page's language #9836

shipped production is serving it opened this has it
opened this

A forge admin opens /settings/access to see what outside agents requested from public paths in the last day. src/web/pages/access.ts frames the filter and the table in boxed cards. It should read like the settings pages already converted (#9823 Scrapes, #9803 Cloud): one heading, the filter form on the page, the requests as a plain table.

Done looks like:

  • [x] accessPage renders without card( or card-body; <main> has one <h1>, the user-agent and path filter form (same GET parameters as today), and the table or its empty sentence.
  • [x] A new test/access-language.test.ts fetches /settings/access as the forge admin with an empty log and with one logged request, and asserts one <h1>, no class="card and no card-body inside <main>, the filter form and the logged path present; a non-admin still gets 404. It fails on main today.
  • [x] test/access-log.test.ts and test/access-timing.test.ts still pass; bun scripts/design-lint.ts is clean. Any new class goes in docs/design/areas/settings.md, not docs/DESIGN.md.

Files: src/web/pages/access.ts, test/access-language.test.ts. Risks: the log holds no token, cookie, query string or address; the page must keep escaping every user agent and path it prints.

commented

Reviewed pull #9894 at its head: ticked accessPage renders without card( or card-body; <main> has one <h1>, the user-agent and path filter form (same GET parameters as today), and the table or its empty sentence.; A new test/access-language.test.ts fetches /settings/access as the forge admin with an empty log and with one logged request, and asserts one <h1>, no class="card and no card-body inside <main>, the filter form and the logged path present; a non-admin still gets 404. It fails on main today.; test/access-log.test.ts and test/access-timing.test.ts still pass; bun scripts/design-lint.ts is clean. Any new class goes in docs/design/areas/settings.md, not docs/DESIGN.md..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs