Add the EDS calendar bridge
This commit is contained in:
@@ -75,7 +75,7 @@
|
||||
- Produces: one-line JSON snapshots with `ok`, `generatedAt`, `sources`, `events`, and `errors`.
|
||||
- Produces event objects with exactly `id`, `sourceId`, `uid`, `summary`, `start`, `end`, `allDay`, `location`, and `joinUrl`.
|
||||
|
||||
- [ ] **Step 1: Write failing pure bridge tests**
|
||||
- [x] **Step 1: Write failing pure bridge tests**
|
||||
|
||||
Create `tests/quickshell/calendar_agenda_bridge_test.py` with import-by-path and synthetic policy cases:
|
||||
|
||||
@@ -148,7 +148,7 @@ if __name__ == "__main__":
|
||||
unittest.main()
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Run the unit test and verify RED**
|
||||
- [x] **Step 2: Run the unit test and verify RED**
|
||||
|
||||
Run:
|
||||
|
||||
@@ -158,7 +158,7 @@ python3 tests/quickshell/calendar_agenda_bridge_test.py
|
||||
|
||||
Expected: FAIL because `config/dot/quickshell/scripts/calendar-agenda` does not exist.
|
||||
|
||||
- [ ] **Step 3: Implement the bridge's pure contract and CLI boundary**
|
||||
- [x] **Step 3: Implement the bridge's pure contract and CLI boundary**
|
||||
|
||||
Create `config/dot/quickshell/scripts/calendar-agenda` with a Python shebang and no top-level execution on import. Begin with these pure helpers:
|
||||
|
||||
@@ -217,7 +217,7 @@ Make the helper executable:
|
||||
chmod +x config/dot/quickshell/scripts/calendar-agenda
|
||||
```
|
||||
|
||||
- [ ] **Step 4: Run pure tests and verify GREEN**
|
||||
- [x] **Step 4: Run pure tests and verify GREEN**
|
||||
|
||||
Run:
|
||||
|
||||
@@ -227,7 +227,7 @@ python3 tests/quickshell/calendar_agenda_bridge_test.py
|
||||
|
||||
Expected: four tests PASS.
|
||||
|
||||
- [ ] **Step 5: Add the redacted live helper contract**
|
||||
- [x] **Step 5: Add the redacted live helper contract**
|
||||
|
||||
Create `tests/quickshell/calendar-agenda-helper-contract.sh` with:
|
||||
|
||||
@@ -260,7 +260,7 @@ printf 'calendar agenda helper contract: PASS (%s sources, %s events; contents r
|
||||
|
||||
Make it executable and run it. Expected: PASS with counts only; no source names, summaries, locations, or URLs in terminal output.
|
||||
|
||||
- [ ] **Step 6: Commit the bridge**
|
||||
- [x] **Step 6: Commit the bridge**
|
||||
|
||||
```bash
|
||||
git add config/dot/quickshell/scripts/calendar-agenda \
|
||||
|
||||
Reference in New Issue
Block a user