Reference for OrangeHRM's task scheduling — the orangehrm:run-schedule command that operators run from system cron (every minute), the SchedulerConfigurationInterface that plugins implement to register tasks at framework boot, the Schedule / Task / CommandInfo value objects (Task extends Crunz\Event, so all Crunz…
Reference for OrangeHRM's cryptographic and password-handling primitives — the Cryptographer class (AES-256-GCM with random nonces for new ciphertext, legacy AES-128-ECB still accepted on decrypt for backward compatibility), KeyHandler for the file-based crypto key lifecycle (created at install when data encryption is…
Reference for OrangeHRM's service layer — the /Service/ Service.php classes that sit between Endpoints/Controllers and DAOs and hold business logic, the ServiceTrait DI access pattern, the lazy-getter convention for composing services, where to register services in PluginConfigurationInterface::initialize(), and what…
Reference for OrangeHRM's test layers — PHPUnit per-plugin testsuites declared in phpunit.xml, the test-DB lifecycle (instance:create-test-db builds a populated MySQL DB plus a CoreFixtureService dump that bootstrap restores per test), test base classes (TestCase for plain unit tests, KernelTestCase for tests that…
Reference for OrangeHRM's workflow state machine — the WorkflowStateMachine entity that models (workflow, state, role, action) → resultingState transitions in ohrmworkflowstatemachine, the eight FLOW constants for the workflow types (Leave, Recruitment, Timesheet, Attendance, Employee, Review, Self-Review, Claim)…
AGENTS.md instructions for orangehrm/orangehrm, covering agents.md, session start (do this first, every new session), skills and commands, what this repo is and layout — the parts that matter.
Claude Code instructions for orangehrm/orangehrm, a project described as: OrangeHRM is a comprehensive Human Resource Management (HRM) System that captures all the essential functionalities required for any enterprise.