Unable to validate, pack and submit a config-only app

My app is a config-only app. So it does not need any location in the manifest.json file.
Also, it does not require an app / server folder.

There are multiple issues with this kind of an app.

1. fdk validate expects manifest.json to contain location
I get the following error when i try to fdk validate my app.

2. fdk validate expects app to contain either app / server folder
The second error is that it expects an app / server folder, which does not exist for my use-case.
My app is a config-only app. So, it only contains a config folder.

In order to overcome these errors, I’m forced to:

  1. Add a dummy placeholder in manifest.json
  2. Create an app folder with a template.html and use the template.html in the manifest.json file.
{
  "platform-version": "2.0",
  "product": {
    "freshchat": {
      "location": {
        "conversation_background": {
          "url": "template.html"
        }
      }
    }
  }
}

3. My app gets rejected immediately after submission because it lacks code coverage
I understand that code coverage is applicable only for apps with app / server folder.
However, my app neither has an app, nor a server component to it. It is a config-only app.
So, the coverage folder never gets generated when I do fdk run or fdk validate or fdk test or fdk pack.

In order to overcome this, I ended up adding an app.js file in my template.hmtl

<html>
  <head></head>
  <body>
    <script src="app.js"></script>
  </body>
</html>

My app.js file contains only a comment

// No content in this file. It's a dummy file.

Now, I’m successfully able to hack the coverage requirements. :smile:
And am able to submit the app for review.

=============================== Coverage summary ===============================
Statements   : 100% ( 0/0 )
Branches     : 100% ( 0/0 )
Functions    : 100% ( 0/0 )
Lines        : 100% ( 0/0 )
================================================================================

Request you to review the requirements for mandatory location, mandatory app/server folder and mandatory coverage.
They no longer serve the purpose they were intend to serve.

Regards,
Arun Rajkumar