2026-10-04 - 2026-10-11
Overview
8 Issues closed from 1 user
Closed
#213 A tier reorder that commits during a conferral records the wrong kind of tier change
Closed
#189 The grants listing query is written twice, and only its delivery state is checked for drift
Closed
#188 Finding which tier an organization holds on a ladder is a loop written five times
Closed
#190 Each page's template set is assembled in its own place, and the lint and tests assemble stand-ins
Closed
#33 The forum mapping tests pass only when another package has run first
Closed
#175 Checkout and the plan switch do not enforce what the Products page offers
Closed
#30 Two generated domain queries have no caller outside their own tests
Closed
#125 Creating or deleting a wiki site holds the request open until the work finishes or a timer runs out
57 Issues created by 1 user
Opened
#161 The Temporal authorization guide says a worker-role token can poll task queues; polling needs write
Opened
#162 Temporal stores workflow inputs, including members' names and sign-in identifiers, in plain text
Opened
#163 The Discourse webhook receiver stores members' email addresses in the raw event log
Opened
#164 What an unlimited numeric limit is, and how it is stored and delivered
Opened
#165 FedWiki's site usage is a running total that many code paths adjust; derive it instead
Opened
#166 Nothing looks for dead code, duplication, tangled functions or a value written from too many places
Opened
#167 Alerts are written by hand in about twenty variants, and the design system has no part for a notice
Opened
#168 The console has no notifications
Opened
#169 The console has rules for what copy to cut, but no guide for writing the copy that stays
Opened
#170 Every list of records is a table, and at mobile width tables scroll sideways
Opened
#171 An application outside the console cannot connect to it: there is no published protocol
Opened
#172 Nothing decides who enforces a numeric limit, or what happens when a connected application loses access
Opened
#173 A connected application cannot show anything inside the console
Opened
#174 FedWiki and Discourse are built into the console instead of connecting through the published contract
Opened
#175 Checkout and the plan switch do not enforce what the Products page offers
Opened
#176 No operator page shows a subscription's scheduled change, so a deferred cancellation reads as renewing
Opened
#177 A scheduled change is marked applied before Stripe carries it out, and is never retried
Opened
#178 The readiness panel says whether members can find a product by a rule the catalog no longer uses
Opened
#179 A tier change keeps its cause and the operator's note in one text column, and nothing ties together the rows one act writes
Opened
#180 Ending a plan's delivery runs the same four steps in three places, with the pool locked at different points
Opened
#181 A batch of rule changes has no record of its own, so its first change stands in for it
Opened
#182 Nothing says which billing account is an organization's own, and three paths take the oldest
Opened
#183 Whether a catalog object or customer reached Stripe is recorded in two places
Opened
#184 A swap of the active site is stored as two single-site requests held together by naming conventions
Opened
#185 A form declaration can hold settings its layout family never reads
Opened
#186 Locks are written out at each call site, with four key conventions and no written order
Opened
#187 Plan-wide changes to ladders and defaults run inside HTTP handlers, each with its own transaction shape
Opened
#188 Finding which tier an organization holds on a ladder is a loop written five times
Opened
#189 The grants listing query is written twice, and only its delivery state is checked for drift
Opened
#190 Each page's template set is assembled in its own place, and the lint and tests assemble stand-ins
Opened
#191 Tests build their data and check their pages by hand, with one copy of each helper per package
Opened
#192 Tests share one database and global settings, so packages must run one at a time
Opened
#193 The subscription reconcile changes provision status without the pool lock
Opened
#194 Adding a tier locks pools in creation order, while other paths sort them by pool id
Opened
#195 A refused plan switch answers 200 and replaces the preview with the plans
Opened
#196 Recording a failed drain locks the obligation before the pool, while the drain locks the pool first
Opened
#197 A failed read of an organization's plan position is shown to the member as holding nothing
Opened
#198 A scheduled cancellation keeps its "Cancels on" badge but loses its end date and Keep plan when the plan's price cannot be read
Opened
#199 The Products page offers a plan switch on a subscription the switch cannot change
Opened
#200 The current plan's card shows the price of its subscription's first item, which can belong to another product
Opened
#201 Plan cards make a limit's singular by cutting a trailing "s", and drop their limit lines without an error when the rules cannot be read
Opened
#202 A member's plan change does not see a grant issued while it runs, and replaces that grant when it finishes
Opened
#203 Checkout reads the price's Stripe mapping a second time and repeats checks the offer decision has already passed
Opened
#204 Checkout answers a failed read of the organization's billing accounts as "no billing account found" with 400
Opened
#205 Checkout and four other handlers take a field from the URL when the posted form leaves it out
Opened
#206 A failed read of the plan ladders replaces a member's whole entitlements panel with a plans error
Opened
#207 Operator pages show a failed read as an empty or settled answer instead of an error
Opened
#208 A request that takes longer than eight seconds gets no answer, because the server's write timeout runs out before the request timeout
Opened
#209 member-console start exits with status 0 when the web server fails to start
Opened
#210 An organization with more than 200 members reads as 200 on its page, and its latest members are picked from the first 200 by name
Opened
#211 Past tier changes are named by the ladder's current order, so a reorder or a tier removal rewrites what they say
Opened
#212 A subscription's next reconcile confers its tier again over the operator's grant that replaced it, and ends the grant
Opened
#213 A tier reorder that commits during a conferral records the wrong kind of tier change
Opened
#214 A default ladder's last tier can be removed while organizations hold it, leaving the ladder empty
Opened
#215 A default change or a reorder lists each organization it could not move with raw database error text
Opened
#216 Adding, deleting or reordering tiers while the entitlement lock is held answers "see server logs" instead of the refusal that says to try again
Opened
#217 A rule change on a large entitlement set is shown as not applied when its first recomputation fails on one pool, although it was applied
39 Unresolved Conversations
Open
#153
An org type's default ladder can start on a product that confers nothing, and then restoring the default fails
Open
#131
A column named for a payment provider's event holds words that are not events
Open
#10
Some operator lists read the database once per row
Open
#148
A past-due subscriber is shown their ladder as unheld and offered a second subscription
Open
#141
The console serves nothing, not even the certificate ask, until Temporal and the identity provider are reachable
Open
#121
Nothing says which file a new HTTP handler belongs in
Open
#18
The member catalog does not say a plan change will wait for the end of a committed term
Open
#63
The project lint never checks routes an integration registers
Open
#88
A product cannot be sold as a bundle covering several plan ladders at once
Open
#113
There is no way to review which organizations a rule change recomputed
Open
#159
A member can end up paying for a tier below one they were granted, with the granted tier waiting behind it
Open
#118
The screenshot harness cannot reach a page's interaction states
Open
#146
A payment-provider event larger than 64 KB is cut off, fails its signature check and never reaches the console
Open
#122
A returning member lands in whichever organization comes first and cannot reach the others
Open
#12
A transient error reading the billing sweep schedule is read as the schedule being absent
Open
#128
Workflow schedules from an earlier configuration keep running after a redeploy
Open
#92
Nothing defines what a suspended or archived resource pool means
Open
#80
What a payments provider port looks like, and which billing code belongs behind it
Open
#145
The product flags mix up who can see a product, who can buy it and who can be given it
Open
#32
The demo data covers whichever states someone noticed were missing
Open
#82
A plan change affecting many organizations applies one outcome to all of them
Open
#158
What the operator's grants page is for, and whether an operator should issue and manage grants from it
Open
#81
A count of pools still waiting to be recomputed never says how long they have waited
Open
#100
The operator cannot see which payment-provider product a catalog product is mapped to
Open
#95
Every product carries a category that changes nothing
Open
#102
The readiness section calls a product unpurchasable when it was never meant to be sold
Open
#157
Tier changes shows a payment-provider event's raw reason string instead of words
Open
#78
The operator has no single place showing what needs attention
Open
#154
The default comes back as a new grant each time, while a marked grant comes back as itself: two mechanisms for one idea
Open
#17
An operator cannot put a minimum term on a subscription
Open
#38
A subscription with a minimum term and a fee policy refuses mid-term changes instead of charging the fee
Open
#44
The wiki integration reaches into the domains registry directly instead of through the integration contract
Open
#46
The core database seeds a resource key that belongs to the wiki integration
Open
#87
A domain that serves something other than a wiki site cannot be recorded as served
Open
#45
Wiki state and quota enforcement wait for the next poll instead of reacting to the change
Open
#77
An external system cannot be told when something changes in the console
Open
#22
A preview of what a change will do is dressed as a warning
Open
#14
Nothing runs the project's checks except the person who remembers to
Open
#127
What a stacking policy is for, and where an operator would choose one