fix(frontend): post-tax CW20 amounts after native wrap (#342) #846

Merged
PlasticDigits merged 1 commit from local1/342-native-tax into main 2026-06-09 07:12:13 +00:00
PlasticDigits commented 2026-06-09 06:53:23 +00:00 (Migrated from gitlab.com)

Summary

  • nativeTransferTax.ts queries LCD tax rate; net CW20 for router send and pool provide after wrap_deposit

Test plan

  • npm test -- nativeTransferTax.test.ts
  • LUNC→EMBER swap and LUNC pool provide on LocalTerra

Docs

Merge after !844–!845 (stacked).


Note

Low Risk
Lint-style binding change only; transaction amounts and wrap/tax behavior are unchanged.

Overview
In PoolPage’s provide-liquidity mutation, rawA and rawB are declared with const instead of let at the start of the handler.

That matches the current flow: gross raw amounts stay fixed for the non-wrap path and for wrap_deposit coins, while the native-wrap branch already derives netA / netB separately (post-transfer-tax) for allowances and provide_liquidity asset amounts. No logic change—just immutability for the initial conversion from user input.

Reviewed by Cursor Bugbot for commit 5b3f735803. Bugbot is set up for automated code reviews on this repo. Configure here.

## Summary - `nativeTransferTax.ts` queries LCD tax rate; net CW20 for router send and pool provide after `wrap_deposit` ## Test plan - [ ] `npm test -- nativeTransferTax.test.ts` - [ ] LUNC→EMBER swap and LUNC pool provide on LocalTerra ## Docs - [NATIVE_TOKEN_WRAPPING.md](NATIVE_TOKEN_WRAPPING.md), [skills/AGENTS_NATIVE_WRAP_TAX.md](skills/AGENTS_NATIVE_WRAP_TAX.md) **Merge after !844–!845** (stacked). <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Lint-style binding change only; transaction amounts and wrap/tax behavior are unchanged. > > **Overview** > In **PoolPage**’s provide-liquidity mutation, **`rawA` and `rawB`** are declared with **`const`** instead of **`let`** at the start of the handler. > > That matches the current flow: gross raw amounts stay fixed for the non-wrap path and for **`wrap_deposit`** coins, while the native-wrap branch already derives **`netA` / `netB`** separately (post-transfer-tax) for allowances and **`provide_liquidity`** asset amounts. No logic change—just immutability for the initial conversion from user input. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 5b3f7358032443af775cc2fd1c0cf84791a6fa44. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
ghost1 commented 2026-06-09 06:53:32 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits commented 2026-06-09 06:53:43 +00:00 (Migrated from gitlab.com)

mentioned in issue #342

mentioned in issue #342
ghost1 commented 2026-06-09 06:53:52 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-09 06:54:41 +00:00 (Migrated from gitlab.com)
Stale Security Review comment

Cursor Bugbot has reviewed your changes and found 2 potential issues.
Bugbot Autofix is ON. A cloud agent has been kicked off to fix the reported issues.

Reviewed by Cursor Bugbot for commit ee182786a0. Configure here.

<details> <summary>Stale Security Review comment</summary> <!-- BUGBOT_REVIEW --> Cursor Bugbot has reviewed your changes and found 2 potential issues.<!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_BEGIN --> <sup>Bugbot Autofix is [ON](https://www.cursor.com/dashboard/bugbot). A cloud agent has been kicked off to fix the reported issues. <!-- BUGBOT_AUTOFIX_AGENT_LINK --></sup> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_END --> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit ee182786a0ece990a3499cff6ee73e4a1afda5aa. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> </details>
ghost1 commented 2026-06-09 06:54:42 +00:00 (Migrated from gitlab.com)

Tax cache ignores denom

Medium Severity

fetchNativeTransferTaxParams caches a single params object for 60s without recording which denom was used for tax_caps. A later call for another native denom (e.g. uusd after uluna) can reuse the wrong per-denom cap and compute incorrect net amounts for wrap/LP.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit ee182786a0. Configure here.

### Tax cache ignores denom **Medium Severity** <!-- DESCRIPTION START --> `fetchNativeTransferTaxParams` caches a single `params` object for 60s without recording which denom was used for `tax_caps`. A later call for another native denom (e.g. `uusd` after `uluna`) can reuse the wrong per-denom cap and compute incorrect net amounts for wrap/LP. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 98e26ec1-b3ef-42c8-969a-d33692e26f91 --> <!-- LOCATIONS START frontend-dapp/src/utils/nativeTransferTax.ts#L11-L52 LOCATIONS END --> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmI5YTMwYmE4LWRlOGUtNDBkNi05NjcxLTViOTQyMTBmMmFhYSIsImVuY3J5cHRpb25LZXkiOiI3dGtWNHVRZWlaUWFRSVB4UXRPNlRtU3ctMm9xZER1MVRvWGxfQUduaGZrIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmI5YTMwYmE4LWRlOGUtNDBkNi05NjcxLTViOTQyMTBmMmFhYSIsImVuY3J5cHRpb25LZXkiOiI3dGtWNHVRZWlaUWFRSVB4UXRPNlRtU3ctMm9xZER1MVRvWGxfQUduaGZrIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIiwicHJOdW1iZXIiOjEyOCwiY29tbWl0U2hhIjoiZWUxODI3ODZhMGVjZTk5MGEzNDk5Y2ZmNmVlNzNlNGExYWZkYTVhYSIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit ee182786a0ece990a3499cff6ee73e4a1afda5aa. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-09 06:54:42 +00:00 (Migrated from gitlab.com)

Wrap deposit uses net amount

High Severity

The native-wrap provide path overwrites rawA/rawB with post-tax net values before building messages, so wrap_deposit coins use the net amount instead of the user’s gross native deposit. That under-deposits native, mints less CW20 than the allowance and provide_liquidity expect, and can reproduce Cannot Sub or wrong pool deposits.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit ee182786a0. Configure here.

### Wrap deposit uses net amount **High Severity** <!-- DESCRIPTION START --> The native-wrap provide path overwrites `rawA`/`rawB` with post-tax net values before building messages, so `wrap_deposit` coins use the net amount instead of the user’s gross native deposit. That under-deposits native, mints less CW20 than the allowance and `provide_liquidity` expect, and can reproduce `Cannot Sub` or wrong pool deposits. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 8caabd13-f621-47c5-b55a-12fc8960c94b --> <!-- LOCATIONS START frontend-dapp/src/pages/PoolPage.tsx#L306-L323 LOCATIONS END --> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjI3MGMyNmFmLWZhYTktNGZkNi04NjEyLWJjZjMwYzNlNDFmZiIsImVuY3J5cHRpb25LZXkiOiJvcTkzRGtCa3VpSllGSVZMRnR6WWVzd20zVVktcWlvRmdBNUt4YVdwc3NZIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjI3MGMyNmFmLWZhYTktNGZkNi04NjEyLWJjZjMwYzNlNDFmZiIsImVuY3J5cHRpb25LZXkiOiJvcTkzRGtCa3VpSllGSVZMRnR6WWVzd20zVVktcWlvRmdBNUt4YVdwc3NZIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIiwicHJOdW1iZXIiOjEyOCwiY29tbWl0U2hhIjoiZWUxODI3ODZhMGVjZTk5MGEzNDk5Y2ZmNmVlNzNlNGExYWZkYTVhYSIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit ee182786a0ece990a3499cff6ee73e4a1afda5aa. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-09 06:58:11 +00:00 (Migrated from gitlab.com)

changed this line in version 2 of the diff

changed this line in [version 2 of the diff](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/128/diffs?diff_id=1841273789&start_sha=ee182786a0ece990a3499cff6ee73e4a1afda5aa#c4637ed432728b2070e4a79b23301c3b9d26346c_52_52)
ghost1 commented 2026-06-09 06:58:12 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 5b2baee0 - Fix native-wrap provide gross deposit and per-denom tax cache

Compare with previous version

added 1 commit <ul><li>5b2baee0 - Fix native-wrap provide gross deposit and per-denom tax cache</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/128/diffs?diff_id=1841273789&start_sha=ee182786a0ece990a3499cff6ee73e4a1afda5aa)
ghost1 commented 2026-06-09 06:58:26 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-09 06:58:34 +00:00 (Migrated from gitlab.com)

resolved all threads

resolved all threads
ghost1 commented 2026-06-09 06:58:34 +00:00 (Migrated from gitlab.com)

resolved all threads

resolved all threads
ghost1 commented 2026-06-09 07:00:04 +00:00 (Migrated from gitlab.com)

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is ON. A cloud agent has been kicked off to fix the reported issue.

Reviewed by Cursor Bugbot for commit 5b2baee0382a61bcb5f95121f9dbfc106645f98a. Configure here.

<!-- BUGBOT_REVIEW --> Cursor Bugbot has reviewed your changes and found 1 potential issue. <!-- BUGBOT_FIX_ALL --> <a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9BTExfSU5fQ1VSU09SIiwiZGF0YSI6eyJyZWRpc0tleSI6ImJ1Z2JvdC1tdWx0aTo2YmVlZTcxMy1jYTQ5LTQyZDItYWYwYy04YTRmMjVlYjFkN2YiLCJlbmNyeXB0aW9uS2V5IjoiZGFtcDFSc2pzeVpCWFVRRjk0QlhoRnMxRFpkNm1QdVEyS0RZd0xlLWt4QSIsImJyYW5jaCI6ImxvY2FsMS8zNDItbmF0aXZlLXRheCIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyJ9fQ" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix All in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a> <!-- /BUGBOT_FIX_ALL --> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_BEGIN --> <sup>Bugbot Autofix is [ON](https://www.cursor.com/dashboard/bugbot). A cloud agent has been kicked off to fix the reported issue. <!-- BUGBOT_AUTOFIX_AGENT_LINK --></sup> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_END --> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 5b2baee0382a61bcb5f95121f9dbfc106645f98a. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-09 07:00:09 +00:00 (Migrated from gitlab.com)

Max reserve omits unwrap gas

Medium Severity

Broadcast gas for router swaps with unwrap_output now includes UNWRAP_GAS_LIMIT, and estimateNativeSwapUlunaFeesTotal can mirror that when needsUnwrapOutput is set, but native Max still builds nativeSwapHints without that flag, so the reserved uluna can be too low on wrap-and-unwrap swap paths.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 5b2baee0382a61bcb5f95121f9dbfc106645f98a. Configure here.

### Max reserve omits unwrap gas **Medium Severity** <!-- DESCRIPTION START --> Broadcast gas for router swaps with `unwrap_output` now includes `UNWRAP_GAS_LIMIT`, and `estimateNativeSwapUlunaFeesTotal` can mirror that when `needsUnwrapOutput` is set, but native Max still builds `nativeSwapHints` without that flag, so the reserved `uluna` can be too low on wrap-and-unwrap swap paths. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 5002b578-7c1c-4b1c-a5c1-102010be87b0 --> <!-- LOCATIONS START frontend-dapp/src/services/terraclassic/transactions.ts#L95-L134 LOCATIONS END --> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA1NDIzMTBjLTVjMWUtNGIzOS04MWZkLTY2NDgxOTQxNTAyMSIsImVuY3J5cHRpb25LZXkiOiIyZkJlVllXdGFpeW5xVmd4OHgwNnMxNGlWZ3hQWTdZZ1VLbUc3dDhab2lrIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA1NDIzMTBjLTVjMWUtNGIzOS04MWZkLTY2NDgxOTQxNTAyMSIsImVuY3J5cHRpb25LZXkiOiIyZkJlVllXdGFpeW5xVmd4OHgwNnMxNGlWZ3hQWTdZZ1VLbUc3dDhab2lrIiwiYnJhbmNoIjoibG9jYWwxLzM0Mi1uYXRpdmUtdGF4IiwicmVwb093bmVyIjoiUGxhc3RpY0RpZ2l0cyIsInJlcG9OYW1lIjoiY2w4eS1kZXgtdGVycmFjbGFzc2ljIiwicHJOdW1iZXIiOjEyOCwiY29tbWl0U2hhIjoiNWIyYmFlZTAzODJhNjFiY2I1Zjk1MTIxZjlkYmZjMTA2NjQ1Zjk4YSIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 5b2baee0382a61bcb5f95121f9dbfc106645f98a. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-09 07:04:38 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 5e48d9d6 - Include unwrap gas in native swap Max reserve

Compare with previous version

added 1 commit <ul><li>5e48d9d6 - Include unwrap gas in native swap Max reserve</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/128/diffs?diff_id=1841284579&start_sha=5b2baee0382a61bcb5f95121f9dbfc106645f98a)
ghost1 commented 2026-06-09 07:04:54 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-09 07:05:28 +00:00 (Migrated from gitlab.com)

resolved all threads

resolved all threads
PlasticDigits commented 2026-06-09 07:07:18 +00:00 (Migrated from gitlab.com)

changed this line in version 5 of the diff

changed this line in version 5 of the diff
PlasticDigits commented 2026-06-09 07:08:52 +00:00 (Migrated from gitlab.com)

added 7 commits

  • 5e48d9d6...f7f56610 - 5 commits from branch main
  • df7f7ac9 - fix(frontend): use post-tax CW20 amounts after native wrap (#342)
  • 07da4904 - Fix native-wrap provide gross deposit and per-denom tax cache

Compare with previous version

added 7 commits <ul><li>5e48d9d6...f7f56610 - 5 commits from branch <code>main</code></li><li>df7f7ac9 - fix(frontend): use post-tax CW20 amounts after native wrap (#342)</li><li>07da4904 - Fix native-wrap provide gross deposit and per-denom tax cache</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/128/diffs?diff_id=1841292609&start_sha=5e48d9d634eb283a7b4cc3ab3fb757ac8658a68c)
ghost1 commented 2026-06-09 07:09:05 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits commented 2026-06-09 07:10:29 +00:00 (Migrated from gitlab.com)

added 6 commits

  • 07da4904...a6c43cab - 5 commits from branch main
  • 5b3f7358 - Fix native-wrap provide gross deposit and per-denom tax cache

Compare with previous version

added 6 commits <ul><li>07da4904...a6c43cab - 5 commits from branch <code>main</code></li><li>5b3f7358 - Fix native-wrap provide gross deposit and per-denom tax cache</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/128/diffs?diff_id=1841295713&start_sha=07da49047aa793bdcabe9385c627c618e0e9c69b)
ghost1 commented 2026-06-09 07:10:45 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits (Migrated from gitlab.com) merged commit b511e77e6a into main 2026-06-09 07:12:13 +00:00
PlasticDigits commented 2026-06-09 07:12:14 +00:00 (Migrated from gitlab.com)

mentioned in commit b511e77e6a

mentioned in commit b511e77e6a2e0231acff1b3c305afef0827af9f2
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
code/cl8y-dex-terraclassic!846
No description provided.