Skip to content

Claude/add dart flutter support p01 rj#1055

Open
ritvij-saxena wants to merge 3 commits intoaffaan-m:mainfrom
ritvij-saxena:claude/add-dart-flutter-support-P01RJ
Open

Claude/add dart flutter support p01 rj#1055
ritvij-saxena wants to merge 3 commits intoaffaan-m:mainfrom
ritvij-saxena:claude/add-dart-flutter-support-P01RJ

Conversation

@ritvij-saxena
Copy link
Copy Markdown

@ritvij-saxena ritvij-saxena commented Mar 31, 2026

Summary

Adds full Dart/Flutter language support to match the existing Kotlin, Go, Swift, and Rust packs. Inspired by upstream PRs #742, #1030, and #1044 from affaan-m/everything-claude-code.

New files (11)

File Purpose
rules/dart/coding-style.md dart format, immutability, null safety, sealed types, imports
rules/dart/hooks.md PostToolUse hooks for dart format/dart analyze, pre-commit checklist
rules/dart/patterns.md Repository, BLoC, Riverpod, ViewModel, UseCase, clean arch, GoRouter
rules/dart/security.md Secrets, HTTPS, input validation, secure storage, Android/iOS specifics
rules/dart/testing.md Unit/widget/golden/integration tests, BLoC test, Riverpod containers, coverage
agents/dart-build-resolver.md Fixes flutter analyze errors, null safety issues, pub conflicts, build_runner failures
commands/flutter-build.md /flutter-build — incremental build/analysis error fixing
commands/flutter-review.md /flutter-review — invokes flutter-reviewer agent
commands/flutter-test.md /flutter-test — runs test suite, fixes failures, reports coverage
skills/dart-flutter-patterns/SKILL.md Production patterns: null safety, sealed state, BLoC, Riverpod, GoRouter, Dio
manifests/install-modules.json Registers flutter-dart opt-in install module

Updated files (3)

  • README.md — bumped counts: 31 agents, 137 skills, 63 commands
  • AGENTS.md — same count updates in two locations
  • yarn.lock — updated after markdownlint-cli install during linting

What already existed (intentionally preserved)

  • agents/flutter-reviewer.md — comprehensive Flutter/Dart code reviewer (all new commands reference it)
  • skills/flutter-dart-code-review/SKILL.md — full review checklist (referenced by rules and commands)

Validation evidence

✓ validate-agents.js     — Validated 31 agent files
✓ validate-rules.js      — Validated 82 rule files
✓ validate-commands.js   — Validated 63 command files
✓ validate-skills.js     — Validated 137 skill directories
✓ catalog counts         — README.md and AGENTS.md match actual file counts
✓ manifest JSON          — flutter-dart module parses cleanly
✓ cross-references       — all agent/skill paths in commands resolve to real files

Full test suite: 1688 passed, 8 failed — the 8 failures are pre-existing on main (identical count before and after these changes, confirmed via git stash baseline run).

