Part of #5095.
Context
publicSafeNextSteps (src/signals/engine.ts) builds the "Contributor next steps" collapsible's content as:
```ts
return [
...(roleContext.maintainerLane ? ["Treat this as maintainer-lane context..."] : []),
...readiness.components.map((component) => component.action).filter((action) => action !== "No action."),
...(publicFindings.length > 0 ? publicFindings.flatMap((finding) => (finding.action ? [finding.action] : [])) : []),
].filter((step) => !containsPrivatePublicTerm(step));
```
In plain terms: it's a deduped re-listing of the SAME "action" text already shown in the main signals table's own Action column, plus preflight-finding actions. It adds no information a careful reader wouldn't already have seen in the table above it -- which is likely exactly why it reads as low-value today.
Requirements
- Determine whether this collapsible should be: (a) cut entirely (the table's own Action column already carries this), (b) repositioned as a genuinely-new synthesis (e.g. a single prioritized "do this first" line instead of a flat re-listing), or (c) kept but reworded to add something the table doesn't already say.
- Whatever is decided, do not lose the underlying signal (the maintainer-lane note, the readiness actions, the finding actions) if a repo's maintainer actually relies on it today -- check for that via existing test coverage/usage before removing.
Deliverables
- A written comparison of at least 2 options (cut vs. redesign) with real example output for a couple of representative PR states (clean PR, PR with 2 blockers, maintainer-lane PR).
- Whichever option is chosen, implemented with full test coverage.
- If cut: confirm no other surface (the legacy panel, an OpenAPI schema, a downstream consumer) still depends on it existing.
Expected outcome
Either this collapsible is gone (info fully covered elsewhere) or it earns its place by saying something the table doesn't already say.
Open questions for the maintainer
- Cut vs. redesign is the maintainer's call -- present both with examples rather than deciding unilaterally.
Part of #5095.
Context
publicSafeNextSteps(src/signals/engine.ts) builds the "Contributor next steps" collapsible's content as:```ts
return [
...(roleContext.maintainerLane ? ["Treat this as maintainer-lane context..."] : []),
...readiness.components.map((component) => component.action).filter((action) => action !== "No action."),
...(publicFindings.length > 0 ? publicFindings.flatMap((finding) => (finding.action ? [finding.action] : [])) : []),
].filter((step) => !containsPrivatePublicTerm(step));
```
In plain terms: it's a deduped re-listing of the SAME "action" text already shown in the main signals table's own Action column, plus preflight-finding actions. It adds no information a careful reader wouldn't already have seen in the table above it -- which is likely exactly why it reads as low-value today.
Requirements
Deliverables
Expected outcome
Either this collapsible is gone (info fully covered elsewhere) or it earns its place by saying something the table doesn't already say.
Open questions for the maintainer