user1983: Regarding plutus-apps Auction use-case plutus-use-cases/src/Plutus/Contracts/Auction.hs , both auctionSeller and auctionBuyer need to specify the same exact params, or else each buyer could change the auction deadline!  What exactly stops the buyer contract from doing so?

user6089: In a way, you are (but aren't) correct since auctionSeller and auctionBuyer could be used to arbitrarily declare params. However, these functions don't run on-chain, they are client-side code for preparing the structure to be submitted for placing a bid.
The on-chain validation is in the "auctionTransition" function which accepts the bid, or payout. Both these inputs don't even accept a deadline or token type value so it isn't possible for them to change the state in that way. Otherwise, the token and deadline are immutable, so they cannot be changed.

1983: <p>Regarding plutus-apps Auction use-case <a href="https://github.com/input-output-hk/plutus-apps/blob/7f53f18dfc788bf6aa929f47d840efa1247e11fd/plutus-use-cases/src/Plutus/Contracts/Auction.hs" rel="nofollow noreferrer">plutus-use-cases/src/Plutus/Contracts/Auction.hs</a> , both <a href="https://github.com/input-output-hk/plutus-apps/blob/7f53f18dfc788bf6aa929f47d840efa1247e11fd/plutus-use-cases/src/Plutus/Contracts/Auction.hs#L215" rel="nofollow noreferrer">auctionSeller</a> and <a href="https://github.com/input-output-hk/plutus-apps/blob/7f53f18dfc788bf6aa929f47d840efa1247e11fd/plutus-use-cases/src/Plutus/Contracts/Auction.hs#L346" rel="nofollow noreferrer">auctionBuyer</a> need to specify the same exact params, or else each buyer could change the auction deadline!  What exactly stops the buyer contract from doing so?</p>
 6089: <p>In a way, you are (but aren't) correct since auctionSeller and auctionBuyer could be used to arbitrarily declare params. However, these functions don't run on-chain, they are client-side code for preparing the structure to be submitted for placing a bid.</p>
<p>The on-chain validation is in the &quot;auctionTransition&quot; function which accepts the bid, or payout. Both these inputs don't even accept a deadline or token type value so it isn't possible for them to change the state in that way. Otherwise, the token and deadline are immutable, so they cannot be changed.</p>
