I am sorry, but I think you misunderstood the approaches I´ve outlined.
In the first you would create a new record via INSERT/UPDATE trigger in another OR the same relation - it does not matter where. You would then still return the original record, which would continously be edited, while the updated version of this 1 record is continously written away on change - to the same relation if you prefer.
In the second approach, you would create a new record inside an INSERT trigger but do nothing else, then (when the form loads the original record), forward the user to the newly created record via frontend function.
In neither case, would you try to return a different record in the trigger function.