Expecting Postgresql WAL to shrink in size but it's not
It looks at "max_wal_size" to decide if WAL freed up by the just-finished checkpoint should be recycled or deleted.  But WAL files that have already been recycled (renamed in anticipation of future re-use) in prior checkpoints while "max_wal_size" was high will not get deleted when "max_wal_size" is lowered.  They will eventually work their way out of the system as they get reused and then deleted (rather then recycled again).

If you can't wait for that to happen, you will have to delete them manually, which is a rather perilous thing to do--if you mess it up you will destroy your database.