You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 29bdae3
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: .agents/skills/build-rapport/references/product-context.md
+18-3Lines changed: 18 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,14 +9,15 @@ Purpose: help the owner be a thoughtful friend, colleague and family member with
9
9
Records (kept distinct): **person** (name, photo, tags, cities, summary line, kept typed fields, preferred channel, keep in touch, pinned fields); **note** (a journal entry in storage: people, date, optional time, text; dated today by default; a later date makes it a plan; it counts as catching up only when saved with Caught up on, which is automatic for a later date; everything saved before 10 November 2026 counts); **Action** (optional Aim for date: dated in `followups`; undated in `next`, due at the next catch-up — the next planned event, else the keep-in-touch date — and shown with that date in Google Tasks; “Not this time” skips one catch-up; older “Ask / mention” Bring up items count as undated actions); **recommendation** (Saved / Done / Skipped); **occasion** (birthday, anniversary, custom; yearly; per-occurrence wishing).
10
10
11
11
Screens:
12
-
-**Home**: search; today's occasions; today's and tomorrow's events with a brief per person (actions tickable in place); at most two keep-in-touch suggestions (open chat, Caught up, Later). Also the one-off past-plans review and the Docs 90% reminder. Nothing else.
12
+
-**Home**: search; today's occasions; today's and tomorrow's events with a brief per person (actions tickable in place); at most two keep-in-touch suggestions (open chat, Mark caught up, Later). Also the one-off past-plans review and the Docs 90% reminder. Nothing else.
13
13
-**People**: directory with search, tags and pages of 12.
14
-
-**Person**: one screen — header (Add note, Caught up, plan) and summary, the Brief (pinned, next planned catch-up, actions, last note), Details (the kept typed fields), Notes (every note about them), recommendations, done/later items, occasions, tools.
14
+
-**Calendar** (bottom bar): a month of notes, plans, catch-ups, actions (due, and done on the day ticked) and occasions.
15
+
-**Person**: one screen — header (Add note, Mark caught up, plan) and summary, the Brief (pinned, next planned catch-up, actions, last note), catch-up history, Details (the kept typed fields, the same on every profile), Notes (every note about them), recommendations, done/later items, occasions, tools.
15
16
-**Capture (+)**: Note / Action, people, one text box, Save. A note is dated today unless changed (a later date makes a plan), has a Caught up tick, and after Save offers one-tap Action / Recommendation per line; Action saves one action per line straight away, with an optional Aim for date. How you met is not asked.
16
17
-**Search**: Open items before typing (every open action, grouped by person, upcoming events first) — the only cross-person list; typing finds people, items, notes and recommendations, pages of 12.
17
18
-**More**: Occasions, Settings, Details.
18
19
19
-
Overviews outside the app: Google Calendar (every note as an event — first line the title, the rest the description — with two-way moves and deletes and open actions on each person's next event) and Google Tasks (every open action, two-way; undated ones due on the next catch-up); the read-only iCalendar link (people only); Google Docs for NotebookLM. Storage is per record in D1 with delta sync.
20
+
Outside the app: Google Docs for NotebookLM / Gemini only (People notes and journal Docs, written so people cannot be confused). Google Calendar and Google Tasks are not synced; the read-only calendar link carries titles and people, never actions. Storage is per record in D1 with delta sync.
20
21
21
22
Scale: hundreds of people and records — searchable bounded pickers with removable chips, paged lists, drafts kept across filtering; never full-directory checkbox lists or growing native selects.
22
23
@@ -425,6 +426,20 @@ The owner asked for old details to become notes “to keep things uniform”, th
425
426
426
427
Supersedes: the free notes box and “Older details / Move into notes” in “Lighter profiles” (step 1.5), “last catch-up counts every entry that has happened” in “One event type” (step 1.2), and the Journal label in “Capture: Journal, Action or Bring up”.
427
428
429
+
## Rapport's own Calendar, no Google sync; clearer catch-ups; uniform profiles; Docs for Gemini — 10 November 2026
430
+
431
+
The owner found Rapport's actions appearing in their main Google Calendar (Google shows any task with a due date there) and chose to disconnect Google Calendar and Google Tasks entirely and have a calendar inside the app, as a bottom-bar tab. Decisions:
432
+
433
+
-**Calendar tab**: a month of notes, plans, catch-ups, actions due and actions done (on the day ticked; `doneOn`), and occasions. No Google Calendar or Tasks sync; the connection asks only for the Docs permission. Older connections get a “Remove from Google” button that deletes only Rapport's own task list and calendar. The calendar link never carries actions.
434
+
-**Catch-up wording**: “Caught up” vs “Caught up today” was unclear. The button is “Mark caught up”; once done it shows “Caught up today” with a separate Undo. Notes that count say “Catch-up”; the note-box tick says “We caught up”.
435
+
-**Catch-up history**: each person page lists every catch-up, newest first.
436
+
-**Care notes history**: earlier period starts are kept as a log (removable), shown in Details and in Care notes. Estimates stay based on the latest start and the cycle length set (owner's choice over averaging).
437
+
-**Uniform profiles**: pinned old details are converted into notes too, so every profile shows only the standard fields; Google Contacts no longer fills organisation, role or contact notes.
438
+
-**Adding a person**: Google Contacts matches show under the name while typing; choosing one links it on Save.
439
+
-**Docs for Gemini**: written to avoid hallucination and confusing people — reading rules at the top, the full name at the start of every line in People notes, people sharing a first name listed, each note in the journal Docs headed with everyone's full names.
440
+
441
+
Supersedes the Google Calendar and Google Tasks rules in earlier sections (including step 1.3, “Notes as events” and undated actions in Google Tasks), “Pinned details stay” in “Notes, Caught up, and old details as notes”, and the removal of the Calendar page in step 1.6.
442
+
428
443
## Overhaul accepted — 10 November 2026
429
444
430
445
The owner found Rapport too much effort to use and accepted an overhaul; the full plan, decisions, migration rules and progress checklist are in `overhaul-plan.md` beside this file. In short: Google Calendar and Google Tasks become the only overview of events and actions; plans and catch-ups become one timed event with no Mark done; Import from Gemini is removed (the Docs export for Gemini/NotebookLM stays); profiles get lighter; capture becomes one box with optional sorting after the save; navigation becomes Home, People and +; then a directly installed Android app with widgets, a call card over incoming and outgoing phone and WhatsApp calls, and an after-call note prompt. No new integrations and still no integrated AI. Sections above that conflict are superseded as each step of the plan lands, not before.
Copy file name to clipboardExpand all lines: README.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,10 +10,11 @@ Start with [AGENTS.md](AGENTS.md) and the [repo skill](.agents/skills/build-rapp
10
10
11
11
-**Home**: today's occasions, today's and tomorrow's events with a short brief for each person, and at most two keep-in-touch suggestions.
12
12
-**+**: one box (people, text, Save). A **Note** is dated today unless you change it; a later date makes it a plan; tick Caught up when you actually met or spoke. An **Action** saves each line as an action straight away. After saving a note, any line becomes an Action or a Recommendation with one tap.
13
-
-**People** and the **person page**: one screen with the Brief (open actions, next plan, last note), a Caught up button, the few typed fields that do work (contacts, birthday, allergies, family, pets, gift ideas, places) and every note about them.
13
+
-**People** and the **person page**: one screen with the Brief (open actions, next plan, last note), a Mark caught up button and catch-up history, the few typed fields that do work (contacts, birthday, allergies, family, pets, gift ideas, places) and every note about them.
14
14
-**Search**: open items across everyone before typing; people, items, notes and recommendations as you type.
15
15
-**More**: Occasions, Settings and Details.
16
-
-**Google**: every note is a Google Calendar event (first line the title, the rest the description); two-way Calendar and Tasks sync (actions without a date are due in Google Tasks on your next catch-up with that person), Docs for NotebookLM, read-only Contacts linking, and a view-only calendar link.
16
+
-**Calendar**: a month of notes, plans, catch-ups, actions (due and done) and occasions, inside Rapport.
17
+
-**Google**: Docs for NotebookLM / Gemini, written so it can't mix people up, and read-only Contacts linking (matches appear while you type a new person's name). Google Calendar and Tasks are not synced.
Copy file name to clipboardExpand all lines: docs/google-tasks.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,7 @@
1
1
# Google Calendar and Google Tasks
2
2
3
+
> **Turned off on 10 November 2026.** Google Calendar and Google Tasks are no longer synced (dated tasks showed in the owner's main Google Calendar). Rapport has its own Calendar tab; the Google connection now asks only for the Docs permission, and Settings can remove the old “Rapport” task list and calendar from Google. The sections below describe how the sync worked, for reference.
4
+
3
5
With Sign in with Google, one **Connect Google** button in Settings links both:
4
6
5
7
-**Google Calendar (a “Rapport” calendar Rapport keeps in your Google Calendar):** plans and catch-ups (one kind of event, the last 12 months onward; see “Overhaul step 1.3” below) and the next year of occasions (with their day-before and week-before alerts). Titles are the first sentence of the entry's note (or the people's first names); descriptions are the people tagged. Move or delete a plan or catch-up in Google and Rapport follows; occasions, titles and descriptions are put back (details below). Catch-ups older than 12 months and past occasions stay in Google as history.
Copy file name to clipboardExpand all lines: docs/personal-details.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,3 +49,7 @@ Saving Details updates Care notes through the existing sync. Deleting a person
49
49
## Verification
50
50
51
51
The automated suite covers all stage boundaries, different cycle lengths, unknown/disabled estimates, manually marked late, icon escaping/accessibility, owner-only minimal badge responses, export opt-in and exclusion from People/journal Docs. UI interaction/visual checks remain unverified because this environment blocks Chromium's process socket. No live Google service is used in tests. No deployment is performed as part of this change.
52
+
53
+
## Start history (10 November 2026)
54
+
55
+
Each record keeps a log of earlier period starts in `history` (`[{date, basis}]`, newest first, up to 120). When the latest start date is changed and saved, the previous one moves into the log (`withStartHistory` in `public/personal-model.js`); a mistaken entry can be removed from the log in the editor. Care notes list the earlier starts. Estimates are unchanged: they use only the latest start and the cycle length set. Older records without `history` still load.
0 commit comments