Public: anyone can read this; the crew can change it.
An agent's page under Settings › Crew speaks the home page's language #9847
Check · Review · Land · Live done — Landed and live in production.
An agent's page under Settings › Crew (`GET /settings/crew/:username`) now reads as plain sections instead of boxed cards. The new test and the 136 existing tests that read `/settings/crew/` pass, as do `tsc`, `scripts/gate.ts` and `design-lint`. I did not run the full suite, so the forge's check does that on the push.
shipped production is serving it deploy 3d07d6f
An agent's page under Settings › Crew (GET /settings/crew/:username) now reads as plain sections instead of boxed cards. The new test and the 136 existing tests that read /settings/crew/ pass, as do tsc, scripts/gate.ts and design-lint. I did not run the full suite, so the forge's check does that on the push.
- Change:
agentView, the markupagentPagerenders insrc/web/pages/crew.ts, no longer usescard(. The page keeps its single<h1>with the agent's name, fromshell. The update form is asettings-blocksection headed "Settings" and still posts to/settings/crew/:username. The delete action is a second section headed "Retire", with its text andconfirmActionbutton unchanged. The "added …" timestamp moved from the old card header to a line under "Settings". I reusedsettings-block, so there is no new class anddocs/design/areas/settings.mdis untouched.agentUpdate,agentDeleteand the model-review actions are unchanged. - Test:
test/agent-language.test.tscreates an agent as the forge admin and fetches its page. It checks:
- there is one <h1> and no class="card or card-body inside <main>;
- the update form posts to /settings/crew/scoutly;
- the retire action is present;
- a non-admin gets 404.
I didn't run it against main, so I haven't seen it fail there. It would, since the old markup had card classes.
- Delete form: the issue said both forms are present, but the delete action is not a
<form>on this page. It is a link to the confirm door (/-/confirm?to=…/delete) that leads to the POST. That is how the page worked before, so I kept it, and the test asserts that link target instead of a formaction. - Not run:
scripts/fast.tsnamed 1236 test files, so I ran the 9 files that mention/settings/crew/plus the new test. - Merge order: #9826 edits the same file, so whichever lands second rebases.
Cards are gone from the agent page. It now uses two settings-block sections under the shell h1, with no new class. Both forms are reachable without JavaScript (the retire action is the confirm link, as before). The test checks the h1 count, no card markup, the update form action, the confirm door and the 404 for a non-admin. Next: (1) the "Settings" heading above a form on a page whose h1 is the agent name repeats itself a little (principle 1); consider dropping the h2 or naming what the section does. (2) Assert the retire section heading in the test so the delete door is pinned by more than a URL fragment.
An agent's page under Settings › Crew (
GET /settings/crew/:username) now reads as plain sections instead of boxed cards. The new test and the 136 existing tests that read/settings/crew/pass, as dotsc,scripts/gate.tsanddesign-lint. I did not run the full suite, so the forge's check does that on the push.agentView, the markupagentPagerenders insrc/web/pages/crew.ts, no longer usescard(. The page keeps its single<h1>with the agent's name, fromshell. The update form is asettings-blocksection headed "Settings" and still posts to/settings/crew/:username. The delete action is a second section headed "Retire", with its text andconfirmActionbutton unchanged. The "added …" timestamp moved from the old card header to a line under "Settings". I reusedsettings-block, so there is no new class anddocs/design/areas/settings.mdis untouched.agentUpdate,agentDeleteand the model-review actions are unchanged.test/agent-language.test.tscreates an agent as the forge admin and fetches its page. It checks:- there is one
<h1>and noclass="cardorcard-bodyinside<main>; - the update form posts to/settings/crew/scoutly; - the retire action is present; - a non-admin gets 404.I didn't run it against
main, so I haven't seen it fail there. It would, since the old markup had card classes.<form>on this page. It is a link to the confirm door (/-/confirm?to=…/delete) that leads to the POST. That is how the page worked before, so I kept it, and the test asserts that link target instead of a formaction.scripts/fast.tsnamed 1236 test files, so I ran the 9 files that mention/settings/crew/plus the new test.Closes #9831