Seems I can't reproduce your problem:
[mstr] serge@cyberlab:~/tmp/ansible-test$ tree
.
├── aws-configure.yml
├── aws-provision.yml
├── inventory
│ ├── ec2.py-output.json
│ └── group_vars
│ └── tag_env_test.yml
├── README.md
└── vars
├── aws_secrets.yml
└── aws_vars.yml
3 directories, 7 files
[mstr] serge@cyberlab:~/tmp/ansible-test$ ANSIBLE_NOCOWS=1 ansible-playbook -i inventory aws-configure.yml
PLAY [!local;tag_role_db:&tag_status_new] *************************************
TASK: [debug var=groups['tag_env_test']] **************************************
ok: [54.x] => {
"groups['tag_env_test']": [
"54.x"
]
}
TASK: [debug var={{ region }}] ************************************************
ok: [54.x] => {
"eu-west-1": "eu-west-1"
}
PLAY RECAP ********************************************************************
54.x : ok=2 changed=0 unreachable=0 failed=0
Tested with ansible 1.7.2, 1.8.2 and latest devel.