Skip to content

Refactor Convex log storage and improve LLM service orchestration - #55

Merged
kaihere14 merged 10 commits into
mainfrom
develop
Sep 3, 2026
Merged

Refactor Convex log storage and improve LLM service orchestration#55
kaihere14 merged 10 commits into
mainfrom
develop

Conversation

@kaihere14

Copy link
Copy Markdown
Owner

This pull request introduces several improvements to the codebase, focusing on developer workflow automation, code quality enforcement, and the refactoring of the animated icon components for better modularity and maintainability. The most significant changes include setting up CI workflows, updating linting and formatting hooks, and restructuring the animated icon context logic.

Developer Workflow & Automation:

  • Continuous Integration: Added a comprehensive GitHub Actions CI workflow (ci.yml) to automate formatting, linting, type checking, and building across pushes and pull requests to main and develop branches. This ensures code quality and consistency before merging.
  • Pre-commit & Commit-msg Hooks: Introduced Husky hooks to enforce linting (lint-staged) and commit message standards (commitlint) before commits are accepted. [1] [2]
  • Prettier Ignore Rules: Added a .prettierignore file to exclude build artifacts, lock files, and environment files from formatting, keeping formatting runs efficient.
  • Removed Keepalive Workflow: Deleted the keepalive.yml workflow, likely as it's no longer needed or relevant.

Animated Icon Component Refactor:

  • Context & Utility Extraction: Extracted AnimateIconContext, useAnimateIconContext, and getVariants into a new dedicated file (icon-context.js). This modularizes the context logic and animation utilities, improving code clarity and reusability.
  • Component Imports Updated: Updated all animated icon components (activity.jsx, clipboard-check.jsx, disc-3.jsx, hammer.jsx, key.jsx) to import context and utilities from the new icon-context.js file. This eliminates duplicate logic and centralizes context management. [1] [2] [3] [4] [5]
  • Exports Simplified: Removed unnecessary exports (such as animations) from icon components, further simplifying their interfaces. [1] [2] [3] [4]
  • Context Usage in Icon Wrapper: Updated icon.jsx to use the new context import and removed now-redundant logic for animation variants and context management. [1] [2]

Linting & ESLint Configuration:

  • ESLint Config Enhancements: Improved the ESLint config to allow exceptions for known effect-timing patterns in specific files and expanded formatting for readability.
  • PropTypes Lint: Removed an unnecessary ESLint directive from CountUpNumber.jsx, as prop-types are not used.

Documentation Updates:


Most important changes:

Developer Workflow & Automation

  • Added a GitHub Actions CI workflow (ci.yml) to automate format checking, linting, type checking, and building for pushes and PRs to main and develop branches.
  • Introduced Husky pre-commit (lint-staged) and commit-msg (commitlint) hooks to enforce code quality and commit message standards. [1] [2]
  • Added .prettierignore to exclude build, lock, and env files from formatting.
  • Removed the obsolete keepalive.yml workflow.

Animated Icon Component Refactor

  • Extracted icon animation context and utilities into icon-context.js, updated all icon components to use this new structure, and simplified their exports and imports. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]

Linting & ESLint Configuration

  • Improved ESLint config for better readability and to allow known exceptions for effect-timing patterns in specific files.
  • Cleaned up unused ESLint directive in CountUpNumber.jsx.

Documentation

kaihere14 and others added 10 commits August 22, 2026 01:48
* refactor: remove redundant Convex log storage

* chore: remove internal development plan

* feat: add CI checks and refresh Convex tooling

Remove keepalive workflow and obsolete task logging backend while adding
formatting, linting, typechecking, build scripts, and expanded Convex agent
skills.

* fix: add ESLint dependencies and Convex log reference

* feat: remove obsolete task API and log parameter

* fix: convex client usage for live updates

* fix: use Live Updates for Cleanup Recovery

* fix: remove unused Convex API routes
Add `daemondoc-plan.md` outlining current blockers, the v1 patch
strategy,
and the full v2 rewrite roadmap to transition from the current setup to
a GitHub App-based architecture.
request

Implement reactive README cleanup progress UI
Replace the static cleanup progress toast with a reactive system driven
by
Convex log messages. Added `cleanup-queue` worker support and logic to
handle job retries and recovery via `sharedLogId`.
* fix: prevent duplicate ActiveRepo records on reactivation

