yanghengtang / pe

0 stars 0 forks source link

Settle Payment Transaction can be freely edited #3

Open yanghengtang opened 11 months ago

yanghengtang commented 11 months ago

Settle transaction with Alex Yeoh will look like

Screenshot 2023-11-17 at 4.51.35 PM.png

However we can edit a settle transaction with editTransaction 1 d=random text c=742.28

Screenshot 2023-11-17 at 4.55.16 PM.png

This could allow the users to easily distort any settlement payment.

A planned enhancement could be:

  1. Disallowing the edit of description for a settlement transaction
  2. Only allowing the change in amount to an amount not exceeding the current outstanding amount

This will ensure users do not accidentally disrupt their settlement transaction

nus-se-bot commented 11 months ago

Team's Response

We are classifying this as NotInScope as we think there may be use cases for allowing edits to settle transactions. Allowing edits to be made would also be useful in events where the repayment process was not made in full, e.g. they owe $20.05, but did not have a $0.05 coin when settling the balance, so they only paid $20. Hence allowing edits to the cost increases usability.

In general, a settle transaction is not treated as a special type of transaction by our application. Entering settlePerson xinto our application is equivalent to entering addTransaction n=person-you-are-settling-balance-with c=current-balance n=Self w=1. The settlePerson command is simply an easier way to do so. Thus, transactions generated by settlePerson are bound by the same rules and constraints as any other transaction in the application, and can be duplicated and edited accordingly.

In fact, a settle transaction can be edited to be a different transaction entirely, by changing the name, cost, and payers involved.

Items for the Tester to Verify

:question: Issue response

Team chose [response.NotInScope]

Reason for disagreement: [replace this with your explanation]