Should we define rules on how input can be fed into programs? This question on SO allowed for any input method, which resulted in answers which ripped off the question by doing the computation in macros for example. We should aim to prevent this abuse.
I think we should leave the decision up to the particular CodeGolf... BUT, we should ask that questions are clear on the issue.
Seems to me that there are two major types of CodeGolf: Those that want complete working programs that match some input/output criteria; and those that want a function that computes the result.
In the first case, we should ask that the input/output formatting be well specified (it can still admit variation, but exactly how much variation should be clear.) Further, such CodeGolfs should be free to spec that the input is from stdin, or from a file, or from command line. Just so long as it is clear.
In the second case, usually the input/output to the function is meant to be "whatever is natural in the language". This can lead to some abuse, so I imagine that these CodeGolfs have some amount of leeway on the judging.
Personally, I much prefer the first kind, but I see no reason to enforce that as the only style. Some CodeGolfs want a program to meet
The standard should be standard input and standard ouput (hey, they're standard!), unless the question explicit states something else.
The SO question you linked to states clearly that the method of input can be anything:
How to take the input totally depends on you.
Given this, I wouldn't call it an abuse.