I haven't thought of a solution, but here's a way of factoring the problem.
I assume $G$ is finite. Every directed graph can be factored into a DAG of strongly connected components (SCCs) by (IIRC) Tarjan's algorithm.
Pick a vertex $v$ in some root SCC $C$ (i.e. $C$ has in-degree 0 in the DAG of SCCs) where $|C| \geq 2$. If $v$ is activated some in-neighbor must also be activated. But it too must have an activated in-neighbor, etc., and this regress is either infinite, contradicting my assumption that $G$ is finite, or form a cycle, which as far as I understand is ruled out.
So any such $C$ can be eliminated: no vertex in it can be activated.
A non-root SCC $D$ can inductively be eliminated if all the SCCs $C_1, \ldots, C_k$ with edges to $D$ have been thus eliminated: it is a root in the reduced graph.
Maybe it's then possible to solve the remaining SCCs one by one, and combining their solutions using dynamic programming on the DAG of SCCs.
Then again, I'm not sure I fully understand the problem. Given a 3SAT instance, consider the following graph:
Have three vertices per variable, $y_i$, $t_i$, $f_i$, each having activation requirement $0$, with edges $(y_i, t_i)$ and $(y_i, f_i)$.
For each clause, have a vertex $c_j$ with in-edges from $t_i$ for every variable $x_i$ occurring positively in clause $j$ and from $f_i$ for every variable occurring negatively in the clause. Each clause vertex has activation requirement 1.
Have one vertex $\varphi$ for the formula value, with in-edges from every clause and with activation requirement equal to the number of clauses.
This is almost complete: given a 3SAT instance, add a clause $(x_i \lor \lnot x_i)$ for every variable, then perform the above reduction.
This requires either $t_i$ or $f_i$ to be satisfied (uh, activated) for every variable $x_i$. If the 3SAT instance is satisfiable then some such activation plus a choice of edges into clauses and into the formula gives an edge-minimal way of meeting all activation requirements. If it is not satisfiable, some variable has to be both true and false to satisfy the activation requirements.
3SAT can not be solved in polynomial time (with e.g. dynamic programming) unless P = NP, so I don't quite follow what the dynamic programming solution is. But maybe that's because I misunderstood the problem.
Maybe you can add a loop from $\varphi$ to each $y_i$ to make this construction strongly connected, and give each $y_i$ an incoming activation requirement of 1.
Like I said, I don't quite understand the problem but I hope some of these ideas are helpful.