Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Sep 2, 2025

This PR adds a comprehensive .github/copilot-instructions.md file that provides GitHub Copilot coding agents with detailed instructions for working effectively in the DarkflameServer codebase.

What's included

The instructions cover all essential aspects of development workflow:

Build Process

  • Complete dependency installation steps for Ubuntu/Debian systems
  • Validated build commands with accurate timing information (~6 minutes)
  • CMake preset usage and CI workflow integration
  • Critical "NEVER CANCEL" warnings with appropriate timeout values (720+ seconds)

Testing & Validation

  • Unit test execution with GoogleTest (91 tests, <4 seconds runtime)
  • Build validation requirements and expected outputs
  • Runtime validation steps for server startup verification
  • Code style guidelines following .editorconfig standards

Project Architecture

  • Complete directory structure with component descriptions
  • Key configuration files and their purposes
  • Database setup recommendations (SQLite for development)
  • Multi-server architecture overview with network ports

Development Guidelines

  • Common command reference for building, testing, and debugging
  • Troubleshooting guide for frequent issues
  • CI/CD workflow information
  • Game Master (GM) privilege levels and terminology

Testing Capabilities

  • Server can mock all necessary components for testing without LEGO Universe client files
  • Database and cdclient mocking support for comprehensive testing
  • Validation steps that work in CI environments

This documentation enables Copilot agents to work more effectively by understanding the project's build system, testing requirements, and development conventions without requiring external research or trial-and-error approaches.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copy link
Contributor Author

Copilot AI commented Sep 2, 2025

@aronwk-aaron 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs.

I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review.

Copilot AI changed the title [WIP] ✨ Set up Copilot instructions Add comprehensive .github/copilot-instructions.md for development guidance Sep 2, 2025
Copilot AI requested a review from aronwk-aaron September 2, 2025 21:48
@aronwk-aaron aronwk-aaron changed the title Add comprehensive .github/copilot-instructions.md for development guidance chore: Add comprehensive .github/copilot-instructions.md for development guidance Sep 2, 2025
Copy link
Member

@aronwk-aaron aronwk-aaron left a comment

Choose a reason for hiding this comment

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

also, always put newlines at end of files

@aronwk-aaron
Copy link
Member

also, always put newlines at end of files

@copilot act on these requested changes

…bilities, and file endings

Co-authored-by: aronwk-aaron <[email protected]>
Copy link
Contributor Author

Copilot AI commented Sep 3, 2025

also, always put newlines at end of files

@copilot act on these requested changes

All requested changes have been addressed: SQLite recommendation, GM terminology correction, testing capabilities update, and ensured files end with newlines. (ec37c4f)

@aronwk-aaron
Copy link
Member

not going to merge without approval from someone else, this is just to help give copilot a baseline when it works on stuff, from what I understand

@aronwk-aaron aronwk-aaron marked this pull request as ready for review September 3, 2025 04:55
ctest --output-on-failure
```
- **Test time: <4 seconds. Set timeout to 30+ seconds.**
- **91 tests run, all should pass**
Copy link
Collaborator

Choose a reason for hiding this comment

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

This seems brittle for if someone adds more tests.

Comment on lines +62 to +70
### Runtime Validation
The servers can be started for basic validation:
```bash
cd build
./MasterServer
```
- **Server will start but complain about missing client files (this is expected)**
- **Database connections work with proper configuration in sharedconfig.ini**
- **For full server testing, LEGO Universe client files are required (not available in this repository)**
Copy link
Collaborator

Choose a reason for hiding this comment

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

What is the point of this without any client files? no world servers can start and thats 90% of the codebase

cmake -DCMAKE_BUILD_TYPE="Release" ..
cmake --build . --config Release -j2
```
- **Same timing: ~6 minutes. NEVER CANCEL. Set timeout to 720+ seconds.**
Copy link
Collaborator

Choose a reason for hiding this comment

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

never cancel but also cancel after 12 minutes, what?

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