I don't know what the "official OpenACS standard" for contrib material
is either, but my suggestion would be a 'diff -uNr' between the
original current release tree (3.2.5 as of now) and the tree with the
contributed material applied.
This also makes rolling contrib material into the distributiion at a
later time straightforward.
So, FWIW, my recommendation would be that the ad_page_contract
contribution would be in the form of a single .patch file created
by 'diff-uNr', which includes patches so that the contributed material
does not (knowingly!) break any other part of OpenACS.