Workflow ignoring execution conditions

I have been following the documentation for dynamic configuration in Using dynamic configuration - CircleCI

I have a job that I want to run only if its folder contents have been modified . Despite this condition, the job runs for every commit no matter where the change has been made .

My config.yml

version: 2.1

setup: true

orbs:
  path-filtering: circleci/path-filtering@0.0.2



workflows:
  setup:
    jobs:
      - path-filtering/filter:
          name: path_filter
          base-revision: master
          mapping: |
            ops/.* ops-modified true
          config-path: .circleci/workflows.yml
          filters:
            tags:
              only: /.*/

My workflows.yml ( only info important for the question)

orbs:

#some orbs defined

parameters:

  ops-modified:
    type: boolean
    default: true

workflows:

 ops-workflow:
    when: << pipeline.parameters.ops-modified>>
    jobs:
    
    #job logic


The ops folder is at the root project level . It seems that the ops-modified parameter is either being ignored everytime or being set to true despite no change being made. Any ideas ?

Circleci has a ‘feature’

To filter on a tag you must first have done a branch check so

          filters:
            tags:
              only: /.*/

becomes

          filters:
            tags:
              only: /.*/
            branches:
              ignore: /.*/