docs: remove references to the source app and recording

Prepare for open-sourcing: scrub the prior-art attribution from the spec,
agent guide, and code comments so the project documents its own behavior.

- Reword RULES_FEATURE_SPEC.md to describe OpenAppLock's rules feature
  directly (drop the screen-recording source line and "as observed"/
  "not demoed"/"as shown" framing)
- Replace "the reference app/UI/style/defaults" comments and test names
  with direct descriptions of the behavior
- No behavior change; comments, docs, and @Test display names only

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-13 22:23:14 -04:00
parent 32b1694e0a
commit d005ed4fb1
13 changed files with 52 additions and 56 deletions

View File

@@ -26,8 +26,8 @@ enum RuleConfiguration: Hashable, Sendable {
}
}
/// The default configuration for a brand-new rule of the given kind, using
/// the reference app's defaults (95 schedule, 45m/day, 5 opens/day).
/// The default configuration for a brand-new rule of the given kind
/// (95 schedule, 45m/day, 5 opens/day).
static func `default`(for kind: RuleKind) -> RuleConfiguration {
switch kind {
case .schedule: .schedule(ScheduleConfig())

View File

@@ -5,7 +5,7 @@
import Foundation
/// The three kinds of blocking rules, mirroring the reference app's "New Rule" sheet.
/// The three kinds of blocking rules offered on the "New Rule" sheet.
enum RuleKind: String, Codable, CaseIterable, Sendable {
/// Block selected apps during a recurring time window.
case schedule
@@ -38,7 +38,7 @@ enum RuleKind: String, Codable, CaseIterable, Sendable {
}
}
/// Default name given to a brand-new rule of this kind (Opal: "In the Zone", "Time Keeper").
/// Default name given to a brand-new rule of this kind (e.g. "In the Zone", "Time Keeper").
var defaultRuleName: String {
switch self {
case .schedule: "In the Zone"

View File

@@ -76,7 +76,7 @@ struct RuleSchedule: Hashable, Sendable {
}
extension RuleSchedule {
/// "09:00" style label for a minutes-from-midnight value, matching the reference UI.
/// "09:00" style label for a minutes-from-midnight value.
static func timeLabel(forMinutes minutes: Int) -> String {
let clamped = ((minutes % (24 * 60)) + 24 * 60) % (24 * 60)
return String(format: "%02d:%02d", clamped / 60, clamped % 60)

View File

@@ -19,7 +19,7 @@ enum Weekday: Int, CaseIterable, Codable, Hashable, Sendable {
static let weekends: Set<Weekday> = [.saturday, .sunday]
static let everyDay: Set<Weekday> = Set(Weekday.allCases)
/// Display order used by the day picker, matching the reference UI: S M T W T F S.
/// Display order used by the day picker: S M T W T F S.
static let displayOrder: [Weekday] = [
.sunday, .monday, .tuesday, .wednesday, .thursday, .friday, .saturday,
]