Commit Graph

101 Commits

Author SHA1 Message Date
c5de26aaee docs: update README with granular test commands
Add test:unit, test:integration, and test:security commands to quick reference. Add test-runner.sh to project files table. Update documentation to reflect comprehensive test suite coverage.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:55:12 -05:00
8b0e421034 feat: add granular test commands to run.sh
Add test:unit, test:integration, and test:security commands to run.sh. Update test command to use test-runner.sh for better orchestration. Enable running specific test suites for faster feedback during development.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:53:48 -05:00
fc76b3a9da test: add comprehensive test suite orchestration script
Create test-runner.sh to orchestrate all test types (unit, integration, security, e2e, compliance, encryption, all). Provide colored output and test summary with pass/fail statistics. Enable running specific test suites or complete test coverage.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:53:28 -05:00
34433d4739 test: add comprehensive integration and security tests
Add end-to-end integration tests for complete workflows. Add comprehensive security compliance tests covering FR-001 (Full Disk Encryption) and FR-007 (Password Complexity). Add encryption configuration tests for LUKS2, cipher settings, and validation hooks.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:53:22 -05:00
a9116149c9 test: add comprehensive unit tests for all shell scripts
Add unit tests for run.sh, encryption-setup.sh, encryption-validation.sh, firewall-setup.sh, security-hardening.sh, and build-iso.sh. Achieve comprehensive function coverage with assertions for all critical security configurations and setup procedures.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:53:17 -05:00
e8a9ff8061 docs: completely rewrite AGENTS.md with comprehensive LLM agent guide
Rewrite AGENTS.md as comprehensive guide for LLM agents to be immediately productive. Add current status, mandatory security requirements, project structure, agent workflow, critical requirements, Docker-only workflow, testing coverage, key concepts, error handling, and success criteria. Provide clear quick start instructions and checklists.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:52:58 -05:00
ec1bc3eabb docs: remove test-iso.sh from project files table
Remove test-iso.sh from project files table since ISO testing is now accessible through run.sh test:iso command. Streamline documentation to show single entry point for all operations.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:39:13 -05:00
afe6d2347d feat: add test:iso command to run.sh for VM testing
Add test:iso command to run.sh that delegates to test-iso.sh for libvirt/virsh-based ISO testing. Keep test functionality accessible through main run.sh interface while maintaining host-side execution requirements.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:38:51 -05:00
2a16eae3a4 docs: update README with ISO testing commands
Add ISO testing section with libvirt/virsh commands (create, console, status, stop, destroy, list). Update project files table to include test-iso.sh script.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:36:38 -05:00
241510c0f2 feat: add libvirt/virsh ISO testing script
Create test-iso.sh script for automated ISO testing using libvirt/virsh VMs. Supports create, start, stop, console, destroy, status, and list commands. Runs on host system (not inside Docker). Includes prerequisite checks, VM configuration (20G disk, 4GB RAM, 2 VCPUs), and cleanup functionality.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:36:20 -05:00
ef4a20fc73 docs: add session closure documentation for continuity
Document 2026-01-24 session closure with work completed summary, files created, documentation structure, and project status for seamless resumption and context preservation.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:01:12 -05:00
249af2b843 docs: add quick start guide for project setup and build
Add QUICK_START.md with current status, quick commands for checking build status, restarting build, and cleanup procedures for rapid project resumption and execution.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:01:10 -05:00
54c88c401d feat: update ISO build command with encryption flags
Add --privileged flag (required for encryption support), --user root flag (required by live-build), build in /tmp container directory (not mounted volume), and remove problematic flags for successful build with encryption support.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:57 -05:00
dfc02d077e chore: add main entry point script for Docker build workflow
Create run.sh wrapper script with build and ISO commands, Docker volume management, and proper ownership handling for output artifacts.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:54 -05:00
29edabd51a chore: add multi-stage Dockerfile for build environment
Create Docker build environment with live-build, Debian keyrings, and dependencies for ISO creation. Multi-stage build for efficient caching and minimal final image size.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:50 -05:00
840b6721c2 docs: update RESUME with build completion and ISO status
Document successful ISO build completion, ISO artifacts (450 MB) with checksum verification, mandatory requirements implementation status, compliance achieved, and next steps for testing and deployment.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:49 -05:00
927d2053bf docs: update JOURNAL with mandatory requirements implementation session
Document 2026-01-28 session including FR-001 (Full Disk Encryption) and FR-007 (Password Complexity) addition, configuration changes, hooks created, security hardening enhancements, ISO build process, and verification results.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:33 -05:00
b0ae6a469c docs: update README with security requirements and compliance
Add Security Requirements (MANDATORY) section highlighting Full Disk Encryption and Password Complexity requirements. Add Compliance section documenting NIST SP 800-111, NIST SP 800-53, NIST SP 800-63B, ISO/IEC 27001, CIS, and DISA STIG compliance.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:31 -05:00
64e5e6af9a docs: update AGENTS.md with mandatory security requirements
Add MANDATORY SECURITY REQUIREMENTS section documenting Full Disk Encryption (LUKS2, AES-256-XTS) and Password Complexity requirements with compliance references to NIST SP 800-111, NIST SP 800-63B, and CIS Benchmarks.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:27 -05:00
049e6363d9 docs: add comprehensive verification report for mandatory requirements
Document complete verification of FR-001 (Full Disk Encryption) and FR-007 (Password Complexity) including configuration validation, ISO build verification, compliance verification (NIST, CIS, DISA), file inventory, and quality assurance results.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:25 -05:00
29e72fbe4e docs: add build session summary with implementation details
Document build session with new mandatory requirements, configuration changes, encryption hooks, password policy enhancements, documentation updates, and build configuration for traceability and future reference.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:21 -05:00
3407fae643 docs: add build completion report with ISO verification
Document successful 72-minute ISO build process, ISO artifacts (450 MB), checksum verification, mandatory requirements implementation, compliance achieved, and usage instructions for testing and deployment.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:19 -05:00
ad23d12eda feat: enhance password complexity requirements to NIST SP 800-63B
Enforce 14+ character minimum, require all character classes (uppercase, lowercase, digit, special), prevent common patterns, check against dictionary and bad words, and apply to all users including root.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:07 -05:00
2ab8040bdf feat: add encryption validation and user notification hook
Validate LUKS2 encryption configuration, create user-facing reminder files, MOTD messages, and first-boot check script to ensure encryption requirements are met and users are informed.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 10:00:05 -05:00
5cfa68be97 feat: add LUKS2 encryption setup hook
Configure LUKS2 with AES-256-XTS encryption, cryptsetup-initramfs, initramfs modules, key management scripts, and encryption status systemd service for automated encryption setup during installation.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 09:59:58 -05:00
96fc21022e config: enable full disk encryption in Debian installer preseed
Configure LUKS2 disk encryption with AES-256-XTS cipher (512-bit key) and Argon2id KDF. Add cryptsetup and pam-pwquality packages. Set secure default passphrase for initial setup.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 09:59:55 -05:00
925982b0de docs: add comprehensive PRD with mandatory security requirements
Add Product Requirements Document documenting FR-001 (Full Disk Encryption - MANDATORY) and FR-007 (System Hardening - Password Complexity) with NIST SP 800-111, NIST SP 800-53, and NIST SP 800-63B compliance requirements.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-29 09:59:15 -05:00
ff23e478e4 chore: Remove obsolete files and root scripts
- Remove .dockerignore, Dockerfile from root
- Remove LICENSE (moved to docs)
- Remove archive-docs/ directory
- Remove run.sh (moved to src/)
- Clean up obsolete configuration

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:44 -05:00
6d11ef8622 docs: Update AGENTS.md and README.md
- Update AGENTS.md with Docker container requirements
- Add critical requirements for Docker-only workflow
- Update README.md with project structure changes
- Document Docker-based build process

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:38 -05:00
310627bb47 test: Update test suite with improved structure
- Update test_helper/common.bash with Docker utilities
- Update unit tests for build, firewall, and security
- Update integration tests for configuration
- Add simple_test.bats for basic testing
- Fix test assertions and error handling

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:33 -05:00
6f038c3888 refactor: Update installed hooks and package lists
- Update disable-package-management.sh with immutable permissions
- Update install-scripts.sh with proper path handling
- Add knel-football.list.chroot package list
- Add desktop shortcuts for VPN configuration
- Add USB automount support

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:27 -05:00
1edf8665e9 refactor: Update live hooks for Docker compliance
- Update firewall-setup.sh with proper volume path sourcing
- Update security-hardening.sh with modular function calls
- Update qr-code-import.sh with enhanced QR scanning
- Update install-scripts.sh with desktop shortcuts
- Add proper permission handling

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:21 -05:00
70bdba52da chore: Update .gitignore for KNEL-Football project
- Update to ignore KNEL-Football specific build artifacts
- Remove blanket config/ directory ignore
- Add build directories and temporary files
- Add ISO artifacts and checksum patterns
- Add security exclusions for keys and secrets

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:08 -05:00
fb75282b8e refactor: Update security scripts with modular functions
- Refactor security-hardening.sh with modular functions
- Add create_wifi_blacklist function
- Add create_bluetooth_blacklist function
- Add configure_ssh, password_policy, system_limits, audit_rules
- Update firewall-setup.sh with proper WireGuard endpoint parsing
- Add dynamic nftables rule generation

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:39:55 -05:00
4cafafba56 refactor: Update build-iso.sh for Docker compliance
- Enhance build-iso.sh with strict Docker container usage
- Add proper volume mounts (/workspace:/build:/output)
- Ensure all operations inside container
- Add comprehensive error handling and reporting
- Only copy final artifacts (ISO, checksums, reports)

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:39:46 -05:00
9b0cbc658d feat: Add enhanced build and run scripts
- Add src/build.sh for Docker-based ISO building
- Add src/run-new.sh with enhanced container management
- Add src/run.sh as host wrapper for build process

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:39:40 -05:00
6594f1be1c feat: Add bin directory for management scripts
- Add bin/cleanup.sh for system cleanup
- Add bin/docker-manage.sh for Docker management utilities

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:39:34 -05:00
503b0ada27 feat: Add Docker utility library
- Add lib/docker.sh with container management functions
- Add cleanup_docker function for container cleanup
- Add run_container function for container execution
- Add exec_in_container function for command execution

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:39:29 -05:00
51f4eda7c3 feat: Add final security compliance report
- Add FINAL-SECURITY-COMPLIANCE-REPORT.md
- Document CMMC Level 3 compliance
- Document FedRAMP LI-SaaS compliance
- Document DISA STIG compliance
- Document CIS Benchmark compliance

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:38:57 -05:00
b2dab97452 docs: Add comprehensive documentation structure
- Add architecture.md with system architecture details
- Add COMPLIANCE.md with compliance matrix
- Add security-model.md with security specifications
- Add prompts-cache.md for AI prompt history

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:38:50 -05:00
d4eeaccbcc refactor: Move specifications to docs directory
- Move football-spec.md to docs/football-spec.md
- Move project-spec.md to docs/project-spec.md

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:38:44 -05:00
6cd53bc7ba feat: Add live-build hooks
- Add security-hardening.sh for system hardening
- Add firewall-setup.sh for nftables configuration
- Add qr-code-import.sh for WireGuard QR scanning
- Add disable-package-management.sh to secure package tools
- Add install-scripts.sh to install source utilities