Test plan

  • node scripts/ci/validate-agents.js agents/ — exits 0, reports 31 files
  • node scripts/ci/validate-rules.js rules/ — exits 0, reports 82 files
  • node scripts/ci/validate-commands.js commands/ — exits 0, reports 63 files
  • node scripts/ci/validate-skills.js skills/ — exits 0, reports 137 directories
  • node tests/run-all.js — 1688 pass, same 8 pre-existing failures
  • Spot-check rules/dart/ files for correct YAML frontmatter paths (**/*.dart)
  • Confirm /flutter-build, /flutter-review, /flutter-test commands load in Claude Code

Summary by cubic

Adds full Dart/Flutter support with language rules, a build-fix agent, and /flutter-* commands. Integrates as the flutter-dart module (also in the "full" profile) and updates catalog counts.

  • New Features

    • Added Dart rules: coding style, hooks, patterns, security, testing (rules/dart/).
    • Added dart-build-resolver agent for analyzer/build errors, pub conflicts, and build_runner.
    • Added commands: /flutter-build, /flutter-review (now lists build/test/analyze prereqs), /flutter-test.
    • Added skills/dart-flutter-patterns; integrated existing Flutter reviewer/skill.
    • Polished content: Dart-native null safety (avoid !), replaced Kotlin idioms, GoRouter with refreshListenable, WebView v4+ API, Dio 401 one-time retry guard, firstWhereOrNull fix, injected IdGenerator, completed repository methods, test/Cubit example fixes, clarified import guidance.
    • Registered flutter-dart in install-modules.json and added to the "full" profile; updated counts to 37 agents, 143 skills, 71 commands in README.md/AGENTS.md.
  • Migration

    • Enable by installing the flutter-dart module (opt-in) or using the "full" profile. No breaking changes.

Written for commit 3a1715f. Summary will update on new commits.

Summary by CodeRabbit

  • New Features

    • Added a Dart/Flutter build/resolver agent and three new commands: flutter-build, flutter-review, flutter-test
    • Registered a new Flutter/Dart module in installation manifests and added it to the full install profile
  • Documentation

    • Added comprehensive Dart/Flutter guides: coding style, hooks, patterns, security, testing, and a Dart/Flutter patterns skill
    • Updated project inventory to 37 agents / 143 skills / 71 commands

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Mar 31, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Mar 31, 2026

Analysis Failed

Not Found - https://docs.github.com/rest/git/refs#get-a-reference

Troubleshooting
Cause Resolution
Large repository Analysis may timeout on repos with extensive history
API rate limits Wait 15 minutes before retrying
Network issues Queue timeout is 15 minutes; retry may succeed
Permissions Verify app has Contents: Read access

Retry: /ecc-tools analyze


Report Issue | ECC Tools

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 31, 2026

📝 Walkthrough

Walkthrough

Added a Flutter/Dart feature set: new flutter-dart module and profile entry, one Dart agent spec, three Flutter command docs, multiple Dart rules/patterns/hooks/testing/security/style files, a Dart/Flutter skill, and updated inventory totals to 37 agents / 143 skills / 71 commands.

Changes

Cohort / File(s) Summary
Inventory & Docs
AGENTS.md, README.md
Updated published catalog totals and repository-tree descriptions to reflect new counts: 37 agents, 143 skills, 71 commands; adjusted feature-parity table entries.
Agent Spec
agents/dart-build-resolver.md
Added a Dart/Flutter Build Error Resolver agent spec: diagnostic sequence, analyze→inspect→apply-fix loop, build_runner and platform remediation steps, and standardized reporting format.
Commands
commands/flutter-build.md, commands/flutter-review.md, commands/flutter-test.md
Added three command workflow documents: build/fix, /flutter-review code review, and test workflows with diagnostic parsing, iterative fix strategy, examples, and stop conditions.
Module Manifests & Profiles
manifests/install-modules.json, manifests/install-profiles.json
Registered new flutter-dart module (kind: skills, targets set, dependencies declared) and added flutter-dart to profiles.full.modules.
Dart Rules
rules/dart/coding-style.md, rules/dart/hooks.md, rules/dart/patterns.md, rules/dart/security.md, rules/dart/testing.md
Introduced Dart/Flutter-specific rules: coding style, hooks/pre-commit, architecture patterns, security guidance, and testing best practices.
Skills
skills/dart-flutter-patterns/SKILL.md
New Dart/Flutter skill covering idiomatic patterns (null-safety, immutability, state-management, navigation, networking, error handling, testing) with examples and references.

Sequence Diagram(s)

sequenceDiagram
  participant Dev as Developer (Repo)
  participant Agent as Dart Build Resolver Agent
  participant CLI as Flutter/Dart CLI
  participant FS as File System
  participant Tests as Test Runner

  Dev->>Agent: invoke /flutter-build or trigger agent
  Agent->>CLI: run `flutter analyze` / `dart analyze`
  CLI-->>Agent: return analysis diagnostics
  Agent->>FS: open files with errors
  Agent->>Agent: determine minimal surgical fix
  Agent->>FS: write updated file (rgba(0,128,0,0.5))
  Agent->>CLI: re-run `flutter analyze`
  CLI-->>Agent: new diagnostics
  alt errors resolved
    Agent->>CLI: run `flutter build` / `flutter test`
    CLI->>Tests: execute build/tests
    Tests-->>Agent: final status (PASS/FAIL)
  else still failing
    Agent->>Dev: report remaining errors and stop conditions
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • affaan-m

Poem

🐰 I hopped through docs with fluffy cheer,
New Dart agents, skills, and rules appear.
Builds and tests fixed step-by-step and bright,
Thirty-seven agents bounding into sight —
Code carrots crunch, the repo feels light. 🥕✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The PR title 'Claude/add dart flutter support p01 rj' is vague and non-descriptive; it uses abbreviations (p01 rj) and a generic format that doesn't clearly communicate the primary change to someone scanning commit history. Improve the title to be more descriptive and specific, e.g., 'Add Dart/Flutter support with agents, commands, rules, and skills' or similar phrasing that clearly identifies the main change.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Mar 31, 2026

Greptile Summary

This PR adds full Dart/Flutter language support to the ECC plugin — 5 rule files, 1 build-fixer agent, 3 commands, 1 skill, and manifest registration — matching the existing Kotlin, Go, Swift, and Rust packs. Previous review concerns (deprecated WebView API, context.read<AuthState>(), and the !-ban contradiction) have all been addressed in this revision.

Key findings:

  • Constructor mismatch in test examplerules/dart/testing.md initialises CartBloc(repository) but the canonical CartBloc in rules/dart/patterns.md has a no-argument constructor. A developer copying both files gets a compile error.
  • Null-fix priority in build-resolver table — the quick-fix table in agents/dart-build-resolver.md lists Add '!' before safer alternatives (?? default, null guard), which conflicts with the Key Principles section in the same file.
  • Unquoted $CLAUDE_FILE_PATHS in hook commanddart format $CLAUDE_FILE_PATHS in rules/dart/hooks.md will fail for file paths containing spaces; the variable should be quoted or piped through xargs.
  • The manifest registration, install profiles, README/AGENTS.md counts (37 agents, 143 skills, 71 commands), and all cross-references are accurate.

Confidence Score: 4/5

  • Safe to merge after fixing the CartBloc constructor mismatch in the testing example, which currently produces a compile error when copy-pasted.
  • One P1 finding: the CartBloc constructor inconsistency between patterns.md and testing.md will cause a compile error for any developer who copies both example files. The remaining two findings are P2 style/best-practice suggestions. Score is 4 rather than 5 because the P1 should be fixed before merge to avoid shipping broken example code.
  • rules/dart/testing.md (CartBloc constructor mismatch) and agents/dart-build-resolver.md (null-fix priority order)

Important Files Changed

Filename Overview
rules/dart/coding-style.md Well-structured style guide with Dart-idiomatic null safety, immutability, and error handling rules; previous !-ban contradiction and Kotlin .let reference have been corrected in this revision.
rules/dart/testing.md BLoC test setup passes CartBloc(repository) but the CartBloc defined in patterns.md takes no constructor arguments — copy-pasting both files produces a compile error.
rules/dart/patterns.md GoRouter, BLoC/Cubit, Riverpod, and Repository patterns look correct; context.read<AuthCubit>() (not AuthState) and ! on path parameters are now correctly nuanced.
rules/dart/security.md WebView v4+ API is now used correctly (WebViewController/WebViewWidget), addressing the previously-flagged deprecated widget concern.
rules/dart/hooks.md Solid PostToolUse hook reference; the unquoted $CLAUDE_FILE_PATHS in the dart format command is fragile for paths containing spaces.
agents/dart-build-resolver.md Comprehensive build-fixer agent with clear workflow and fix patterns; the null-safety fix table surfaces ! before safer alternatives, creating a minor priority conflict with the guidance elsewhere in the same file.
skills/dart-flutter-patterns/SKILL.md High-quality production patterns: correct Dio retry guard, firstWhereOrNull usage, GoRouter refreshListenable, BuildContext mounted checks, and sealed state — all consistent with the rules files.
commands/flutter-build.md Well-structured command with clear prerequisites, diagnostic sequence, incremental fix strategy, and accurate cross-references to the dart-build-resolver agent.
commands/flutter-review.md Clean command that correctly gates review on build and test success; severity table and approval criteria are clear and actionable.
commands/flutter-test.md Comprehensive test command with golden-file handling, coverage reporting, and a useful common-failures table; cross-references are accurate.
manifests/install-modules.json New flutter-dart module is correctly registered with all expected paths, appropriate dependencies, and opt-in default.
manifests/install-profiles.json flutter-dart is correctly added to the full install profile with no impact on other profiles.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Developer invokes /flutter-build] --> B[dart-build-resolver agent]
    A2[Developer invokes /flutter-review] --> C[flutter-reviewer agent]
    A3[Developer invokes /flutter-test] --> D[Test runner + dart-build-resolver]

    B --> E[flutter analyze\nflutter pub get\nbuild_runner]
    C --> F[git diff inspection\npubspec / analysis_options\nSecurity pre-scan\nFull review checklist]
    D --> G[flutter test --coverage\nfixing failures incrementally]

    E -->|Errors| H{Fix loop\nmax 3 attempts}
    H -->|Fixed| I[flutter analyze ✓]
    H -->|Stuck| J[Stop & report to user]

    F --> K[Severity report\nCRITICAL / HIGH / MEDIUM / LOW]
    G --> L[Coverage report\ntarget ≥ 80%]

    subgraph rules/dart/
        M[coding-style.md]
        N[patterns.md]
        O[security.md]
        P[testing.md]
        Q[hooks.md]
    end

    subgraph skills/
        R[dart-flutter-patterns/SKILL.md]
        S[flutter-dart-code-review/SKILL.md]
    end

    C --> S
    B --> S
    D --> P
Loading

Reviews (4): Last reviewed commit: "fix(dart): address PR #1055 review comme..." | Re-trigger Greptile

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

13 issues found across 14 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="rules/dart/patterns.md">

<violation number="1" location="rules/dart/patterns.md:21">
P2: Repository example class implements an interface but omits required methods, making the sample non-compilable.</violation>

<violation number="2" location="rules/dart/patterns.md:169">
P2: Use-case example introduces an external dependency (`Uuid`) in logic that the doc frames as domain-layer code, conflicting with the stated clean-architecture boundary.</violation>
</file>

<file name="rules/dart/testing.md">

<violation number="1" location="rules/dart/testing.md:131">
P2: `Future<void>` methods are written as `async =>` with non-void expressions, creating return-type errors in the sample code.</violation>
</file>

<file name="rules/dart/coding-style.md">

<violation number="1" location="rules/dart/coding-style.md:47">
P2: Dart coding-style guidance incorrectly recommends `?.let`, a Kotlin idiom, which can mislead developers into writing non-standard/non-compiling Dart code.</violation>

<violation number="2" location="rules/dart/coding-style.md:141">
P2: Import guidance is internally contradictory: one rule bans relative imports while the next rule explicitly allows them for same-package `src` files.</violation>
</file>

<file name="README.md">

<violation number="1" location="README.md:223">
P2: PR updates some component totals but leaves other count sections stale, creating contradictory README numbers.</violation>
</file>

<file name="skills/dart-flutter-patterns/SKILL.md">

<violation number="1" location="skills/dart-flutter-patterns/SKILL.md:348">
P2: `cartTotal` uses `firstWhere` without a fallback, which can throw `StateError` when a cart item’s product is missing.</violation>

<violation number="2" location="skills/dart-flutter-patterns/SKILL.md:362">
P2: GoRouter auth redirect example is non-reactive to auth state changes because router refresh wiring is missing.</violation>

<violation number="3" location="skills/dart-flutter-patterns/SKILL.md:409">
P2: 401 refresh retry flow replays requests without a one-time retry guard, which can cause repeated retry loops.</violation>
</file>

<file name="AGENTS.md">

<violation number="1" location="AGENTS.md:3">
P2: AGENTS.md updates total agent counts but leaves the "Available Agents" inventory incomplete (missing Dart/Flutter agents), causing documentation-to-routing drift.</violation>
</file>

<file name="commands/flutter-review.md">

<violation number="1" location="commands/flutter-review.md:19">
P2: `/flutter-review` docs omit the required pre-review gate that build/test/lint/CI checks must be passing before review starts, making mandatory team workflow appear optional.</violation>

<violation number="2" location="commands/flutter-review.md:19">
P2: `/flutter-review` usage criteria omit the required rebase/merge-conflict resolution prerequisite, allowing review on non-mergeable diffs.</violation>
</file>

<file name="commands/flutter-build.md">

<violation number="1" location="commands/flutter-build.md:100">
P2: Documentation example mixes Cubit naming with Bloc-style `.add(event)` API, which can produce invalid auto-fix guidance.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review, or fix all with cubic.

AGENTS.md Outdated
# Everything Claude Code (ECC) — Agent Instructions

This is a **production-ready AI coding plugin** providing 30 specialized agents, 136 skills, 60 commands, and automated hook workflows for software development.
This is a **production-ready AI coding plugin** providing 31 specialized agents, 137 skills, 63 commands, and automated hook workflows for software development.
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: AGENTS.md updates total agent counts but leaves the "Available Agents" inventory incomplete (missing Dart/Flutter agents), causing documentation-to-routing drift.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At AGENTS.md, line 3:

<comment>AGENTS.md updates total agent counts but leaves the "Available Agents" inventory incomplete (missing Dart/Flutter agents), causing documentation-to-routing drift.</comment>

<file context>
@@ -1,6 +1,6 @@
 # Everything Claude Code (ECC) — Agent Instructions
 
-This is a **production-ready AI coding plugin** providing 30 specialized agents, 136 skills, 60 commands, and automated hook workflows for software development.
+This is a **production-ready AI coding plugin** providing 31 specialized agents, 137 skills, 63 commands, and automated hook workflows for software development.
 
 **Version:** 1.9.0
</file context>
Fix with Cubic

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Line 223: The README has an inconsistent agent count: change the directory
tree text "30 specialized subagents" to "31 specialized subagents" so it matches
the summary line "31 agents"; locate the string "30 specialized subagents" in
the README and update it (and any other occurrences of "30 specialized
subagents") to "31 specialized subagents" to keep counts consistent.

In `@rules/dart/coding-style.md`:
- Around line 46-48: The rule text incorrectly references Kotlin's `?.let`;
update the guidance to remove `?.let` and instead recommend Dart null-aware
operators and pattern matching—specifically mention `?.`, `??`, `if (x !=
null)`, and Dart 3 pattern matching as preferred alternatives to forced
unwrapping (`!`), and clarify the guidance about `late` (use nullable or
constructor initialization unless you can guarantee initialization before first
use). Ensure the phrase "Use `?.let` style" is replaced with Dart-appropriate
wording like "Use null-aware operators (`?.`, `??`) or pattern matching" and
keep the other bullet points about avoiding `!` and `late`.

In `@skills/dart-flutter-patterns/SKILL.md`:
- Around line 7-492: The document "Dart/Flutter Patterns" is missing the
required skill sections; add three Markdown sections titled "When to Use", "How
It Works", and "Examples" (each with at least one paragraph) for this skill.
Insert "When to Use" and "How It Works" immediately after the top-level title
"Dart/Flutter Patterns" and before the existing "1. Null Safety Fundamentals"
section, and add an "Examples" section either after each major pattern block or
as a consolidated section near the end that references patterns shown (Null
Safety, Immutable State, Async Composition, Widget Architecture, State
Management, Navigation, HTTP, Error Handling, Testing) so the doc conforms to
the skills/**/*.md required structure. Ensure headings use Markdown headers (##
When to Use, ## How It Works, ## Examples) and provide concise guidance and
usage examples in prose for each.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: c1e7e3b4-8616-4d06-ab3a-4e37cb952bdd

📥 Commits

Reviewing files that changed from the base of the PR and between f7f91d9 and 50d40e2.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (13)
  • AGENTS.md
  • README.md
  • agents/dart-build-resolver.md
  • commands/flutter-build.md
  • commands/flutter-review.md
  • commands/flutter-test.md
  • manifests/install-modules.json
  • rules/dart/coding-style.md
  • rules/dart/hooks.md
  • rules/dart/patterns.md
  • rules/dart/security.md
  • rules/dart/testing.md
  • skills/dart-flutter-patterns/SKILL.md

@affaan-m affaan-m mentioned this pull request Mar 31, 2026
3 tasks
@affaan-m
Copy link
Copy Markdown
Owner

Please rebase on main and re-push — merge conflicts prevent merging. Happy to merge once resolved.

ritvij-saxena pushed a commit to ritvij-saxena/everything-claude-code that referenced this pull request Apr 1, 2026
Resolves all issues raised by Greptile, CodeRabbit, and Cubic bots:

rules/dart/coding-style.md:
- Replace ?.let (Kotlin idiom) with Dart-native null-safe operators
- Soften "Never use !" to "Avoid !" — reserve for programming-error assertions
- Clarify import guidance: ban relative imports, no self-contradiction

rules/dart/patterns.md:
- Add missing getAll/save/delete implementations to UserRepositoryImpl
- Remove Uuid() from domain UseCase — inject IdGenerator instead (clean arch)
- Fix GoRouter redirect: context.read<AuthState>() -> context.read<AuthCubit>()
- Add refreshListenable: GoRouterRefreshStream to wire reactive auth state

rules/dart/security.md:
- Replace deprecated pre-v4 WebView API with WebViewController/WebViewWidget
- Update bullet points to reference new v4+ API

rules/dart/testing.md:
- Change async => _map[key] = val to async { } block to avoid non-void return

skills/dart-flutter-patterns/SKILL.md:
- Add required "When to Use", "How It Works", "Examples" sections
- Fix firstWhere -> firstWhereOrNull to prevent StateError
- Add refreshListenable to GoRouter pattern
- Add one-time retry guard to Dio 401 interceptor to prevent infinite loops

README.md:
- Fix directory tree "30 specialized subagents" -> "31"

commands/flutter-review.md:
- Add Prerequisites section (build/test/analyze must pass before review)

commands/flutter-build.md:
- Fix Cubit/Bloc API mix: CartCubit.add(event) -> CartCubit.addItem(item)

manifests/install-profiles.json:
- Add flutter-dart to full profile (fixes install manifest validator)

https://claude.ai/code/session_01BQbvf8xFtJyaFiuEgdnsin
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analysis Complete

Generated ECC bundle from 500 commits | Confidence: 100%

View Pull Request #1068

Repository Profile
Attribute Value
Language JavaScript
Framework Not detected
Commit Convention conventional
Test Directory separate
Detected Workflows (7)
Workflow Description
feature-development Standard feature implementation workflow
add-new-install-target Adds support for a new install target (e.g., CodeBuddy, Gemini) to the system, including scripts, manifests, schemas, and tests.
add-new-skill-or-agent Adds a new skill or agent to the system, including documentation and registration in manifests.
add-or-update-command-workflow Adds or extends user-facing commands (e.g., PRP, santa-loop, GAN harness), often with review/feedback cycles.
add-or-update-opencode-agent Adds new OpenCode agent prompt files and updates agent registration in opencode.json.
Generated Instincts (15)
Domain Count
git 2
code-style 3
testing 3
workflow 7

After merging, import with:

/instinct-import .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml

Files

  • .claude/ecc-tools.json
  • .claude/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/agents/openai.yaml
  • .claude/identity.json
  • .codex/config.toml
  • .codex/AGENTS.md
  • .codex/agents/explorer.toml
  • .codex/agents/reviewer.toml
  • .codex/agents/docs-researcher.toml
  • .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml
  • .claude/rules/everything-claude-code-guardrails.md
  • .claude/research/everything-claude-code-research-playbook.md
  • .claude/team/everything-claude-code-team-config.json
  • .claude/enterprise/controls.md
  • .claude/commands/feature-development.md
  • .claude/commands/add-new-install-target.md
  • .claude/commands/add-new-skill-or-agent.md

ECC Tools | Everything Claude Code

@ritvij-saxena ritvij-saxena force-pushed the claude/add-dart-flutter-support-P01RJ branch from a7fac0a to 1a03a2e Compare April 1, 2026 01:24
ritvij-saxena pushed a commit to ritvij-saxena/everything-claude-code that referenced this pull request Apr 1, 2026
Resolves all issues raised by Greptile, CodeRabbit, and Cubic bots:

rules/dart/coding-style.md:
- Replace ?.let (Kotlin idiom) with Dart-native null-safe operators
- Soften "Never use !" to "Avoid !" — reserve for programming-error assertions
- Clarify import guidance: ban relative imports, no self-contradiction

rules/dart/patterns.md:
- Add missing getAll/save/delete implementations to UserRepositoryImpl
- Remove Uuid() from domain UseCase — inject IdGenerator instead (clean arch)
- Fix GoRouter redirect: context.read<AuthState>() -> context.read<AuthCubit>()
- Add refreshListenable: GoRouterRefreshStream to wire reactive auth state

rules/dart/security.md:
- Replace deprecated pre-v4 WebView API with WebViewController/WebViewWidget
- Update bullet points to reference new v4+ API

rules/dart/testing.md:
- Change async => _map[key] = val to async { } block to avoid non-void return

skills/dart-flutter-patterns/SKILL.md:
- Add required "When to Use", "How It Works", "Examples" sections
- Fix firstWhere -> firstWhereOrNull to prevent StateError
- Add refreshListenable to GoRouter pattern
- Add one-time retry guard to Dio 401 interceptor to prevent infinite loops

README.md:
- Fix directory tree "30 specialized subagents" -> "31"

commands/flutter-review.md:
- Add Prerequisites section (build/test/analyze must pass before review)

commands/flutter-build.md:
- Fix Cubit/Bloc API mix: CartCubit.add(event) -> CartCubit.addItem(item)

manifests/install-profiles.json:
- Add flutter-dart to full profile (fixes install manifest validator)

https://claude.ai/code/session_01BQbvf8xFtJyaFiuEgdnsin
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analysis Complete

Generated ECC bundle from 500 commits | Confidence: 100%

View Pull Request #1073

Repository Profile
Attribute Value
Language JavaScript
Framework Not detected
Commit Convention conventional
Test Directory separate
Detected Workflows (9)
Workflow Description
feature-development Standard feature implementation workflow
add-new-agent-or-skill Adds a new agent or skill to the codebase, including documentation and catalog registration.
add-new-command-or-workflow Introduces a new command or workflow file, often with supporting documentation and catalog updates.
language-support-pack Adds comprehensive support for a new programming language, including rules, agents, commands, and skills.
add-or-update-mcp-server Adds or updates MCP (Model Context Protocol) server configurations and related documentation.
Generated Instincts (36)
Domain Count
git 3
code-style 10
testing 6
workflow 17

After merging, import with:

/instinct-import .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml

Files

  • .claude/ecc-tools.json
  • .claude/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/agents/openai.yaml
  • .claude/identity.json
  • .codex/config.toml
  • .codex/AGENTS.md
  • .codex/agents/explorer.toml
  • .codex/agents/reviewer.toml
  • .codex/agents/docs-researcher.toml
  • .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml
  • .claude/rules/everything-claude-code-guardrails.md
  • .claude/research/everything-claude-code-research-playbook.md
  • .claude/team/everything-claude-code-team-config.json
  • .claude/enterprise/controls.md
  • .claude/commands/feature-development.md
  • .claude/commands/add-new-agent-or-skill.md
  • .claude/commands/add-new-command-or-workflow.md

ECC Tools | Everything Claude Code

claude added 3 commits April 1, 2026 01:31
Add rules, agents, commands, and skills for Dart/Flutter development,
following the same patterns as existing Kotlin, Go, and Swift support.

New files:
- rules/dart/{coding-style,hooks,patterns,security,testing}.md
- agents/dart-build-resolver.md
- commands/flutter-{build,review,test}.md
- skills/dart-flutter-patterns/SKILL.md

Updated:
- manifests/install-modules.json — registers flutter-dart module

The flutter-reviewer.md agent and flutter-dart-code-review skill
already exist; this PR adds the missing rules directory and tooling
to complete the language support pack. Inspired by PRs affaan-m#742, affaan-m#1030,
and affaan-m#1044 from the upstream repository.

https://claude.ai/code/session_01BQbvf8xFtJyaFiuEgdnsin
Bump catalog counts in README.md and AGENTS.md to reflect the
new dart-build-resolver agent, dart-flutter-patterns skill, and
flutter-build/flutter-review/flutter-test commands.

https://claude.ai/code/session_01BQbvf8xFtJyaFiuEgdnsin
Resolves all issues raised by Greptile, CodeRabbit, and Cubic bots:

rules/dart/coding-style.md:
- Replace ?.let (Kotlin idiom) with Dart-native null-safe operators
- Soften "Never use !" to "Avoid !" — reserve for programming-error assertions
- Clarify import guidance: ban relative imports, no self-contradiction

rules/dart/patterns.md:
- Add missing getAll/save/delete implementations to UserRepositoryImpl
- Remove Uuid() from domain UseCase — inject IdGenerator instead (clean arch)
- Fix GoRouter redirect: context.read<AuthState>() -> context.read<AuthCubit>()
- Add refreshListenable: GoRouterRefreshStream to wire reactive auth state

rules/dart/security.md:
- Replace deprecated pre-v4 WebView API with WebViewController/WebViewWidget
- Update bullet points to reference new v4+ API

rules/dart/testing.md:
- Change async => _map[key] = val to async { } block to avoid non-void return

skills/dart-flutter-patterns/SKILL.md:
- Add required "When to Use", "How It Works", "Examples" sections
- Fix firstWhere -> firstWhereOrNull to prevent StateError
- Add refreshListenable to GoRouter pattern
- Add one-time retry guard to Dio 401 interceptor to prevent infinite loops

README.md:
- Fix directory tree "30 specialized subagents" -> "31"

commands/flutter-review.md:
- Add Prerequisites section (build/test/analyze must pass before review)

commands/flutter-build.md:
- Fix Cubit/Bloc API mix: CartCubit.add(event) -> CartCubit.addItem(item)

manifests/install-profiles.json:
- Add flutter-dart to full profile (fixes install manifest validator)

https://claude.ai/code/session_01BQbvf8xFtJyaFiuEgdnsin
@ritvij-saxena ritvij-saxena force-pushed the claude/add-dart-flutter-support-P01RJ branch from 1a03a2e to 3a1715f Compare April 1, 2026 01:37
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 1, 2026

Analysis Complete

Generated ECC bundle from 500 commits | Confidence: 100%

View Pull Request #1074

Repository Profile
Attribute Value
Language JavaScript
Framework Not detected
Commit Convention conventional
Test Directory separate
Detected Workflows (7)
Workflow Description
feature-development Standard feature implementation workflow
add-new-agent-or-skill Adds a new agent or skill to the codebase, including documentation and/or configuration.
add-or-update-command-workflow Adds or updates a command or workflow, typically as a markdown file describing a process or automation.
feature-or-skill-development-with-review-fixes Implements a new feature, agent, or skill, then iteratively addresses review feedback with follow-up fixes.
dependency-bump-github-actions Automated or manual update of GitHub Actions workflow dependencies to new versions.
Generated Instincts (15)
Domain Count
git 2
code-style 3
testing 3
workflow 7

After merging, import with:

/instinct-import .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml

Files

  • .claude/ecc-tools.json
  • .claude/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/SKILL.md
  • .agents/skills/everything-claude-code/agents/openai.yaml
  • .claude/identity.json
  • .codex/config.toml
  • .codex/AGENTS.md
  • .codex/agents/explorer.toml
  • .codex/agents/reviewer.toml
  • .codex/agents/docs-researcher.toml
  • .claude/homunculus/instincts/inherited/everything-claude-code-instincts.yaml
  • .claude/rules/everything-claude-code-guardrails.md
  • .claude/research/everything-claude-code-research-playbook.md
  • .claude/team/everything-claude-code-team-config.json
  • .claude/enterprise/controls.md
  • .claude/commands/feature-development.md
  • .claude/commands/add-new-agent-or-skill.md
  • .claude/commands/add-or-update-command-workflow.md

ECC Tools | Everything Claude Code

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@rules/dart/coding-style.md`:
- Line 40: Update the bullet that references `SCREAMING_SNAKE_CASE` to hyphenate
"top-level" (change "top level" to "top-level") so the rule reads
"`SCREAMING_SNAKE_CASE` for constants declared with `const` at top-level",
ensuring the phrase is consistent and readable.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 218297f8-e53f-4fc0-8f52-f98f02116b1c

📥 Commits

Reviewing files that changed from the base of the PR and between 1a03a2e and 3a1715f.

📒 Files selected for processing (14)
  • AGENTS.md
  • README.md
  • agents/dart-build-resolver.md
  • commands/flutter-build.md
  • commands/flutter-review.md
  • commands/flutter-test.md
  • manifests/install-modules.json
  • manifests/install-profiles.json
  • rules/dart/coding-style.md
  • rules/dart/hooks.md
  • rules/dart/patterns.md
  • rules/dart/security.md
  • rules/dart/testing.md
  • skills/dart-flutter-patterns/SKILL.md
✅ Files skipped from review due to trivial changes (10)
  • manifests/install-profiles.json
  • AGENTS.md
  • rules/dart/hooks.md
  • manifests/install-modules.json
  • agents/dart-build-resolver.md
  • rules/dart/patterns.md
  • skills/dart-flutter-patterns/SKILL.md
  • rules/dart/testing.md
  • rules/dart/security.md
  • commands/flutter-build.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • README.md

- `camelCase` for variables, parameters, and named constructors
- `PascalCase` for classes, enums, typedefs, and extensions
- `snake_case` for file names and library names
- `SCREAMING_SNAKE_CASE` for constants declared with `const` at top level
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Hyphenate “top-level” in the constant naming rule.

Use “top-level” (hyphenated) for consistency and readability in this bullet.

Suggested edit
-- `SCREAMING_SNAKE_CASE` for constants declared with `const` at top level
+- `SCREAMING_SNAKE_CASE` for constants declared with `const` at top-level
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- `SCREAMING_SNAKE_CASE` for constants declared with `const` at top level
- `SCREAMING_SNAKE_CASE` for constants declared with `const` at top-level
🧰 Tools
🪛 LanguageTool

[uncategorized] ~40-~40: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ... for constants declared with const at top level - Prefix private members with _ - Ext...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@rules/dart/coding-style.md` at line 40, Update the bullet that references
`SCREAMING_SNAKE_CASE` to hyphenate "top-level" (change "top level" to
"top-level") so the rule reads "`SCREAMING_SNAKE_CASE` for constants declared
with `const` at top-level", ensuring the phrase is consistent and readable.


setUp(() {
repository = MockCartRepository();
bloc = CartBloc(repository);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 CartBloc constructor mismatch with patterns.md

CartBloc(repository) passes a repository argument, but the canonical CartBloc definition in rules/dart/patterns.md:84 has a no-argument constructor:

class CartBloc extends Bloc<CartEvent, CartState> {
  CartBloc() : super(const CartState()) { ... }
}

A developer copying both files will get a compile error: Too many positional arguments: 0 expected, but 1 found. Either the CartBloc in patterns.md should be updated to accept a repository (e.g., UserRepository _repository), or the test setup here should use CartBloc() with no arguments.

Suggested change
bloc = CartBloc(repository);
bloc = CartBloc();

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants