Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Random Disaster Bundle Laravel Package

matthiasnoback/random-disaster-bundle

A Symfony bundle that randomly injects exceptions into your app so you can test how it behaves when things go wrong. Set a failure rate and RandomDisasterBundle throws unexpected errors at random points during requests—ideal for verifying error pages, logging, and monitoring before real incidents.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Defending resilience work on the roadmap. Backlogs skew heavily happy-path; this package gives a concrete, demoable way to argue that error pages, retries, graceful degradation, and runbooks deserve sprint capacity. Use it as a forcing function in prioritization, not as a shipped dependency.
  • Build vs. buy vs. skip for fault injection. With 0 dependents, one maintainer, and a Symfony-only implementation, the real decision is not "adopt this package" but "do we build a ~100-line internal equivalent?" Treat the repo as a reference design and a scope estimate for a 1–3 day spike.
  • Validating observability spend. If we've just paid for Sentry/Datadog/PagerDuty or stood up an on-call rotation, injecting failures in staging is the cheapest test that alerts actually fire and someone responds. This directly informs whether the observability line item is delivering value.
  • Defining failure-UX as a product requirement. The PM output is a decision: what does the user see, what's the error copy, is a transaction id exposed, do we retry silently or surface a message, what's the SLA/status-page expectation? That's product surface, not just engineering hygiene.
  • Launch-readiness / game-day gating. A defensible input into "are we ready for peak traffic / a major launch?" via a bounded, scheduled chaos exercise in staging.
  • Test-strategy decisions. Whether error paths are covered by hand, by mocks, or via injected runtime faults — and whether fault injection belongs in CI (usually no) or in a pre-release staging soak (usually yes).

When to Consider This Package

Worth a look when:

  • The capability, not the code: we want a pattern reference for a Laravel-native chaos middleware (~a day of engineering) rather than a long-lived third-party dependency.
  • We want a teaching artifact for a workshop, brown-bag, or onboarding exercise on error handling — the project reads best as a reference/demo.
  • Failure injection is scoped to dev/staging only, behind an explicit env toggle, with a clearly bounded blast radius.

Look elsewhere — or skip entirely — when:

  • We're on Laravel. This is a Symfony bundle wired into kernel events and the DI container; there is no service provider, facade, or Laravel bridge. Budget a port/reimplementation, not an install.
  • We need a maintained dependency. Zero dependents, ~114 stars, single maintainer, and a name/description ("RandomDisaster") that signals a teaching project. Do not put it in a composer.json we'll have to support in 18 months — even in require-dev, its Symfony footprint invites resolver conflicts and misleading security signals.
  • We need real chaos engineering. Gremlin, AWS Fault Injection Service, LitmusChaos, or Toxiproxy give scoped targets, latency/network faults, schedulable experiments, and audit trails. This bundle's fault model is essentially "throw a random exception."
  • We need latency, dependency-failure, or partial-outage simulation (upstream timeouts, DB failover, queue backlog). Random exceptions don't model those.
  • We're in a regulated or shared-staging-sensitive environment where random failures would disrupt QA, demos, or shared integration tests.
  • We have no staging environment isolated from production config. The entire risk profile is "someone flips the wrong flag."

How to Pitch It (Stakeholders)

For executives (30 seconds): This is a small, free open-source tool that randomly breaks a staging application on purpose, so we can prove our monitoring and alerting work before a real outage does. The strategic value is insurance-grade confidence in incident response at roughly zero cost. Recommendation: do not adopt it as a dependency — it's built for Symfony, not our Laravel stack, has no production users, and is effectively one person's teaching demo. Instead, copy the idea: a small internal, flag-gated failure injector in staging delivers ~90% of the benefit in about a day of engineering, with none of the maintenance or supply-chain risk. If we want this seriously, we buy a proper chaos platform.

For engineering: Treat this as a reference implementation and a conversation starter, not a package. Its fault model — throw a random exception — is enough to exercise error boundaries, logging, alert routing, and user-facing error states, but not latency or partial-dependency failures. If we want the capability, we build it natively as Laravel middleware gated on an env flag, hard-disabled outside staging, with a route allowlist, a kill switch, and a seeded PRNG so tests stay deterministic. The decision we need from this evaluation is scope, not adoption: one day of internal build, or a budget line for a real chaos tool. Either way, we approve the pattern and reject the package.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core