I think the answers are going to be nuanced, and beyond anybody here’s ability to answer with absolute certainty (unless there’s a rogue Mail.app/AppleScript developer lurking in the wings…?
)
Anyway, more specifically:
The make new rule in Sequoia 15.4 successfully set enabled to true in addition to setting variables for name and all conditions must be met .
Not on my machine. Any new rule was disabled by default, which is why I added the line to enable it. True, though, the all conditions must be met flag is honored. 
I suspect, under the hood, there is some default value that’s used and not getting overwritten - although that doesn’t explain why yours defaults to enabled, and mine to disabled.
Setting header to DateSent strangely, set rule condition’s rule type to header key, without explicitly assigning that value to rule type.
OMM, at least, setting a mail rule to header key: “Date Sent” appears in mail.app using the 'Date sent" option, not specific key, so it’s definitely doing something ‘under the hood’ to map the key to the action.
As for the rest of your questions…
- Is the unexplained behavior by Mail arising from the command make new?
According to the dictionary, make is coming from the Standard Suite, so not some Mail.app-specific override.
- Does the Mail make command or more globally, the AS make command, limit itself by syntax or other means to confine assigning limited property variables from a {property:value} AS record?
TBH, I find it inconsistent (or more directly, a crap shoot), so assume there is some level of application integration needed to map the properties to the object. There probably is some rule about it, and I generally prefer to make new objects with their properties directly, but it’s not worked enough that I’ve come to rely on creating a minimal-viable object and setting its properties after the fact, like I did here.
- How does Mail automatically assign the header key value to the rule type property, when the DateSent value is assigned to rule condition’s header property?
See my note above about how ‘Date Sent’ is being re-interpreted. I don’t know if it’s specific to this header (i.e. Apple made a special case for DateSent knowing that it’s likely to be a highly-used key, so they added a special case. I’m not on the Mail.app development team, though, to know for sure.