KO Builder — DividendEvent.v2
Fill → generate JSON + KO text. You can then save to the Registry (LocalStorage) with a versioned ID.
Generated JSON (DividendEvent.v2)
{ }
Generated Knowledge Object (text block)
(click Generate)
Missing / Validation notes
—
Registry — Stored Knowledge Objects (LocalStorage)
Everything you save stays in your browser (localStorage). Export/import JSON to move between machines.
| ID | Version | Type | Company | Ticker | Listing | AsOf | Confidence | Actions |
|---|
Selected Entry (JSON)
Select a row…
Selected Entry (KO text)
Select a row…
Import/Export format
Registry export is a JSON array of entries:
[
{"id":"DIV-...","version":"1.0","type":"DividendEvent","keywords":[...],"data":{...},"createdAt":"...","updatedAt":"..."},
...
]
Compare & Reconcile — Two Sources → One Candidate Truth
Paste two JSON objects (DividendEvent-like) or load two registry entries. The tool finds conflicts and proposes a resolution based on tier precedence.
Source A
Source B
Conflicts detected
—
Resolution decision trail
—
Reconciled candidate (JSON)
{ }
Suggested new KO (text)
—
Save reconciled KO
Net Dividend Calculator (explicit assumptions)
This calculator is intentionally transparent: it will show every assumption (withholding, ADR fees, FX). It does not fetch live FX; you can provide an FX rate if needed.
Inputs
Results
—
NetDividendResult KO (text)
—
Models — Confidence, Versioning & Guardrails (copy/paste KOs)
Confidence scoring model
Please remember this as a knowledge object:
ID: MODEL-CONFIDENCE-001
Version: 1.0
Type: Definition
Content:
- ConfidenceScore (0–100) = TierScore + FreshnessScore + CompletenessScore - ConflictPenalty
- TierScore: Tier1=45, Tier2=30, Tier3=15
- FreshnessScore (days since AsOf): 0–7=25, 8–30=15, 31–90=5, >90=0
- CompletenessScore: all required present=25 else=10
- ConflictPenalty: 0=0, 1=15, 2=25, 3+=40
- Label: 80–100 High; 55–79 Medium; <55 Low
Scope: Remember
Valid until: until changed
Versioning & change detection
Please remember this as a knowledge object:
ID: MODEL-VERSIONING-001
Version: 1.0
Type: Procedure
Content:
- If any of these change: AmountPerShare, Currency, ExDate, RecordDate, PayDate, DividendType, Source
-> create NEW version and add change log.
- Never overwrite old versions.
- When answering, cite the latest version and mention change if material.
Scope: Remember
Valid until: until changed
Guardrails: gross vs net + listing
Please remember this as a knowledge object:
ID: GUARD-DIV-001
Version: 1.0
Type: Guardrails
Content:
- Default to reporting GROSS per-share amount.
- If NET requested: ask residency + account type + broker withholding.
- Always confirm listing when ADR/local exists.
- Never mix currency/dates across listings.
Scope: Remember
Valid until: until changed
Reconcile & audit procedure
Please remember this as a knowledge object:
ID: PROC-DIV-RECON-001
Version: 1.0
Type: Procedure
Content:
- Prefer Tier1 sources; use Tier2 as secondary; Tier3 as context.
- If conflicts: show both, flag discrepancy, default to Tier1.
- Output must include: gross/net label, confidence label, source, as-of.
Scope: Remember
Valid until: until changed
Test Harness — Run checks on any KO
Paste a DividendEvent JSON (or load from registry) and run validations: required fields, date order, listing consistency, confidence label presence.
Results
—
Default tests
1) Required fields present
2) Date sanity (Declaration <= Ex <= Record <= Pay when present)
3) AmountPerShare is numeric
4) Listing has Exchange + MIC
5) Confidence label exists