Skip to content

Add comprehensive GitHub Copilot instructions for kerb4j development#70

Draft
Copilot wants to merge 3 commits intomasterfrom
copilot/fix-69
Draft

Add comprehensive GitHub Copilot instructions for kerb4j development#70
Copilot wants to merge 3 commits intomasterfrom
copilot/fix-69

Conversation

Copy link

Copilot AI commented Aug 30, 2025

This PR adds a comprehensive .github/copilot-instructions.md file to guide GitHub Copilot coding agents in working effectively with the kerb4j codebase.

What's included

The instructions provide exhaustive guidance for developers working with this Kerberos/SPNEGO authentication library:

Validated Build Commands

All commands have been tested and timing measured:

  • mvn clean compile -q (9 seconds) - compilation only
  • mvn clean package -q (48 seconds) - full build with tests
  • mvn test -q (24 seconds) - tests only
  • mvn clean install -DskipTests -q (28 seconds) - install without tests

Critical Timing and Safety Guidelines

  • NEVER CANCEL warnings with explicit 120+ minute timeout recommendations
  • Detailed timing expectations to prevent premature build cancellation
  • Emphasis on waiting for test completion as they involve real Kerberos server startup

Project Structure Documentation

Complete overview of all 11 modules:

  • kerb4j-base64/ - Base64 encoding utilities
  • kerb4j-common/ - Core Kerberos functionality and test infrastructure
  • kerb4j-client/ - Client-side SPNEGO/Kerberos authentication
  • kerb4j-server/ - Server-side authentication (Spring Security, Tomcat, LDAP)

Validation Scenarios

Specific guidance for testing changes:

  • KDC server startup and authentication flow validation
  • Spring Boot integration testing with embedded Tomcat
  • SPNEGO negotiation and HTTP authentication workflows
  • Group extraction from Microsoft AD PAC certificates

Key Classes and Development Patterns

Documentation of important classes like SpnegoClient, SpnegoContext, KerberosSecurityTestcase, and proper usage patterns for thread-safe ticket caching.

Validation Process

Every command and instruction was thoroughly validated:

  • ✅ All build commands execute successfully
  • ✅ Tests demonstrate real Kerberos authentication with "Successfully validated" messages
  • ✅ Integration tests start embedded servers and complete full workflows
  • ✅ Timing measurements reflect actual execution on the target environment

The instructions follow the imperative tone requirement and prioritize working, validated commands over theoretical guidance.

Fixes #69.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

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

  • server.springsource.org
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire/surefirebooter-20250830080023845_24.jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire 2025-08-30T07-59-46_323-jvmRun1 surefire-20250830080023845_22tmp surefire_4-20250830080023845_23tmp (dns block)
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire/surefirebooter-20250830080059520_24.jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire 2025-08-30T08-00-46_614-jvmRun1 surefire-20250830080059520_22tmp surefire_4-20250830080059520_23tmp (dns block)
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire/surefirebooter-20250830080525756_24.jar /home/REDACTED/work/kerb4j/kerb4j/kerb4j-server/kerb4j-server-spring-security/target/surefire 2025-08-30T08-04-53_814-jvmRun1 surefire-20250830080525756_22tmp surefire_4-20250830080525756_23tmp (dns block)

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


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 2 commits August 30, 2025 08:03
Co-authored-by: bedrin <4654384+bedrin@users.noreply.github.com>
Co-authored-by: bedrin <4654384+bedrin@users.noreply.github.com>
Copilot AI changed the title [WIP] ✨ Set up Copilot instructions Add comprehensive GitHub Copilot instructions for kerb4j development Aug 30, 2025
Copilot AI requested a review from bedrin August 30, 2025 08:10
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.

✨ Set up Copilot instructions

2 participants