Skip to content

Commit fef0518

Browse files
avivsinaiclaude
andauthored
chore(release): v0.7.0 (#37)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent bcd9c31 commit fef0518

4 files changed

Lines changed: 34 additions & 7 deletions

File tree

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "shaon",
3-
"version": "0.6.0",
3+
"version": "0.7.0",
44
"description": "Rust CLI and Claude Code skill for Hilan (חילן) / Hilanet attendance, reports, payslips, and salary lookup.",
55
"author": {
66
"name": "Aviv Sinai",

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
77

88
## [Unreleased]
99

10+
## [0.7.0] - 2026-04-12
11+
### Added
12+
- **Self-signed codesign identity** (`scripts/setup-codesign.sh`): creates a local codesigning identity so macOS Keychain "Always Allow" persists across rebuilds. Previously ad-hoc `codesign -s -` produced a new cdhash-based designated requirement per build, re-prompting every time. `scripts/run.sh` now prefers the identity; ad-hoc fallback only when it's missing.
13+
- **`ARCHITECTURE.md`**: high-level map of workspace crates, trait boundaries, and the two-layer Hilan protocol.
14+
- **End-to-end orchestration tests**: `spawn_test_server` coverage of `ErrorWizardThenCalendar` (no-conflict + delete-then-resubmit paths).
15+
16+
### Fixed
17+
- **Unified submit/fix flow**: auto-deletes conflicting absence rows before applying a work-type. Vacation → WFH no longer silently rejected with `קיים דיווח בזמן המדווח`; one `shaon fix` or `shaon fill --execute` call handles the two-step orchestration transparently.
18+
- **Payslip download**: `OrgId` now sourced from `api::bootstrap()` instead of a fragile homepage HTML regex. Resolves `payslip_download_failed: Could not find OrgId`.
19+
- **Parser: `selected_row_date`**: raw string terminator bug (`"#` ended the `r#"…"#` literal) caused the fail-closed guard to trip on every valid response.
20+
- **Parser: `parse_aspx_delta`**: UTF-8 safe slicing; previously panicked on Hebrew alert payloads (`קיים דיווח…`).
21+
- **Parser: RowData binding**: returns the block matching the requested `ReportDate` instead of the first one on the page.
22+
- **Multi-row conflict deletion**: deletes all blocking absence rows for the target day, not just the first.
23+
- **Session expiry detection**: narrowed to path-based match so `/HilanCenter/Public/api/LoginApi/…` (the login endpoint itself) isn't flagged as an auth redirect.
24+
- **Hilan async writes**: explicit `alert()` / `HWarning()` / `HError()` detection in delta responses. No more silent `executed: true` when the server actually rejected.
25+
26+
### Changed
27+
- **Bootstrap cached per client/session**: invalidated on reauth. Removes 3× redundant `GetData` calls per write.
28+
- **DRY**: calendar / error-wizard `browser_fields` allowlists hoisted to module-level constants.
29+
- **DRY**: step-preview rendering consolidated into a shared `render_step_list` helper used by both `attendance::compose_submit_preview_steps` and `provider::preview_with_steps`.
30+
- **LazyLock**: 16 × `Selector::parse(...).unwrap()` migrated to module-scope `LazyLock` statics.
31+
- **Release workflow + Homebrew formula**: `caveats` block explains the ad-hoc install path and points users at `setup-codesign.sh` for a stable local signing identity. `scripts/install.sh` prints the same guidance on macOS.
32+
- **Logo**: tightened to industry-standard ~10% safe-zone (character fills ~80% of canvas).
33+
34+
### Security
35+
- **`scripts/setup-codesign.sh`**: does NOT pass `-A` to `security import`. Explicit `-T /usr/bin/codesign` allowlist only; other local processes can't use the signing key without user approval.
36+
1037
## [0.6.0] - 2026-04-11
1138
### Added
1239
- **`AttendanceSource` enum**: distinguishes user-reported, system-auto-filled, holiday, and unreported days

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ members = [
88
]
99

1010
[workspace.package]
11-
version = "0.6.0"
11+
version = "0.7.0"
1212
edition = "2021"
1313
rust-version = "1.80"
1414
license = "MIT"

0 commit comments

Comments
 (0)