No, they won't stall or DOS the namecoin chain because that block will be completely ignored by namecoin -- as if it doesn't exist.
Right, but so will the legit block! I think your confusion is due to my OP which was admittedly not very clear at all. Let me try again.
The plan is to do something like the AlternativeChains protocol on the wiki
without the miner's needing to know about it. So this means we must link the namecoin block off another bitcoin TX, not the coinbase.
So the "legitimate" namecoin chain block header will be linked off some bitcoin TX. But the problem is
anyone can add such a "namecoin block header pseudo-TX" to the bitcoin block pointing to whatever they want. Remember,
miners have no idea what is going on, and in particular they are not verifying namecoin for us. So there must be some way to distinguish the "winning" branch from all the others.
The point of the OP is the only way I can see to do this is for the "honest" namecoin participants to add a large TX fee to their favored "namecoin block-header pseudo-TX", and decide the "winning" branch is the one with largest TX fee. This has a problem though in that malicious people can just arbitrarily bid up the TX fee knowing honest namecoin participants will try to outbid them...
To reiterate:
The proposed structure is
Bitcoin Block
->Some bitcoin TX
-> IAMANAMECOIN magic string
-> hash of namecoin block header
But because we are just sticking data in transactions, anyone can do this, and we could end up with this picture if anyone decides to add such a tx for fun:
Bitcoin Block
->Some bitcoin TX
-> IAMANAMECOIN magic string
-> hash of namecoin block header
->Some other bitcoin TX
-> IAMANAMECOIN magic string
-> hash of another namecoin block header
It's not a problem. I'm not sure how I can more clearly explain why it's not, but it's not.
Imagine if someone generated a bitcoin block and revealed the headers but not the transactions. Everyone would simply act as if that block didn't exist. Sure, someone who has the transactions could extend that chain all by themselves, but it doesn't matter, the public chain will outpace them.
All of the things you are worrying about are non-issues. If you have any suspicions about a block, ignore it. So long as everyone follows the same rules, the chain ignoring the suspect blocks will outpace the chain with them.
If someone adds a namecoin block to the bitcoin chain, it will be honored as a namecoin block if, and only if, it follows all the namecoin rules to perfection. If so, it cannot hurt anything because it follows all the rules. If not, it cannot hurt anything because it will be ignored.
So long as more than 50% of the hashing power follows the agreed-upon rules, the rightful chain will always outpace any other chains. If less than 50% of the hashing power follows the rules, you are screwed no matter what.
Or, to put it another way, any mined block will either eventually wind up in the public hash chain or it won't. If it doesn't, then who cares what rules it follows or breaks? It will be ignored anyway. If so, it must eventually convince the majority of the hashing power that it follows the rules.
The problem is there is no "50% of hashing power" because the whole point of this scheme is that
the hashing power/miners have absolutely no idea what is being stored, and hence are not actually verifying anything beyond the blocks they form are valid BITCOIN blocks. In particular, they are NOT checking that the links to namecoin blocks are valid, because they don't even know what they are or that they are there.