baks-dev/yandex-market
BaksDev YandexMarket is a PHP 8.4+ module for integrating the Yandex Market API, featuring per-token messenger queue transports, installable configuration and assets, and a dedicated test group for validating Yandex Market workflows.
Architecture fit
bin/console for asset installation, Symfony Messenger transports and retry strategies expressed as Messenger options, and a shared baks-dev framework layer implied by baks:assets:install. A TPM should size integration as "Symfony bundle consumed inside a Laravel app," which is roughly one sprint more than adopting a Laravel-native client. Roadmap dates built on the "Laravel package" assumption are wrong and should be re-baselined.baks-dev/yandex-market requires a baks-dev core (kernel, shared abstractions, or persistence), we would be adopting a framework, not an API client. That changes the decision from "cheap wrapper" to "second application substrate inside our app," with a correspondingly larger maintenance and upgrade obligation. This must be resolved by dependency inspection before any commitment.Integration feasibility
MarketplaceClient, CatalogSync, and OrderFeed interfaces, implement them by delegating to this package. Controllers, jobs, and domain services never import package namespaces. This is what makes a zero-star dependency an acceptable risk rather than an unmanaged one, and it is the cheapest insurance we can buy.Technical risk
| Risk | Severity | TPM mitigation |
|---|---|---|
| Single maintainer, 0 stars, 0 dependents, release notes are the version string repeated | High | Fork to org namespace on day one; vendor via VCS; budget 0.1–0.2 FTE/yr ownership and state it in the business case |
Transitive baks-dev core dependency |
High | Timeboxed dependency spike with a hard go/no-go gate before roadmap commitment |
| Retry semantics without documented idempotency | High | Enforce idempotency keys at our adapter; cap retries at 3 with exponential backoff plus a dead-letter queue |
| Token storage/rotation model undocumented | Medium | Own credential storage in encrypted config/secrets manager; treat package as stateless consumer |
| Metadata anomaly: release dated 2026-06-01 | Medium | Verify Packagist ownership, provenance, and signing before adoption — supply-chain hygiene gate |
| No endpoint coverage matrix | Medium | Contract tests against Yandex sandbox; enumerate catalog/price/order/report coverage explicitly |
| Two parallel queue runtimes | Medium | Constrain to one runtime before GA; consolidate prior to scaling past pilot |
| Russian-only README, thin docs | Medium | Budget for onboarding cost and internal runbook authoring; do not assume self-service adoption |
Key questions
composer require baks-dev/yandex-market pull in — a Symfony kernel, Doctrine, a baks-dev core? This single answer determines whether the package is a wrapper or a framework.--group=yandex-market flag — does it run in CI, and against mocks or sandbox?Stack fit
Marketplace module behind our own interfaces. Direct namespace imports from controllers or domain services should fail code review. This is the mechanism that converts an abandoned dependency into a replaceable one.queue names suffixed by token UUID), and align queue naming with the package's profile naming so runbooks stay coherent across both runtimes during transition.Migration path
Compatibility
bin/console instructions are a signal, not a formality.php constraint exists in the transitive tree. If the package pulls a Symfony major version that conflicts with other installed Symfony components, the conflict is likely to be resolvable but non-trivial — budget for it.Sequencing
baks-dev core is required, confirm whether the package owns schema, verify Packagist ownership and release provenance. No-go here ends the initiative cheaply.MarketplaceClient, CatalogSync, OrderFeed interfaces and write the delegating implementation against sandbox. Building the integration before the boundary is how teams end up unable to leave.composer require.Maintenance
Support
Scaling
Failure modes
Ramp-up
baks-dev core, or if a read-only vertical slice is not working within three engineer-weeks, stop and reassess against a first-party client build. Written-in-advance criteria are the only reliable protection against sunk-cost escalation on an unsupported dependency.How can I help you explore Laravel packages today?