• merge: Google Kalender som menupunkt, med Verdandes egen kalender lagt over
    Release / Build and publish image (push) Failing after 9m58s

    kw released this 2026-08-20 05:39:12 +00:00 | 256 commits to main since this release

    Læs bredt, skriv snævert — decision 5 i planen, og kun den første halvdel:
    kalenderen læses, og der skrives ingenting tilbage.

    OAuth-blokeringen er reel og blev ikke gået udenom. En klient registreret som
    Internal tager kun konti i sit eget workspace — også til kalendere, ikke kun
    Gmail. Andreas' private konto bliver afvist med org_internal, og det er
    klienten, der virker efter hensigten, ikke en fejl. Fladen siger det nu med ord,
    man kan handle på, frem for at vise Googles egen skærm, der ikke gør.

    Vejen udenom, som ikke er bygget: kalenderens egen hemmelige ICS-adresse. Ingen
    OAuth, virker for enhver konto, og internal/ics findes allerede. Det er det
    næste stykke, og det eneste, der låser den private konto op.

    internal/google er flyttet ud af internal/gmail, fordi de to er det samme
    flow, der er uenige om én streng. Egen callback-adresse frem for at dele Gmails:
    én callback, der finder ud af hvilken token-butik den skal skrive i, går galt ved
    at overskrive en Gmail-forbindelse, der virkede.

    Egne tabeller frem for mailboxes. trigger_kind, seen og last_uid svarer
    alle på "hvad gør en besked til en opgave", og ingenting her bliver til en
    opgave; én konto har mange kalendere, og mailboxes har ikke plads til en
    en-til-mange. Afgørende i praksis: mailboxes.kind har en CHECK, og SQLite kan
    ikke ændre en — en tredje værdi koster den tabelombygning, som migration 0021
    skulle igennem.

    Begivenheder erstattes pr. kalender pr. vindue frem for at flettes med et
    sync-token: et vindue, der slettes og skrives forfra, kan ikke komme ud af trit,
    og et sync-token er endnu en ting, der skal være rigtig for altid, for at gitteret
    ikke stille viser noget forkert.

    CalendarView er udvidet, ikke kopieret. En begivenhed er et fyldt bånd, hvor en
    opgave er et kort med en farvet kant, så de to læses forskelligt før et ord er
    læst — og den kan ikke trækkes og er aldrig en knap: der er ikke noget at gøre
    færdigt ved en andens møde.

    To værn på det, der kommer fra Google: farven skal matche et hex-mønster, før den
    må stå i en style, og linket bliver kun til et href, hvis det begynder med https.

    Konflikten i jobs.go var to nye jobs skrevet på samme linje. Begge skal med.

    Co-Authored-By: Claude Opus 5 noreply@anthropic.com

    Downloads