idx-cli/src/cli
hermes 2c85acb829 feat(ownership): import IDX above-1% XLSX holder register
Since June 2026 IDX publishes the monthly "Pemegang Saham di Atas 1%"
list as an XLSX workbook on the Data Kepemilikan Saham page instead of
a PDF announcement. Add a parser for it and accept `.xlsx` in
`ownership import --file`.

- src/ownership/xlsx.rs: zip + quick-xml reader (shared strings incl.
  rich text, sheet cells), exact 12-column header match so the daily
  above-5% and investor-type/classification workbooks are rejected,
  Excel serial dates, numeric shares, percent -> bps with float-noise
  rounding. Builds KseiHoldingDraft directly and reuses the entity
  normalizers, so investor types stay uppercase like the PDF path.
- Fixtures: trimmed excerpts of the real 2026-08-31 above-1% and
  2026-09-23 above-5% workbooks.
- Unit + CLI tests: import, ticker, releases, above-5% rejection.
- Docs: ARCHITECTURE parser pipeline, AGENTS ownership inputs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017a5Cv5Z1NzdYKgKnTiAF4E
2026-09-24 20:48:07 +00:00
..
cache.rs chore: prepare v0.2.1 release 2026-04-06 17:47:20 +07:00
config.rs cli: polish clap help text across commands 2026-03-05 19:34:47 +00:00
mod.rs chore: prepare v0.2.1 release 2026-04-06 17:47:20 +07:00
ownership.rs feat(ownership): import IDX above-1% XLSX holder register 2026-09-24 20:48:07 +00:00
stocks.rs fix: satisfy clippy 1.97 lints failing on CI 2026-07-31 12:14:58 +00:00