What the sheet shows. The money rules are here because a floor that differs between two accounts under one channel is only visible if you can put them side by side.
MR-079 · list half · spec references/ebay-planning/SALES-CHANNEL-ACCOUNT.md
SCREENS.md tags it · SKIP — “standard provider/account CRUD”. That is right about the fields and wrong about the screen, so this promotes it, the same move source-formula.html made. Three things the rest of the system already depends on have no owner anywhere else:
RESOLVED-DECISIONS §4 freezes Sales Channel → 1..many Channel Accounts → 0..1 Store. The account is the operational level: eBay does not disconnect; seller vd_outlet disconnects. A channels list would have put the thing that breaks one level below the thing you see first, and rolled three account states into one channel chip.
There is no Sales Channel record. Sales Channel survives as a column. Paul’s call, and it costs something — see the open block.
Name is ours and editable on the record. External account is the provider’s and we cannot change it. Account ID is the immutable channel_account_id every listing, command and external ID is bound to. Collapsing them would have been tidier and wrong: an operator recognises eBay — outlet, a support ticket quotes vd_outlet, and a reconciliation quotes CA-03. The name is the pinned column and the one the search matches first.
The column model, the sort control and the picker are ported from source-formulas-list.html, not reinvented — same COLS shape, same modal, same aria-sort handling. Drag-to-resize is the one genuinely new part: a handle per head, a 64px floor, and double-click to put a column back. Widths need table-layout:fixed, because with auto layout the browser re-solves every column the moment content changes and a dragged width does not survive a re-render.
Name cannot be unticked. A list whose rows cannot be identified is not a shorter list, it is a broken one, so the pinned column’s checkbox is disabled rather than absent — the reader can see the rule instead of wondering where the control went.
The money rules are hidden by default and worth adding. Turn on Margin floor, Final value fee and Ad rate and the cost of having no Sales Channel record becomes visible in one glance: CA-02 and CA-03 sit under one channel carrying 2% and 2.5% ad rates. That is the open question below, drawn rather than argued.
active is the operator’s switch (is this account taking new listings?). connection is a system fact (does the credential still work?). They are independent, and the interesting combination is active + connection lost — an account you believe is working and isn’t. CA-03 is that row, and it is the only row with a tinted background.
A lost connection does not flip active off. Auto-deactivating would silently change what happens on reconnect, so the switch stays where the operator put it and the list carries the contradiction instead.
CA-01 / CA-02 / CA-03 are SAMPLE-DATA’s existing rows, unmodified. That file’s Status column is the active flag and has no notion of connection, so it needs a Connection column added rather than existing rows rewritten — which is what lets CA-03 be active and lost at once. CA-04 is new: it wires Visible Science, one of the architected-not-built stores, and gives the create drawer somewhere to land.
CA-02 renders account chip only — no store. That must read as correct, not broken.
Open — needs Paul
1 · The floor has no channel to inherit from. MR-075 wanted one number per Sales Channel that every account inherits. With no channel record, three eBay accounts can hold three different floors and nothing notices. Taken knowingly — the inheritance machinery costs a whole record view to save a number edited twice a year — but if duplicate floors bite, the fix is a channel record added later, not a rule bolted onto this screen.
2 · scope gap has no precedent anywhere in the system. It is the first state that says partly working: the token is valid and a required scope is missing, so some calls succeed. Drawn on the record; if it earns its keep it probably belongs on other adapter-backed surfaces too.
3 · Nothing here pages or scopes. Four accounts is the whole fixture, so the search and the three filters run over an array. A real deployment is still small — dozens, not thousands — but the empty state and the “needs you” view are the only two things proven at this size.