Ports a simplified `Primer::Beta::Counter` to Angular as
`PrimerCounterLabelComponent` so the `.Counter` badge can be used from
Angular templates. Supports `count`, `scheme`, `limit`, and
`hideIfZero`; the Ruby `text` and `round` options are omitted.
GoodJob's `.discarded` scope is defined as `finished.where.not(error: nil)`,
which matches any finished job with an error — including jobs with
`error_event: :retried` that already have a pending retry scheduled.
On every restart, the initializer was finding these already-retried jobs
and calling `retry_job` again. Thankfully good_job has us covered and
prevent a new retry job from being queued. This is visible with
`ActionForStateMismatchError` or `PG::UniqueViolation` errors on each
boot. Not harmful, but far from ideal.
Symptoms visible in the logs on every restart:
Failed to enqueue job for retry SomeJob (job id: b03926e2-...):
PG::UniqueViolation: ERROR: duplicate key value violates unique
constraint "good_jobs_pkey"
DETAIL: Key (id)=(a798492e-...) already exists.
Exclude jobs with `error_event: :retried` so only truly stuck jobs
(unhandled, retry_stopped, discarded) are re-queued.
Feedback from devs that were confronted with the "is not an allowed host"
message shows, that the message is not very actionable. It's not clear why something
that is clearly a legitimate and existing host would be considered "not allowed".
The new error message clearly points at the SSRF policy as the source. Making the
problem more search engine friendly and hopefully allowing admins to better understand
what they have to fix.
* Use new async FilterableTreeView for global project selector
* Remove replaced angular component
* Fine tune sorting and expansion state of the new project selector
* Update primer to 0.86.1
* Add workspace information and filter results hierarchy information to project selector
* Include review feedback: Harmonize I18n keys, fix visible scope, use guarded local storage
* Add a turboFrame in the project select overlay to only load the projects when it is actually opened
* Restore BIM tab styles which were broken for a while already but the new project selector changes made it so bad that the test broke because the plus icon was overlapping the checkbox
* Clarify spec expectation