flycal-cli 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/flycal_cli/slot_finder.rb +6 -9
- data/lib/flycal_cli/version.rb +1 -1
- data/mcp/tools.json +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b7333fcbb8ba227c7694b96cba4b35893e324c13e38bdc6d996e69f54cc3d64a
|
|
4
|
+
data.tar.gz: aab159e8f8e68368db1e45d1a799dd93386f79a0f2f9c29bb92aba776bcefa21
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2036031048ebcb74e1954ff1d574051945407bdef922f161f4b1ad7e8be7cd1f3dfdec6dea2efe671502a1310ba834cee44426d837a3b7dfee4fb76fbd504117
|
|
7
|
+
data.tar.gz: 40646b4ce7bfaa3256a35c435cdf6dcb3913aaf2a3811370219e32c510fc88d7469d652b573973016d96b9e1d5f49cca8da159bfad7d787742dc8c0bba9239d0
|
|
@@ -142,16 +142,13 @@ module FlycalCli
|
|
|
142
142
|
end
|
|
143
143
|
|
|
144
144
|
def slots_in_gap(start_at, end_at)
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
145
|
+
rounded_start = round_up_15(start_at)
|
|
146
|
+
rounded_end = round_down_15(end_at)
|
|
147
|
+
return [] if rounded_start >= rounded_end
|
|
148
|
+
return [] if (rounded_end - rounded_start) < @slot_duration_seconds
|
|
148
149
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
cursor += STEP_SECONDS
|
|
152
|
-
end
|
|
153
|
-
|
|
154
|
-
slots
|
|
150
|
+
# One continuous free range (not sliding windows of fixed duration)
|
|
151
|
+
[[rounded_start, rounded_end]]
|
|
155
152
|
end
|
|
156
153
|
|
|
157
154
|
def round_up_15(time)
|
data/lib/flycal_cli/version.rb
CHANGED
data/mcp/tools.json
CHANGED
|
@@ -256,7 +256,7 @@
|
|
|
256
256
|
{
|
|
257
257
|
"name": "flycal_slots",
|
|
258
258
|
"title": "Find free time slots",
|
|
259
|
-
"description": "Find free slots within configured hours, subtracting busy events from slots.exclude_calendars (or calendar_default if that list is empty). Starts from --from (default: config slots.defaults.from or now) for a window of --in (default: 1 week). Duration defaults to slots.defaults.default_duration (45min). Respects free_before and free_after buffers from config. Output begins with a multi-line header, calendar names, a Google Calendar day link, then
|
|
259
|
+
"description": "Find free slots within configured hours, subtracting busy events from slots.exclude_calendars (or calendar_default if that list is empty). Starts from --from (default: config slots.defaults.from or now) for a window of --in (default: 1 week). Duration defaults to slots.defaults.default_duration (45min). Respects free_before and free_after buffers from config. Output begins with a multi-line header, calendar names, a Google Calendar day link, then continuous free ranges (each at least as long as duration). Read-only.",
|
|
260
260
|
"interactive": false,
|
|
261
261
|
"requires_auth": true,
|
|
262
262
|
"command": {
|