Requirements for precision tuning to work

Hello All,

Recently I've been trying to make App Search working on an existing index (and modifying the mapping accordingly) , but I am not sure if I understand the process correctly.
I would be very pleased if you could answer my questions.

  1. If I want to use Precision tuning, do I need to add all listed subfields under the specific text field or can I add only the ones that seems relevant to my use case, eg. prefix only?
  2. If I add a subfield named 'prefix' type 'text' under a keyword field - does that mean it will not work with App Search and won't make any difference in search results?
  3. Do I have to add those subfields to all text fields or only the ones that I plan on use for search?

I have few large indexes that I would rather modify to work with App Search instead of creating separate ones only for that purpose. The main reason is that they are recreated every night to be up-to-date.
I store almost all the fields as keyword and add multi-fields to the ones I need more flexibility and doing search on them, so some of the fields has subfields for suggester etc.

I have created a test App Search Engine with a generic json as data and took a look into the mapping to see how it looks like. Then I added just the prefix subfield and relevant analyzers and filter to my own index, created new Engine and tested, and the results seems to be not exactly as I would like to see them.
The mapping looks like this:

"some_field": {
    "properties": {
      "value": {
        "type": "keyword",
        "normalizer": "lowercase",
        "fields": {
          "prefix": {
            "type": "text",
            "index_options": "docs",
            "analyzer": "i_prefix",
            "search_analyzer": "q_prefix"
          }
        }
      }
    }
  }

I hope you can help me a bit, I just need a point in a direction, before I take any more action to find working strategy.

Thanks and have a great day all!