* fix: refactor imports and resolve lint issues

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* refactor: introduce LLM service orchestration layer

* feat: add full mode pipeline

* fix: pass AI SDK options directly to generateText

* refactor: remove legacy LLM service layer
* Improve repository scanning and LLM generation updates

* Format LLM and Git utility code consistently

* Replace OpenAI SDK with AI Google provider
* fix: improve README generation and cleanup flow

* fix: increase Gemini context and output limits

* Remove obsolete README cleanup service
# Conflicts:
#	client/src/lib/pages/Login.jsx
#	client/src/lib/pages/OauthVerify.jsx
#	seo-client/app/(landing)/_components/Hero.tsx
@vercel

vercel Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
daemon-doc Ready Ready Preview Sep 3, 2026 1:18pm UTC
read-it Ready Ready Preview Sep 3, 2026 1:18pm UTC

@coderabbitai

coderabbitai Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 129 files, which is 29 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: eed4e656-0aec-4d67-bceb-6cef8ca31d95

📥 Commits

Reviewing files that changed from the base of the PR and between a2ac954 and f5b667a.

⛔ Files ignored due to path filters (5)
  • convex-server/convex/_generated/ai/ai-files.state.json is excluded by !**/_generated/**
  • convex-server/convex/_generated/ai/guidelines.md is excluded by !**/_generated/**
  • convex-server/convex/_generated/api.d.ts is excluded by !**/_generated/**
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • server/pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (129)
  • .github/.husky/commit-msg
  • .github/.husky/pre-commit
  • .github/workflows/ci.yml
  • .github/workflows/keepalive.yml
  • .gitignore
  • .prettierignore
  • README.md
  • client/eslint.config.js
  • client/src/components/admin/CountUpNumber.jsx
  • client/src/components/animate-ui/icons/activity.jsx
  • client/src/components/animate-ui/icons/clipboard-check.jsx
  • client/src/components/animate-ui/icons/disc-3.jsx
  • client/src/components/animate-ui/icons/hammer.jsx
  • client/src/components/animate-ui/icons/icon-context.js
  • client/src/components/animate-ui/icons/icon.jsx
  • client/src/components/animate-ui/icons/key.jsx
  • client/src/components/animate-ui/icons/layers.jsx
  • client/src/components/animate-ui/icons/plug-zap.jsx
  • client/src/components/animate-ui/icons/search.jsx
  • client/src/components/animate-ui/icons/unplug.jsx
  • client/src/components/common/AuthNavigation.jsx
  • client/src/components/repos/RepoCard.jsx
  • client/src/components/ui/animated-testimonials.jsx
  • client/src/components/ui/button.jsx
  • client/src/context/AuthContext.jsx
  • client/src/context/auth-context.js
  • client/src/hooks/useRepos.js
  • client/src/hooks/useRequireAuth.js
  • client/src/lib/pages/Admin.jsx
  • client/src/lib/pages/Login.jsx
  • client/src/lib/pages/OauthVerify.jsx
  • client/vite.config.js
  • commitlint.config.js
  • context/ai-workflow-rules.md
  • convex-server/.agents/skills/convex-add/SKILL.md
  • convex-server/.agents/skills/convex-advisor/SKILL.md
  • convex-server/.agents/skills/convex-agent/SKILL.md
  • convex-server/.agents/skills/convex-auth/SKILL.md
  • convex-server/.agents/skills/convex-authz/SKILL.md
  • convex-server/.agents/skills/convex-backup/SKILL.md
  • convex-server/.agents/skills/convex-billing/SKILL.md
  • convex-server/.agents/skills/convex-cost/SKILL.md
  • convex-server/.agents/skills/convex-create-component/SKILL.md
  • convex-server/.agents/skills/convex-create-component/agents/openai.yaml
  • convex-server/.agents/skills/convex-crons/SKILL.md
  • convex-server/.agents/skills/convex-deploy-guard/SKILL.md
  • convex-server/.agents/skills/convex-design/SKILL.md
  • convex-server/.agents/skills/convex-docs/SKILL.md
  • convex-server/.agents/skills/convex-domains/SKILL.md
  • convex-server/.agents/skills/convex-env/SKILL.md
  • convex-server/.agents/skills/convex-expert/SKILL.md
  • convex-server/.agents/skills/convex-explain-app/SKILL.md
  • convex-server/.agents/skills/convex-improve-convex-plugin/SKILL.md
  • convex-server/.agents/skills/convex-insights/SKILL.md
  • convex-server/.agents/skills/convex-launch-readiness/SKILL.md
  • convex-server/.agents/skills/convex-migrate-rehearse/SKILL.md
  • convex-server/.agents/skills/convex-migrate/SKILL.md
  • convex-server/.agents/skills/convex-monitor/SKILL.md
  • convex-server/.agents/skills/convex-optimize/SKILL.md
  • convex-server/.agents/skills/convex-performance-audit/agents/openai.yaml
  • convex-server/.agents/skills/convex-quickstart/SKILL.md
  • convex-server/.agents/skills/convex-quickstart/agents/openai.yaml
  • convex-server/.agents/skills/convex-reviewer/SKILL.md
  • convex-server/.agents/skills/convex-seed/SKILL.md
  • convex-server/.agents/skills/convex-self-heal/SKILL.md
  • convex-server/.agents/skills/convex-sentinel/SKILL.md
  • convex-server/.agents/skills/convex-setup-auth/agents/openai.yaml
  • convex-server/.agents/skills/convex-suggest/SKILL.md
  • convex-server/.agents/skills/convex-test/SKILL.md
  • convex-server/.agents/skills/convex-verify/SKILL.md
  • convex-server/.agents/skills/convex/SKILL.md
  • convex-server/convex/http.ts
  • convex-server/convex/logs.ts
  • convex-server/convex/schema.ts
  • convex-server/convex/tasks.ts
  • convex-server/eslint.config.js
  • convex-server/package.json
  • convex-server/skills-lock.json
  • daemondoc-plan.md
  • docker-compose.yml
  • fix-eslint.js
  • package.json
  • seo-client/app/(landing)/_animate-ui/icons/activity.tsx
  • seo-client/app/(landing)/_animate-ui/icons/clipboard-check.tsx
  • seo-client/app/(landing)/_animate-ui/icons/disc-3.tsx
  • seo-client/app/(landing)/_animate-ui/icons/hammer.tsx
  • seo-client/app/(landing)/_animate-ui/icons/icon.tsx
  • seo-client/app/(landing)/_animate-ui/icons/key.tsx
  • seo-client/app/(landing)/_animate-ui/icons/layers.tsx
  • seo-client/app/(landing)/_animate-ui/icons/plug-zap.tsx
  • seo-client/app/(landing)/_animate-ui/icons/search.tsx
  • seo-client/app/(landing)/_animate-ui/icons/unplug.tsx
  • seo-client/app/(landing)/_animate-ui/primitives/animate/slot.tsx
  • seo-client/app/(landing)/_components/CoreCapabilities.tsx
  • seo-client/app/(landing)/_components/TestimonialsGrid.tsx
  • seo-client/app/layout.tsx
  • seo-client/app/page.tsx
  • seo-client/components/GradientWaves.jsx
  • seo-client/eslint.config.mjs
  • seo-client/package.json
  • server/eslint.config.js
  • server/package.json
  • server/src/controllers/github.controller.js
  • server/src/controllers/oauthcontroller.js
  • server/src/email/template.fallback.js
  • server/src/email/template.renderer.js
  • server/src/index.js
  • server/src/llm/ai.sdk.js
  • server/src/llm/llm.service.js
  • server/src/llm/prompts/cleanup.prompt.js
  • server/src/llm/prompts/detect.prompt.js
  • server/src/llm/prompts/full.generate.prompt.js
  • server/src/llm/prompts/patch.generate.prompt.js
  • server/src/llm/providers/gemini.provider.js
  • server/src/llm/readme.generate.js
  • server/src/llm/readme.patch.js
  • server/src/llm/utils/response.js
  • server/src/routes/github.routes.js
  • server/src/services/convex.service.js
  • server/src/services/gemini.service.js
  • server/src/services/github.service.js
  • server/src/services/groq.service.js
  • server/src/services/logRecovery.service.js
  • server/src/services/readmeCleanup.service.js
  • server/src/utils/git.worker.js
  • server/src/utils/prompt.builder.js
  • server/src/utils/readme.validator.js
  • server/src/utils/repo.limits.js
  • server/src/utils/scan.filters.js

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


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.

@kaihere14
kaihere14 merged commit 28722fc into main Sep 3, 2026
10 of 12 checks passed
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.

1 participant