Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
253a32d
Safecheck: recovery dist shall equal to 1
yellowbean May 29, 2025
9a99681
expose triggerEffect: change bond interet type
yellowbean Jun 5, 2025
6c0fee7
expose lease endType( earlier & later)
yellowbean Jun 5, 2025
e286183
refactor on root finder
yellowbean Jun 7, 2025
e0d4725
fix req header
yellowbean Jun 7, 2025
24311e4
workaround to aviod error: missing pricing assumption
yellowbean Jun 7, 2025
0818aa9
bump version to-> < 0.46.1 >
yellowbean Jun 7, 2025
cfc0961
for structuring: slide balance
yellowbean Jun 7, 2025
b69eb30
bump version to-> < 0.46.2 >
yellowbean Jun 8, 2025
b1fdace
bump version to-> < 0.46.3 >
yellowbean Jun 8, 2025
973f612
expose prepayment stress in root.finder
yellowbean Jun 9, 2025
e1f90ff
extend stress prepayment
yellowbean Jun 10, 2025
2854f92
expose stop: bondPrinLoss bondIntLoss
yellowbean Jun 10, 2025
303b521
bump version to-> < 0.46.4 >
yellowbean Jun 10, 2025
aca49c9
add throw error on IRR of bond
yellowbean Jun 10, 2025
9a0ff13
Fix: Report with Lease Asset
yellowbean Jun 11, 2025
17e9b11
expose StopByPre
yellowbean Jun 18, 2025
30938ba
stopBy: any to all
yellowbean Jun 18, 2025
4b5fae7
Init for loan level testing
yellowbean Jun 30, 2025
d249385
Init test 01
yellowbean Jul 1, 2025
1fe1e80
make futureCf as Maybe
yellowbean Jul 1, 2025
c10b4a1
WIP
yellowbean Jul 2, 2025
f7c178b
fix duplicate asset level cf in collection
yellowbean Jul 3, 2025
696f5ab
expose UnUsedPoolFlow
yellowbean Jul 3, 2025
287bad7
expose oustanding flow and fix UT
yellowbean Jul 3, 2025
9d41a43
expose unUsedPoolFlow
yellowbean Jul 3, 2025
6ed45e6
fix pool collection ending condition
yellowbean Jul 4, 2025
3002914
expose stress factor range
yellowbean Jul 4, 2025
16e8dc2
parameterise the tweaks
yellowbean Jul 5, 2025
0b24225
fix UT
yellowbean Jul 5, 2025
fc938aa
remove debug
yellowbean Jul 6, 2025
e5c8dcc
add build.nix
yellowbean Jul 8, 2025
97cecfa
add pool outstanding warning message
yellowbean Jul 9, 2025
c5c9a79
finalized cabal file
yellowbean Jul 9, 2025
8e97e42
remove duplicate version cons
yellowbean Jul 9, 2025
32ceb86
add Test Library
yellowbean Jul 9, 2025
421fb72
add base version constrain
yellowbean Jul 10, 2025
2fd1355
fix base version
yellowbean Jul 10, 2025
e8a07c2
update template-haskell
yellowbean Jul 10, 2025
f9521db
update workflow
yellowbean Jul 10, 2025
0db527e
update wkflow for ghc version
yellowbean Jul 10, 2025
bd2fdf2
add lib to exe
yellowbean Jul 10, 2025
b0399e5
update
yellowbean Jul 13, 2025
d198b83
FIX: oustanding pool check
yellowbean Jul 14, 2025
468a43a
bump version to-> < 0.50.0 >
yellowbean Jul 14, 2025
71aa723
clean up
yellowbean Jul 14, 2025
118c3ad
bump version to-> < 0.50.1 >
yellowbean Jul 14, 2025
a742244
bump version to-> < 0.50.1 >
yellowbean Jul 14, 2025
26082c9
bump version to-> < 0.50.1 >
yellowbean Jul 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -157,4 +157,12 @@ jobs:
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/hastructure:latest, ${{ steps.meta.outputs.tags }}
cache-from: type=registry,ref=${{ secrets.DOCKER_HUB_USERNAME }}/hastructure:buildcache
cache-to: type=registry,ref=${{ secrets.DOCKER_HUB_USERNAME }}/hastructure:buildcache,mode=max


publish:

- uses: haskell-actions/hackage-publish@v1
with:
hackageToken: ${{ secrets.HACKAGE_KEY }}
packagesPath: ${{ runner.temp }}/packages
docsPath: ${{ runner.temp }}/docs
publish: false
8 changes: 4 additions & 4 deletions .github/workflows/haskell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ jobs:

steps:
- uses: actions/checkout@v3
- uses: haskell/actions/setup@v2
- uses: haskell-actions/setup@v2.8.0
with:
ghc-version: 'latest'
ghc-version: '9.8.4'
cabal-version: 'latest'

- name: Cache
Expand All @@ -33,7 +33,7 @@ jobs:
${{ runner.os }}-build-
${{ runner.os }}-

- name: Install dependencies
- name: Install depndencies
run: |
cabal update
- name: Build
Expand All @@ -44,4 +44,4 @@ jobs:
- name: Badge Action
uses: emibcn/badge-action@v1.2.4



27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,33 @@

<!-- towncrier release notes start -->

## 0.50.0
### 2025-07-14
* NEW: add `stopBy` in run assumption ,which stop deal run by a list of `Condition`
* NEW: expose `asset level` cashflow ,with a toggle
* NEW: expose `Un-Used Pool cashflow`
* ENHANCE: parameterized the `tweaks`
* ENHANCE: update dependency to accomodate publishment to `Hackage`
* FIX: enable `Lease` deal for `Financial reports`


## 0.46.4
### 2025-06-10
* ENHANCE: add error message when calculation IRR for bond with non cashflow
* ENHANCE: add `tweak`: `Stress Prepayment`
* ENHANCE: add `stop`: `Bond Principal Loss` `Bond Interest Loss`


## 0.46.2
### 2025-06-08
* ENHANCE: add `tweak`: `Balance Split` and `stop`: `Bond Met Target IRR`

## 0.46.1
### 2025-06-07
* ENHANCE: add 2 more `leaseEndType` assumptions: `Earlier` `Later` which will end the lease projection base on two input `End date` and `extention times`.
* ENHANCE: expose `new bond rate type` in `trigger effects`. Now bond rate type can be changed during the projection.
* REFACTOR: with new refactor `root finder` endpoint and signature. In the long term, the refactor of signature lays down fundation for `deal structuring` domain, now it would be easy to implement all kinds of structuring features.

## 0.45.7
### 2025-05-26
* ENHANCE: add `BaseByVec` for vector-based rental change
Expand Down
Loading
Loading