Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
func ConfigFromEnv ¶
ConfigFromEnv reads deduplication configuration from environment variables.
- CLOCKIFY_DEDUPE_MODE: "warn" (default), "block", "off" — case-insensitive
- CLOCKIFY_DEDUPE_LOOKBACK: default 25, must be > 0
- CLOCKIFY_OVERLAP_CHECK: "true"/"1"/"warn" (default true), "false"/"0"/"off"
type DuplicateResult ¶
func CheckDuplicate ¶
func CheckDuplicate(entries []clockify.TimeEntry, description, projectID, startISO string) *DuplicateResult
CheckDuplicate checks whether a proposed time entry duplicates an existing one. A duplicate is defined as an exact match on all three of:
- Description (case-insensitive)
- ProjectID (or both empty)
- Start time to the minute (first 16 chars of ISO 8601)
type OverlapResult ¶
func CheckOverlap ¶
func CheckOverlap(entries []clockify.TimeEntry, projectID, startISO, endISO string) *OverlapResult
CheckOverlap checks whether a proposed time range overlaps with any existing entry on the same project. Running timers (empty end time) are skipped. String comparison works for ISO 8601 timestamps.
Click to show internal directories.
Click to hide internal directories.