Skip to content

T1 introspection - #2

Merged
niden merged 16 commits into
masterfrom
T1-introspection
Jul 29, 2026
Merged

niden merged 16 commits into
masterfrom
T1-introspection

Conversation

@niden

@niden niden commented Jul 29, 2026

Copy link
Copy Markdown
Member

NFR

Added

  • Added route:list, listing every route the application answers with its method and Action class. Reads the Action classes rather than a route table, since ADR has none. #1
  • Added config:show, showing the resolved project configuration and marking each value as declared or inferred. #1
  • Added container:list, listing the services registered in the project container with their class and whether they have been resolved. #1
  • Added event:list, listing the listeners attached to the project events manager. #1
  • Added list (aliases commands, enumerate), listing the available commands. #1
  • Added the bootstrap key to crest.php, naming the project front controller so commands that need a running application can boot one: 'bootstrap' => App\Front\AppFront::class. Requires a boot() returning a container. #1
  • Added Crest\Console\Input::argumentString(), optionString() and optionStringOrNull(), narrowing the common string case so commands do not each repeat a type guard.

Changed

  • make:action now writes a params() declaration for routes with attributes, so they arrive constrained and cast rather than as raw strings.
  • make:action now rejects a static segment after a placeholder and suggests the supported spelling: /album/{id}/edit is reported as /album/edit/{id}. Arguments trail the static path, so the first form has no class name that describes it.
  • Renamed Crest\Adr to Crest\ADR, and Flavor::Adr, Flavor::Cli and Flavor::Mvc to Flavor::ADR, Flavor::CLI and Flavor::MVC, matching Phalcon\ADR. Backed values are unchanged.
  • Renamed Crest\ADR\CandidateSource to ActionResolver and PhalconRouterCandidates to PhalconRouterResolver. One path now names exactly one Action, so there are no candidates to choose between.
  • Dependencies now resolve against the PHP 8.1 floor via config.platform, so the lock matches the declared minimum.

Removed

  • Removed the shadowed-action warning from make:action. One path names exactly one Action, so nothing can be shadowed.

niden added 15 commits July 27, 2026 10:52
Assisted by: Claude Code
Assisted by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
Assisted-by: Claude Code
@niden niden self-assigned this Jul 29, 2026
@niden niden added the enhancement New feature or request label Jul 29, 2026
Assisted-by: Claude Code
@github-actions

Copy link
Copy Markdown

Code Metrics Report

🚫 Code coverage is 98.6%. the condition in the coverage.acceptable: section is not met (current >= 95.0% && diff >= 0)

master (d5683dd) #2 (437c77b) +/-
Coverage 98.6% 98.6% -0.1%
Test Execution Time 1s 1s 0s
Details
  |                     | master (d5683dd) | #2 (437c77b) |  +/-  |
  |---------------------|------------------|--------------|-------|
- | Coverage            |            98.6% |        98.6% | -0.1% |
  |   Files             |               25 |           31 |    +6 |
  |   Lines             |              519 |          736 |  +217 |
+ |   Covered           |              512 |          726 |  +214 |
  | Test Execution Time |               1s |           1s |    0s |

Code coverage of files in pull request scope (97.9% → 98.2%)

Files Coverage +/- Status
resources/src/Adr/Convention.php 0.0% -100.0% affected
resources/src/Adr/Target.php 0.0% -100.0% affected
src/ADR/ActionResolver.php 0.0% 0.0% added
src/ADR/Convention.php 100.0% +100.0% renamed
src/ADR/PhalconRouterResolver.php 60.0% +60.0% added
src/ADR/Target.php 100.0% +100.0% renamed
src/Adr/CandidateSource.php 0.0% 0.0% removed
src/Adr/PhalconRouterCandidates.php 0.0% -50.0% removed
src/Command/Config/ShowCommand.php 100.0% +100.0% added
src/Command/Container/ListCommand.php 100.0% +100.0% added
src/Command/Event/ListCommand.php 97.2% +97.2% added
src/Command/ListCommand.php 100.0% +100.0% added
src/Command/Make/ActionCommand.php 100.0% 0.0% modified
src/Command/Route/ListCommand.php 95.5% +95.5% added
src/Commands.php 100.0% 0.0% modified
src/Project/Bootstrap.php 100.0% +100.0% added
src/Project/Config.php 100.0% 0.0% modified
src/Project/Flavor.php 0.0% 0.0% modified

Reported by octocov

@niden
niden merged commit 96d6bc3 into master Jul 29, 2026
6 of 7 checks passed
@niden
niden deleted the T1-introspection branch July 29, 2026 02:56
@niden niden mentioned this pull request Jul 29, 2026
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant