Calculator-Plus icon indicating copy to clipboard operation
Calculator-Plus copied to clipboard

Add comprehensive GitHub Copilot instructions with validated build commands and timing

Open Copilot opened this issue 6 months ago • 0 comments

Created a comprehensive .github/copilot-instructions.md file that provides GitHub Copilot coding agents with detailed instructions for working effectively in the Calculator Plus Android project codebase.

Key Features Added

Validated Build Commands with Precise Timing:

  • All commands extensively tested and timed in the actual environment
  • Clean build from scratch: 98 seconds (timeout: 120s+)
  • Incremental build: 70 seconds (timeout: 90s+)
  • Unit tests: 37 seconds (timeout: 60s+)
  • Lint analysis: 52 seconds (timeout: 90s+)
  • APK assembly: 32 seconds (timeout: 45s+)
  • AAB bundle generation: 40 seconds (timeout: 60s+)

Critical Safety Measures:

  • Explicit "NEVER CANCEL" warnings for all long-running operations
  • Specific timeout recommendations with 50% safety buffers
  • Clear instructions to wait for completion rather than interrupting builds

Manual Validation Requirements:

  • APK generation validation (verified 15MB debug APK builds successfully)
  • Complete build → test → lint → assemble workflow verification
  • Functional testing guidance for Android app development

Comprehensive Development Guidance:

  • Project structure documentation with key directories (ui/, domain/, repository/, di/)
  • Android-specific requirements (Java 17, Gradle 8.13, API 35)
  • Code style requirements following existing Kotlin conventions
  • Troubleshooting guide for common build issues

Developer Experience Optimizations:

  • Fast development cycle commands for iterative work
  • Essential validation commands for pre-commit checks
  • CI/CD workflow information matching GitHub Actions setup
  • Quick reference section for common tasks

The instructions follow an imperative tone throughout ("Run this command", "NEVER do this") and provide exhaustive coverage of the development workflow while maintaining conciseness and focus on actionable guidance.

Fixes #74.

[!WARNING]

Firewall rules blocked me from connecting to one or more addresses

I tried to connect to the following addresses, but was blocked by firewall rules:

  • repo.gradle.org
    • Triggering command: /opt/hostedtoolcache/Java_Zulu_jdk/17.0.16-8/x64/bin/java --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.xml/javax.xml.namespace=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=java.base/sun.nio.fs=ALL-UNNAMED --add-exports=java.base/sun.security.util=ALL-UNNAMED --add-exports=java.base/sun.security.pkcs=ALL-UNNAMED --add-exports=java.base/sun.security.x509=ALL-UNNAMED --add-exports=java.base/sun.security.provider=ALL-UNNAMED -Xmx4096m -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-8.13-bin/5xuhj0ry160q40clulazy9h7d/gradle-8.13/lib/gradle-daemon-main-8.13.jar -javaagent:/home/REDACTED/.gradle/wrapper/dists/gradle-8.13-bin/5xuhj0ry160q40clulazy9h7d/gradle-8.13/lib/agents/gradle-instrumentation-agent-8.13.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.13 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

Copilot avatar Aug 10 '25 19:08 Copilot