These hooks implement core security and functionality requirements.

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 10:25:16 -05:00
ca08f9a259 feat: Add core build scripts
- Add build-iso.sh with validation and build functions
- Add firewall-setup.sh with dynamic nftables configuration
- Add security-hardening.sh with comprehensive hardening functions
- All scripts follow strict mode and are executable

These provide the core functionality for the secure ISO build process.

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 10:24:11 -05:00
01d1921dcf test: Add comprehensive test suite
- Add security hardening unit tests
- Add integration tests for configuration validation
- Add security compliance tests
- Cover all major components of Phase 1

This completes Phase 1 test framework setup.

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 10:23:20 -05:00
f9a1f8137b test: Add bats-core test framework
- Create test_helper/common.bash with shared utilities
- Add unit tests for firewall configuration functions
- Add unit tests for build script functions
- Establish testing patterns for TDD approach

This provides the foundation for 100% test coverage.

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 10:22:38 -05:00
3fc85b8130 feat: Phase 1 - Project structure and build environment
- Add project directory structure with config, src, tests directories
- Implement run.sh host wrapper script for Docker-based workflow
- Create Dockerfile for build/test environment with live-build
- Add basic live-build configuration with preseed and package lists
- Add .gitignore and .dockerignore files

This establishes the foundation for building the secure Debian ISO.

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 10:22:03 -05:00
9f0bbc6dc8 feat: update project name and licensing to KNEL-Football
- Update all project references from 'Secure Debian' to 'KNEL-Football'
- Add AGPLv3 license with copyright to Known Element Enterprises LLC
- Create comprehensive README.md with project overview and features
- Update copyright notices in all files
- Add project badges and documentation structure
- Maintain AGPLv3 only licensing throughout
2026-01-21 10:10:57 -05:00
5fc85ec72c docs: complete PreFlightDiscussion-03.md with final resolution
- All pre-flight discussions now resolved
- Package management implementation: installed hooks, chmod + chattr
- Ready for implementation phase
- Specification updated with all decisions
2026-01-21 10:02:16 -05:00
2b2a424d27 feat: update specification with pre-flight discussion decisions
- Update compliance: CMMC Level 3, LI-SaaS, CIS+STIG, adapt Debian 11 STIG
- Add QR code import capability with zbar and desktop shortcut
- Add package management disabling hook with chattr +i
- Update preseed: US/Chicago timezone, US keyboard, password complexity
- Add secure boot: UEFI only, measured boot, custom keys
- Add .gitignore to exclude ISO files
- Remove package management from applications, add test suite
- Add minimal package list (no aptitude/synaptic)
- Update testing: in-ISO tests, command line execution
2026-01-21 10:02:12 -05:00
fcfbbfa2d3 docs: create PreFlightDiscussion-03.md for final clarification
- Need clarification on package management implementation approach
- All other items resolved from PreFlightDiscussion-02.md
- Options: live hooks vs installed hooks, remove vs disable
- Ready to update specification once this final item is resolved
2026-01-21 09:58:23 -05:00