Skip to content

🔀 :: (#830) ci 적용#833

Merged
uson1004 merged 7 commits intodevelopfrom
setting/830-ci-적용
Mar 16, 2026

Hidden character warning

The head ref may contain hidden characters: "setting/830-ci-\uc801\uc6a9"
Merged

🔀 :: (#830) ci 적용#833
uson1004 merged 7 commits intodevelopfrom
setting/830-ci-적용

Conversation

@uson1004
Copy link
Copy Markdown
Member

@uson1004 uson1004 commented Mar 15, 2026

Decode GOOGLE_SERVICES_JSON before saving to file.

개요

작업사항

추가 로 할 말

Summary by CodeRabbit

Release Notes

  • Chores
    • Improved code quality through import organization and formatting consistency across the codebase
    • Enhanced CI/CD pipeline configuration for credential handling

Decode GOOGLE_SERVICES_JSON before saving to file.
@uson1004 uson1004 linked an issue Mar 15, 2026 that may be closed by this pull request
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 15, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR performs repository-wide cleanup including modifications to the Android CI workflow (base64 decoding for google-services.json and removal of build/test steps), extensive import reordering across database and design-system modules, trailing comma formatting adjustments, removal of unused imports, and a function rename of keyboardAsState() to KeyboardAsState().

Changes

Cohort / File(s) Summary
CI Configuration
.github/workflows/ci.yml
Modified google-services.json creation to decode from base64 GOOGLE_SERVICES_JSON secret; removed Build with Gradle and Run test steps, keeping only file creation and Ktlint checks.
Database Import Reordering
core/database/src/main/java/.../DateTypeConverter.kt, core/database/src/main/java/.../MealDao.kt, core/database/src/main/java/.../DatabaseModule.kt, database/src/main/java/.../DatabaseMealDataSource.kt, database/src/main/java/.../DatabaseMealDataSourceImpl.kt
Reordered imports (java.time.LocalDate, ZoneOffset, etc.) from top position to follow other imports; moved extension function imports to top in DateTypeConverter. No functional changes.
Design System Import & Formatting Cleanup
core/design-system/src/main/java/.../DmsCalendar.kt, core/design-system/src/main/java/.../AlertDialog.kt, core/design-system/src/main/java/.../DmsSymbol.kt
Removed unused imports (kotlin.time.Duration.Companion.days, androidx.compose.ui.unit.Dp, layout.padding); reordered clickable import; added trailing commas in Column modifier and Text color for consistency.
Build Gradle Formatting
core/design-system/build.gradle.kts, core/device/build.gradle.kts, core/jwt/build.gradle.kts, core/network/build.gradle.kts, core/notification/build.gradle.kts, core/school/build.gradle.kts, core/ui/build.gradle.kts, core/widget/build.gradle.kts, data/build.gradle.kts, feature/build.gradle.kts, network/build.gradle.kts
Removed blank lines between kotlinOptions block and closing android brace across multiple gradle files; minor formatting cleanup.
Test Import Reordering
shared/date/src/test/java/.../DateUtilsTest.kt, shared/date/src/test/java/.../ExtensionsTest.kt
Reordered java.time imports (LocalDate, LocalDateTime, ZoneOffset) to appear after other import blocks; no behavioral changes.
Navigation Trailing Comma
core/ui/src/main/java/.../ResultStore.kt
Added trailing comma to infix function provides() parameter list in LocalResultStore; formatting adjustment only.
Keyboard Utility Refactoring
core/design-system/src/main/java/.../Button.kt, core/design-system/src/main/java/.../KeyboardAsState.kt
Renamed composable function from keyboardAsState() to KeyboardAsState() (uppercase); updated import and usage in BasicButton accordingly.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

setting

Suggested reviewers

  • parkuiery

Poem

🐰 Imports line up so neat and tidy,
Blank lines vanish, code runs Friday,
KeyboardAsState now stands up tall,
Cleanup magic for one and all! ✨

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title mentions CI setup but most changes are code cleanup (imports, formatting); the primary focus appears to be code organization rather than CI configuration. Clarify whether this is primarily a CI workflow update or a code cleanup PR, and adjust the title to reflect the main change more precisely.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

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

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch setting/830-ci-적용
📝 Coding Plan
  • Generate coding plan for human review comments

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.

Removed build and test steps from CI workflow
Copy link
Copy Markdown

@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 @.github/workflows/ci.yml:
- Around line 42-43: The CI currently only runs the "Check Ktlint" step that
executes "./gradlew ktlintCheck" so compile failures and test regressions are
missed; add at least one build task (e.g., a step named "Build" that runs
"./gradlew build" or "./gradlew assemble") and one test task (e.g., a step named
"Run Tests" that runs "./gradlew test" or "./gradlew
connectedAndroidTest"/appropriate test task) to the workflow so the pipeline
validates compilation and test outcomes in addition to ktlint; ensure the new
steps are placed after any dependency/setup steps and fail the job on non-zero
exit codes.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ec1c3f5f-38c7-41ad-8f69-83efd3cf8b9d

📥 Commits

Reviewing files that changed from the base of the PR and between 581268f and c868d9e.

📒 Files selected for processing (1)
  • .github/workflows/ci.yml

Comment thread .github/workflows/ci.yml
Comment on lines 42 to 43
- name: Check Ktlint
run: ./gradlew ktlintCheck
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

CI no longer validates build/test correctness.

With only ktlintCheck running, this workflow won’t catch compile failures or broken tests before merge. Please add at least one build and one test step back as a quality gate.

Suggested CI gate restoration
       - name: Check Ktlint
         run: ./gradlew ktlintCheck
+
+      - name: Build with Gradle
+        run: ./gradlew assemble
+
+      - name: Run unit tests
+        run: ./gradlew test
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/ci.yml around lines 42 - 43, The CI currently only runs
the "Check Ktlint" step that executes "./gradlew ktlintCheck" so compile
failures and test regressions are missed; add at least one build task (e.g., a
step named "Build" that runs "./gradlew build" or "./gradlew assemble") and one
test task (e.g., a step named "Run Tests" that runs "./gradlew test" or
"./gradlew connectedAndroidTest"/appropriate test task) to the workflow so the
pipeline validates compilation and test outcomes in addition to ktlint; ensure
the new steps are placed after any dependency/setup steps and fail the job on
non-zero exit codes.

Copy link
Copy Markdown

@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.

🧹 Nitpick comments (1)
core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/keyboardAsState.kt (1)

10-14: Rename to keyboardAsState to follow Compose naming conventions.

In Jetpack Compose, @Composable functions that return a value (rather than Unit) should use lowerCamelCase, similar to standard Kotlin functions and APIs like rememberUpdatedState, remember, and derivedStateOf. Since this function returns State<Boolean>, use keyboardAsState() instead of KeyboardAsState().

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

In
`@core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/keyboardAsState.kt`
around lines 10 - 14, Rename the composable function KeyboardAsState to
keyboardAsState (lowerCamelCase) and update its declaration and all call sites
to the new name; ensure the `@Composable` annotation, return type State<Boolean>,
and internals (isImeVisible, WindowInsets.ime.getBottom(LocalDensity.current),
rememberUpdatedState) remain unchanged so behavior is preserved.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In
`@core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/keyboardAsState.kt`:
- Around line 10-14: Rename the composable function KeyboardAsState to
keyboardAsState (lowerCamelCase) and update its declaration and all call sites
to the new name; ensure the `@Composable` annotation, return type State<Boolean>,
and internals (isImeVisible, WindowInsets.ime.getBottom(LocalDensity.current),
rememberUpdatedState) remain unchanged so behavior is preserved.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 3a5463cb-e652-44e0-a95d-b3fe2b9b59ad

📥 Commits

Reviewing files that changed from the base of the PR and between 6b058e2 and 6ce390e.

📒 Files selected for processing (2)
  • core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/button/Button.kt
  • core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/keyboardAsState.kt

Copy link
Copy Markdown

@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.

🧹 Nitpick comments (1)
core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/KeyboardAsState.kt (1)

11-11: Use keyboardAsState() and provide a deprecated alias for migration.

KeyboardAsState() returns State<Boolean>, which means it must follow standard Kotlin function naming conventions in lowerCamelCase per Compose guidelines. The current PascalCase name is non-idiomatic and introduces a source-breaking change. Rename to keyboardAsState() and keep the old name as a deprecated forwarder for backward compatibility.

Proposed migration-safe diff
 `@Composable`
-fun KeyboardAsState(): State<Boolean> {
+fun keyboardAsState(): State<Boolean> {
     val isImeVisible = WindowInsets.ime.getBottom(LocalDensity.current) > 0
     return rememberUpdatedState(newValue = isImeVisible)
 }
+
+@Deprecated(
+    message = "Use keyboardAsState()",
+    replaceWith = ReplaceWith("keyboardAsState()")
+)
+@Composable
+fun KeyboardAsState(): State<Boolean> = keyboardAsState()
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/KeyboardAsState.kt`
at line 11, Rename the top-level function KeyboardAsState() to follow
Kotlin/Compose naming conventions: change its declaration to keyboardAsState():
State<Boolean> and update all internal references to call the new name; then add
a deprecated forwarding alias named KeyboardAsState() that is annotated
`@Deprecated` with a ReplaceWith("keyboardAsState()") and simply returns
keyboardAsState() to preserve binary/source compatibility. Ensure the new
function signature and return type remain State<Boolean> and that the deprecated
wrapper delegates to it without changing behavior.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In
`@core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/KeyboardAsState.kt`:
- Line 11: Rename the top-level function KeyboardAsState() to follow
Kotlin/Compose naming conventions: change its declaration to keyboardAsState():
State<Boolean> and update all internal references to call the new name; then add
a deprecated forwarding alias named KeyboardAsState() that is annotated
`@Deprecated` with a ReplaceWith("keyboardAsState()") and simply returns
keyboardAsState() to preserve binary/source compatibility. Ensure the new
function signature and return type remain State<Boolean> and that the deprecated
wrapper delegates to it without changing behavior.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 23780853-931a-432e-ba7d-c0cfbcfc26b5

📥 Commits

Reviewing files that changed from the base of the PR and between 6ce390e and 7199c6c.

📒 Files selected for processing (2)
  • core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/ComposeExt.kt
  • core/design-system/src/main/java/team/aliens/dms/android/core/designsystem/util/KeyboardAsState.kt

@uson1004 uson1004 requested a review from a team March 16, 2026 04:55
@uson1004 uson1004 self-assigned this Mar 16, 2026
@uson1004 uson1004 added the refactor 코드 리팩토링 할 경우 label Mar 16, 2026
@uson1004 uson1004 merged commit 1b9a519 into develop Mar 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactor 코드 리팩토링 할 경우

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ci 적용

1 participant