Test warning fix#118
Merged
Merged
Conversation
Task #142 — Add five SKILL.md files co-located with their providers: - fastapi/skills/fastapi-routing/ HTTP route definition with Router - fastapi/skills/fastapi-resource-controllers/ RESTful CRUD via router.resource() - masoniteorm/skills/orm-models/ Model class, QueryBuilder, relationships - masoniteorm/skills/orm-migrations/ Blueprint, migration lifecycle, artisan cmds - masoniteorm/commands/skills/console-commands/ Cleo command authoring and registration Each file follows the YAML-frontmatter convention expected by ClaudeAdapter (name + description keys, then markdown body with usage examples drawn from the real source). Task #143 — Add [skills] optional extra to fastapi_startkit/pyproject.toml. SkillsServiceProvider requires no additional pip dependencies; the extra signals intent and documents how to register SkillsServiceProvider so artisan discovers skills:sync / skills:list. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-locates broadcasting/skills/broadcasting/SKILL.md with ReverbProvider so SkillRegistry discovers it when the provider is registered. Documents the no-facade API: - BroadcastEvent subclass + broadcast_on() + payload dict - event.emit() and await broadcast(event) for dispatch - Channel / PrivateChannel / PresenceChannel with auto-prefix behaviour - @channel(pattern) decorator in routes/channels.py for auth callbacks - ReverbProvider registration Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…rules fastapi-resource-controllers/SKILL.md: - Rewrite controller example as full async (async def + await on all ORM) - Show ResourceCollection return type and TaskResource.collection(paginator) - Add "Advanced ORM query patterns" section with: lambda-grouped WHERE clauses, paginate() with JSON:API meta, where_not_in, or_where_raw masoniteorm/skills/orm-models/SKILL.md: - Add "Advanced query patterns" section: lambda-grouped WHERE (SubGroup), where_not_in, OR conditions (or_where / or_where_null / or_where_raw), paginate() + LengthAwarePaginator, simple_paginate, joins - Raw-fragment guidance: use where_raw sparingly .ai/laravel/skill/laravel-best-practices/rules/architecture.md (task #157): - 10 architecture rules with do/don't Python examples: 1. Provider register() vs boot() separation 2. Container injection via resolve() over service locator 3. Single responsibility per provider 4. Resourceful controllers — async def, ResourceCollection return 5. ORM conventions — await discipline, relationship descriptors 6. Route organisation — guest/auth Router split, middleware at Router level 7. Config via dataclass + env(), no hardcoded values 8. Business logic in services, not controllers/routes 9. Broadcasting — BroadcastEvent, @channel auth, no facades 10. Async discipline — no blocking I/O in async context Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Reviewer-requested rework: all skills must live in the centralized stubs tree so they are published via `artisan provider:publish` and scanned by SkillRegistry from the project root .ai/ directory. New canonical path for every skill: skills/stubs/.ai/fastapi-startkit/skill/<name>/SKILL.md Moves (6 renames + 1 rule file rename, all history-preserving): fastapi/skills/fastapi-routing/ → stubs/.ai/.../fastapi-routing/ fastapi/skills/fastapi-resource-controllers/ → stubs/.ai/.../fastapi-resource-controllers/ masoniteorm/skills/orm-models/ → stubs/.ai/.../orm-models/ masoniteorm/skills/orm-migrations/ → stubs/.ai/.../orm-migrations/ masoniteorm/commands/skills/console-commands/→ stubs/.ai/.../console-commands/ broadcasting/skills/broadcasting/ → stubs/.ai/.../broadcasting/ .ai/laravel/…/rules/architecture.md → stubs/.ai/.../laravel-best-practices/rules/architecture.md New file: stubs/.ai/.../laravel-best-practices/SKILL.md — parent skill for the rules/ directory (frontmatter + body listing rules/architecture.md) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…docs BroadcastEvent.emit() is async — every example must use await .emit(). Also update Rule 9 description in architecture.md to match. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Merge fastapi-routing and fastapi-resource-controllers into a single fastapi/SKILL.md covering routing verbs, auth groups, resource() shortcut, and the canonical async JSON-API controller pattern - Canonical controller uses pendulum.now(), Response(204), find_or_fail, specific exception catches, Logger.error, and no orphaned child rows - Add inertia-controllers/SKILL.md with Inertia.render(), 303 redirects, Form Requests, DB transactions, and dispatched (non-awaited) long jobs - Remove superseded fastapi-routing/ and fastapi-resource-controllers/ dirs Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ions only - Delete fastapi/, inertia-controllers/, laravel-best-practices/, orm-models/ (all replaced by the single verbatim fastapi-startkit skill on PR #113) - Revert fastapi_startkit/pyproject.toml to main (removes [skills] extra added in an earlier commit — not part of this PR's scope) - Strip filler from broadcasting/SKILL.md: remove "When to use" section, intro paragraph, and docstring comment in channel callback example - Remove placeholder `# ...do work` comment from console-commands/SKILL.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.