feat(callouts): codec, front matter, collaboration, checker, tests (#1824) #1832
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1832
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/image-callouts-1824"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
De volledige ketting voor image callouts (issue #1824), de eerste stap van het ontwerp in
docs/design/IMAGE_CALLOUTS.md(rev 4):CalloutTarget(punt of rechthoek),ImageCallout,CalloutPresentation,BulletRevealMode(al in de vorige commit)ocideck_callouts:-blok in de front matter, met de §2.5 nested merge: alleen bewerkte entries gaan door de canonieke vorm, comments, malformed entries en onbekende tokens blijven byte-voor-byte staankOwnedFrontMatterKeys, format versie 2 (alleen bij de eerste callout-save)SlideField.callouts/calloutPresentation/calloutReveal, diff, apply, codecFormaatversie 2
Een versie-1 bestand zonder callouts blijft versie 1. Zodra een deck voor het eerst callouts opslaat, schrijft de codec
ocideck_format: 2. Een oudere build die het blok niet kent laat het met rust (regel 1 van het formaatcontract) en schrijft versie 2 terug (regel 3).Bewaker
Deze wijziging raakt het bestandsformaat (nieuw
ocideck_callouts:-blok, format v2) en de opslag (front matter). Het ontwerp is bevroren indocs/design/IMAGE_CALLOUTS.mdrev 4 en volgt het bestaande formaatcontract: skip-what-you-don't-know, nested merge voor verliesvrije samenwerking, en de versie-sleutel als monotone grens. Geen nieuwe afhankelijkheden, geen uitgaand verkeer, geen publieke belofte die niet al in het ontwerp staat.Test plan
make checkgroen (10701 tests, 87.2% coverage)make check-secretsgroen (gitleaks + trufflehog)make sastgroen (semgrep, 0 findings)Generated with Devin