I pay for a ticket to Oxford only to be gutted by reading "Cancelled due to a planned cancellation by the operator".
The phrase "planned cancellation" is slightly misleading in this case. 6M26 on the 26th shows cancelled on an "FL" code which means TRAIN CANCELLED AT FOC'S REQUEST OR PLANNED NOT TO RUN. From Network Rail's perspective, FL basically means "not required" i.e. the freight operator did not require the service to run - this might be known in advance (if a train was shown as cancelled in the weekly plan) but it can also be a last minute cancellation.
FL is a very commonly used generic code for cancelled freight trains, and the only real conclusion you can draw from it is that the cancellation is not being blamed on a Network Rail issue (like an infrastructure fault) that prevented the train from running. The exact reason behind an FL cancellation is often not recorded in TRUST, as there's no dispute to investigate in the delay attribution process between Network Rail and the freight operating company, and no particular reason to make the exact cancellation reason public (unlike passenger trains).
The infrastructure trips serving the Network Rail local distribution centres (such as this "bulk ballast" working) are planned by Network Rail, who send out daily "Network wires" detailing what each service is supposed to be conveying, e.g. 20 falcons of spoil, or in this case an empty bulk ballast set of IOA "Mussel" wagons. I think the services themselves are planned on a weekly basis (i.e. the trains planned to run are decided the week before) with some of them running "as required" (like 6M26) and others being regular daily trips that generally run unless it's known in advance that both legs of a return trip will not be required.
6M26 was planned to run on these wires, but for some reason was cancelled shortly before departure. If 66791 was shown on RTT, it suggests the train was consisted in TOPS. It's also a "manual call" schedule that would normally only be activated if it was expected to run. Incidentally, I like the fact that the word "wire" - as in information sent by telegraph wire - is still in use in the days when such things are sent by email!
When a freight train is cancelled FL that was planned to run, it can be due to issues with the freight operating company (like a failed loco or a driver going sick) but can often be a customer issue. For example, if you went to Barnetby to see the iron ore and biomass trains, even if you had a copy of the planned workings for that week, the trains are subject to the knock-on impacts of disruption at the terminals themselves. For example the docking of a ship is delayed due to a storm, the conveyor belts that move the material to the loading silo have a fault, a piece of machinery breaks down. There could be similar problems at the location where the train offloads that stops them accepting trains... any number of things that are not a Network Rail problem can end up with a cancellation that ultimately gets recorded as "FL." With 6M26, Network Rail are both the customer for the train and the infrastructure operator, which slightly confuses things, but if Network Rail cancelled it as a customer (for example if the 'virtual quarry' where the stone would end up has not used as much stone as expected over the weekend and says they wouldn't be able to offload it) that would still probably go down as "FL" - not required to run.
With freight trains, the phrase "planned cancellation" I associate more with the PD code (SYSTEM GENERATED CANCELLATION) already mentioned. For example, if the entire Northampton loop is blocked due to weekend engineering work, WTT freight schedules from Daventry will have a type of variation input in advance by Network Rail planners which cancels the train, so that the schedule type will show as CAN instead of WTT. The train physically cannot run and the schedule cannot be activated. This is a bit different from cases where the train could run, but isn't planned to run. Schedules for freight trains which aren't planned to run are usually left in place (they might potentially be used at short notice instead of a VSTP path) rather than being shown in advance as a planned cancellation. If the schedule is set up as "manual call" (i.e. it won't activate itself automatically) and wasn't planned to run, it will just never be activated in TRUST. If the schedule is "auto call" it means it will automatically activate in the system (usually 2 or 3 hours before departure time) and then requires cancelling manually in TRUST... generally with an FL code.