Skip to content
CAI
Software that uses CAICheck a score

yceruto/symfony-ddd-skeleton

52.9

Adequate · 22 September 2026

90

lines of production code

PHP

primary language

7

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a Symfony-based application framework designed to support multi-tenant or modular deployments through isolated application contexts. It provides a standardized entry point for both web requests and console commands, leveraging Symfony 7.2's modern runtime conventions and automatic dependency injection. The architecture allows distinct configurations and services for different contexts, facilitating a clean separation of concerns within a single codebase.

Features

Initial Symfony configuration scaffolding for dependency injection and service discovery

The application's configuration has been initialized with Symfony's standard structure, including the bundle registration, preloading setup, and service definitions. The service container is configured to automatically wire and configure all classes within the 'src/' directory, enabling automatic dependency injection and service discovery for the application's core components.

config · high confidence

Introduce context-based application structure for multi-tenant or modular deployments

The application now supports multiple 'contexts' (e.g., 'app', 'admin', 'api') by isolating configuration, routing, and bundle registration per context. The Symfony Kernel is modified to dynamically load context-specific directories for cache, logs, services, and routes, allowing separate deployments or environments to share a single codebase while maintaining distinct configurations. This change enables modular architecture where each context can have its own set of controllers, commands, and services, facilitating multi-tenant or multi-product scenarios within a single Symfony application.

context · high confidence

Introduced a new console entry point for the application

A new \bin/console\ script has been added to serve as the entry point for running console commands. This script validates that dependencies and the Symfony Runtime are present before booting the application kernel, allowing users to execute CLI commands via the standard console interface.

bin · high confidence

Behavioural changes

Added public/index.php entry point for Symfony runtime

A new public/index.php file has been added to serve as the application's entry point. This file loads the Composer autoloader and returns a closure that instantiates the application Kernel, aligning with modern Symfony runtime conventions.

public · medium confidence

Test coverage

Added base test case for web requests

Added a new base test case class, AppWebTestCase, which extends Symfony's WebTestCase. This class configures the kernel to be created with a specific 'app' context, providing a standardized foundation for writing web integration tests within the application.

tests/context · high confidence

Dependencies

Upgrade to Symfony 7.2 with PHP 8.2 requirement

The project has been upgraded to Symfony 7.2, requiring PHP 8.2 or higher. This update includes the latest versions of core Symfony components such as console, framework-bundle, and runtime, alongside supporting libraries like psr/cache and psr/container. Users will need to ensure their environment meets the new PHP version requirement to run the application.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 47 → 53 (+5.4)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 69 → 69 (+0.0)
  • Maturity 56 → 59 (+3.5)
  • Readiness 24 → 33 (+9.0)
  • Security 92 → 95 (+3.2)

Resolved (10)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
  • Medium CVE: [GHSA redacted] (composer.lock)
  • Medium CVE: [GHSA redacted] (composer.lock)
  • No exposed public API
  • Off-boarding risk: anonymized user #1
  • Secret: generic-api-key (.env)
  • Secret: generic-api-key (.env)
  • Test reliability not included
  • The shared presentation layer README lists only abstract controllers, serializers, and input/output adapters; no guidance on how to add new adapters or test them. (src/Shared/Presentation/README.md)

New (6)

  • Medium CVE: [GHSA redacted] (composer.lock)
  • Medium CVE: [GHSA redacted] (composer.lock)
  • No ADRs found
  • Outdated: symfony/flex
  • Secret: generic-api-key (.env)
  • Secret: generic-api-key (.env)

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

yceruto/symfony-ddd-skeleton was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 22 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 7e64fd39ceed1d0c33fe91c09bee3d6970d5be0f — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-821afab8930d.