-
Notifications
You must be signed in to change notification settings - Fork 0
[to test AI review bots] Add editor app for editing blogs and job posts (#880) #6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: base-sha/15b5a8b86277dc9a917eaa6e3728dd79130e956b
Are you sure you want to change the base?
Conversation
This is a benchmark review for experiment This pull request was cloned from Experiment configurationreview_config:
# User configuration for the review
# - benchmark - use the user config from the benchmark reviews
# - <value> - use the value directly
user_review_config:
enable_ai_review: true
enable_rule_comments: false
enable_complexity_comments: benchmark
enable_security_comments: benchmark
enable_tests_comments: benchmark
enable_comment_suggestions: benchmark
enable_pull_request_summary: benchmark
enable_review_guide: benchmark
enable_approvals: true
ai_review_config:
# The model responses to use for the experiment
# - benchmark - use the model responses from the benchmark reviews
# - llm - call the language model to generate responses
model_responses:
comments_model: benchmark
comment_validation_model: benchmark
comment_suggestion_model: benchmark
complexity_model: benchmark
security_model: benchmark
tests_model: benchmark
pull_request_summary_model: benchmark
review_guide_model: benchmark
overall_comments_model: benchmark
# The pull request dataset to run the experiment on
pull_request_dataset:
- https://github.com/bluedotimpact/bluedot/pull/909
# Questions to ask to label the review comments
review_comment_labels: []
# - label: correct
# question: Is this comment correct?
# Benchmark reviews generated by running
# python -m scripts.experiment benchmark <experiment_name>
benchmark_reviews:
- dataset_pull_request: https://github.com/bluedotimpact/bluedot/pull/909
review_pull_request: https://github.com/sourcery-ai-experiments/bluedot/pull/5
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Caution
Changes requested ❌
Reviewed everything up to f7c59e6 in 3 minutes and 15 seconds. Click for details.
- Reviewed
1450
lines of code in40
files - Skipped
2
files when reviewing. - Skipped posting
6
draft comments. View those below. - Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. apps/editor/src/pages/api/jobs/[slug]/index.ts:55
- Draft comment:
Response key is incorrect in PUT case; should use 'job' instead of 'blog'. - Reason this comment was not posted:
Marked as duplicate.
2. apps/editor/src/pages/api/jobs/[slug]/index.ts:56
- Draft comment:
In the PUT method, the response property is mistakenly named 'blog' instead of 'job'. - Reason this comment was not posted:
Marked as duplicate.
3. apps/editor/README.md:11
- Draft comment:
Minor cosmetic suggestion: consider capitalizing 'docker' to 'Docker' on line 11 for consistency with the standard naming conventions. - Reason this comment was not posted:
Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 0% vs. threshold = 50% The rules state not to make purely informative comments or comments that are obvious/unimportant. This is a minor stylistic suggestion that doesn't affect functionality. It's not pointing out a bug or suggesting a meaningful code quality improvement. While Docker is officially capitalized as a proper noun, this kind of minor formatting suggestion creates noise in code reviews without adding value. The benefit of proper capitalization doesn't outweigh the cost of review noise, especially in a README file where the lowercase version is still perfectly understandable. Delete this comment as it's too minor and doesn't require a code change. It violates our rule about not making purely informative or unimportant comments.
4. apps/editor/src/components/MarkdownEditor.stories.tsx:6
- Draft comment:
The meta title on line 6 still reads 'website/MarkdownEditor'. Since the file has been moved to the editor app, consider updating the title (e.g., to 'editor/MarkdownEditor') for consistency. - Reason this comment was not posted:
Comment was not on a location in the diff, so it can't be submitted as a review comment.
5. apps/editor/src/components/MarkdownEditor.tsx:106
- Draft comment:
Typographical error: Consider replacing 'text-size-xs' with the standard Tailwind CSS class 'text-xs', unless 'text-size-xs' is defined elsewhere intentionally. - Reason this comment was not posted:
Comment was not on a location in the diff, so it can't be submitted as a review comment.
6. apps/editor/vitest.config.mjs:7
- Draft comment:
There is a potential typographical inconsistency in the comment on line 7. The comment references 'tippy.js', but the inline dependency is '@syfxlin/tiptap-starter-kit'. Please verify if the comment is correct or if it should be updated to reflect the actual dependency to avoid confusion. - Reason this comment was not posted:
Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 10% vs. threshold = 50% The comment is nitpicking about documentation wording. The existing comment likely refers to tippy.js because tiptap-starter-kit probably includes or depends on tippy.js internally, and that's causing the import weirdness. The current comment actually provides more context about the underlying issue than the suggested change would. I could be wrong about the relationship between tippy.js and tiptap-starter-kit. Maybe there really is no connection and the comment is misleading. Even if I'm wrong about the exact relationship, this kind of minor documentation wording change doesn't meet our bar for necessary comments. The existing comment is good enough to explain why the configuration is needed. Delete this comment as it's suggesting an unnecessary documentation change that doesn't improve code quality or fix any real issues.
Workflow ID: wflow_zlqKz5p3ktkUmC3a
You can customize by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.
useEffect(() => { | ||
const handleBeforeUnload = (e: BeforeUnloadEvent) => { | ||
if (hasUnsavedChanges) { | ||
e.preventDefault(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider setting e.returnValue
explicitly (e.g., e.returnValue = ''
) in the beforeunload
handler to ensure browsers display the unsaved changes warning consistently.
e.preventDefault(); | |
e.returnValue = ''; |
}); | ||
return { | ||
type: 'success' as const, | ||
blog: updatedJob, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typographical error: The PUT response returns a property named 'blog'
(line 56) but it should be 'job'
to align with the response schema and GET response. Please update 'blog'
to 'job'
.
blog: updatedJob, | |
job: updatedJob, |
User description
Important
Introduces a new editor app for managing blogs and job posts with Markdown editing, file uploads, and Airtable integration.
editor
app for managing blogs and job posts with Markdown editing and image upload.BodyEditor
andMarkdownEditor
components for content editing inBodyEditor.tsx
andMarkdownEditor.tsx
.api/blogs
andapi/jobs
for CRUD operations.presigned-upload.ts
.Dockerfile
andserviceDefinitions.ts
..env.local.template
and.env.test
.tailwind.css
.MarkdownEditor
inMarkdownEditor.test.tsx
.status.test.ts
.README.md
.This description was created by
for f7c59e6. You can customize this summary. It will automatically update as commits are pushed.
CodeAnt-AI Description
editor
app for managing and editing blogs and job postings, including all core pages, API routes, and components.This PR introduces a full-featured editor app for BlueDot staff to manage content, including a custom Markdown editor with image upload, Airtable integration, and all necessary infrastructure for deployment and testing. It also improves code sharing and styling consistency across the codebase.
Changes walkthrough
23 files
MarkdownEditor.tsx
Add image upload and embed support to MarkdownEditor component
apps/editor/src/components/MarkdownEditor.tsx
uploadFile
prop.MarkdownEditorProps
type.BodyEditor.tsx
Add BodyEditor component with file upload and save logic
apps/editor/src/components/BodyEditor.tsx
BodyEditor
component for editing and saving markdowncontent.
BaseLayout.tsx
Add BaseLayout component with navigation
apps/editor/src/components/BaseLayout.tsx
postings.
index.ts
Add API route for listing blog posts
apps/editor/src/pages/api/blogs/index.ts
index.ts
Add API route for fetching and updating single blog post
apps/editor/src/pages/api/blogs/[slug]/index.ts
index.ts
Add API route for listing job postings
apps/editor/src/pages/api/jobs/index.ts
index.ts
Add API route for fetching and updating single job posting
apps/editor/src/pages/api/jobs/[slug]/index.ts
presigned-upload.ts
Add presigned S3 upload API route for file uploads
apps/editor/src/pages/api/presigned-upload.ts
uploads.
status.ts
Add status API endpoint
apps/editor/src/pages/api/status.ts
index.tsx
Add blog posts listing page with edit links
apps/editor/src/pages/blogs/index.tsx
[slug].tsx
Add blog post editor page
apps/editor/src/pages/blogs/[slug].tsx
index.tsx
Add job postings listing page with edit links
apps/editor/src/pages/jobs/index.tsx
[slug].tsx
Add job posting editor page
apps/editor/src/pages/jobs/[slug].tsx
index.tsx
Add home page redirect to blogs
apps/editor/src/pages/index.tsx
index.tsx
Add login redirect page
apps/editor/src/pages/login/index.tsx
oauth-callback.tsx
Add OAuth callback page for login
apps/editor/src/pages/login/oauth-callback.tsx
index.ts
Add AirtableTs database instance
apps/editor/src/lib/api/db/index.ts
tables.ts
Define Airtable schemas for blogs and job postings
apps/editor/src/lib/api/db/tables.ts
env.ts
Add environment variable validation for API
apps/editor/src/lib/api/env.ts
secrets.
makeApiRoute.ts
Add helper for authenticated API routes
apps/editor/src/lib/api/makeApiRoute.ts
token verification.
_app.tsx
Add custom App component with layout and SSR config
apps/editor/src/pages/_app.tsx
tailwind.css
Move prose utility styles to shared UI library
libraries/ui/src/default-config/tailwind.css
globals.css
Remove prose utility styles from website globals
apps/website/src/globals.css
3 files
MarkdownEditor.test.tsx
Add unit tests for MarkdownEditor component
apps/editor/src/components/MarkdownEditor.test.tsx
actions.
MarkdownEditor.stories.tsx
Add Storybook stories for MarkdownEditor component
apps/editor/src/components/MarkdownEditor.stories.tsx
content.
status.test.ts
Add test for status API endpoint
apps/editor/src/pages/api/status.test.ts
12 files
next.config.js
Add Next.js configuration file
apps/editor/next.config.js
postcss.config.js
Add PostCSS configuration for Tailwind CSS
apps/editor/postcss.config.js
globals.css
Add global CSS imports for Tailwind and typography
apps/editor/src/globals.css
package.json
Add package.json for editor app dependencies and scripts
apps/editor/package.json
the editor app.
tsconfig.json
Add TypeScript configuration for editor app
apps/editor/tsconfig.json
vitest.config.mjs
Add Vitest configuration for editor app
apps/editor/vitest.config.mjs
tiptap-starter-kit.
Dockerfile
Add Dockerfile for editor app deployment
apps/editor/Dockerfile
production.
.env.local.template
Add .env.local.template for environment variables
apps/editor/.env.local.template
.env.test
Add .env.test for test environment variables
apps/editor/.env.test
next-env.d.ts
Add Next.js type definitions
apps/editor/next-env.d.ts
serviceDefinitions.ts
Add Kubernetes service definition for bluedot-editor app
apps/infra/src/k8s/serviceDefinitions.ts
bluedot-editor
app in Kubernetes.vitest.config.mjs
Simplify Vitest config for website app
apps/website/vitest.config.mjs
tiptap-starter-kit.
1 files
README.md
Add README for editor app setup and deployment
apps/editor/README.md
app.
1 files
package.json
Remove markdown editor dependencies from website package.json
apps/website/package.json
package.json.
💡 Usage Guide
Checking Your Pull Request
Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.
Talking to CodeAnt AI
Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:
This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.
Retrigger review
Ask CodeAnt AI to review the PR again, by typing:
Check Your Repository Health
To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.
Summary by Sourcery
Create a new editor app for managing blogs and job posts, providing a comprehensive content management interface with Markdown editing, file uploads, and Airtable integration
New Features:
Enhancements:
Deployment:
Documentation:
Tests:
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Style
Chores
Refactor