I think you should do this with streams, not assets. Each contract under proposal can be published in one stream. A second stream is used to collect approvals, where each stakeholder indicates their approval in a stream item, which makes reference (e.g. via its stream item key) to the proposed contract.