skilldrop-cli 0.16.28 → 0.16.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/bin/skilldrop.js +160 -33
  2. package/catalogue.json +7 -3
  3. package/model-routing.json +16 -0
  4. package/package.json +1 -1
  5. package/packs/ai-engineering/skills/mcp-pairing/SKILL.md +93 -0
  6. package/packs/ai-engineering/skills/mcp-pairing/evals/eval_queries.json +13 -0
  7. package/packs/ai-engineering/skills/mcp-pairing/evals/evals.json +76 -0
  8. package/packs/ai-engineering/skills/mcp-pairing/evals/files/2/mcp.json +32 -0
  9. package/packs/ai-engineering/skills/mcp-pairing/evals/files/4/.mcp.json +47 -0
  10. package/packs/ai-engineering/skills/mcp-pairing/evals/files/4/docs/pr-loop.md +12 -0
  11. package/packs/ai-engineering/skills/mcp-pairing/evals/files/5/docs/oncall-triage.md +18 -0
  12. package/packs/ai-engineering/skills/mcp-pairing/examples/build-loop-github-jira-datadog.md +69 -0
  13. package/packs/ai-engineering/skills/mcp-pairing/manifest.json +17 -0
  14. package/packs/ai-engineering/skills/mcp-pairing/reference.md +136 -0
  15. package/packs/ai-engineering/skills/mcp-pairing/templates/mcp-pairing.md +43 -0
  16. package/packs/data-analytics/loops/measure/LOOP.md +118 -0
  17. package/packs/data-analytics/loops/measure/evals/eval_queries.json +9 -0
  18. package/packs/data-analytics/loops/measure/evals/evals.json +28 -0
  19. package/packs/data-analytics/loops/measure/loop.json +41 -0
  20. package/packs/dev-team/loops/build/LOOP.md +4 -2
  21. package/packs/dev-team/loops/build/loop.json +2 -2
  22. package/packs/dev-team/skills/codebase-tour/SKILL.md +115 -0
  23. package/packs/dev-team/skills/codebase-tour/evals/eval_queries.json +13 -0
  24. package/packs/dev-team/skills/codebase-tour/evals/evals.json +77 -0
  25. package/packs/dev-team/skills/codebase-tour/evals/files/1/.github/workflows/ci.yml +23 -0
  26. package/packs/dev-team/skills/codebase-tour/evals/files/1/README.md +23 -0
  27. package/packs/dev-team/skills/codebase-tour/evals/files/1/openapi.yaml +21 -0
  28. package/packs/dev-team/skills/codebase-tour/evals/files/1/package-lock.json +7 -0
  29. package/packs/dev-team/skills/codebase-tour/evals/files/1/package.json +29 -0
  30. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/config.ts +20 -0
  31. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/domain/shipments/filter.ts +24 -0
  32. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/domain/shipments/repository.ts +15 -0
  33. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/errors.ts +9 -0
  34. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/generated/api-types.ts +9 -0
  35. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/http/handlers/shipments.ts +38 -0
  36. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/http/routes.ts +7 -0
  37. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/jobs/export-shipments.ts +22 -0
  38. package/packs/dev-team/skills/codebase-tour/evals/files/1/src/server.ts +18 -0
  39. package/packs/dev-team/skills/codebase-tour/evals/files/1/tests/domain/filter.test.ts +16 -0
  40. package/packs/dev-team/skills/codebase-tour/evals/files/1/tests/http/shipments.test.ts +18 -0
  41. package/packs/dev-team/skills/codebase-tour/evals/files/1/tsconfig.json +10 -0
  42. package/packs/dev-team/skills/codebase-tour/evals/files/1/vitest.config.ts +5 -0
  43. package/packs/dev-team/skills/codebase-tour/evals/files/2/.github/workflows/ci.yml +16 -0
  44. package/packs/dev-team/skills/codebase-tour/evals/files/2/README.md +16 -0
  45. package/packs/dev-team/skills/codebase-tour/evals/files/2/noxfile.py +14 -0
  46. package/packs/dev-team/skills/codebase-tour/evals/files/2/pyproject.toml +22 -0
  47. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/__init__.py +3 -0
  48. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/_version.py +4 -0
  49. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/cli.py +32 -0
  50. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/detect.py +15 -0
  51. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/errors.py +2 -0
  52. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/money.py +14 -0
  53. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/parsers/__init__.py +8 -0
  54. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/parsers/acme.py +18 -0
  55. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/parsers/base.py +24 -0
  56. package/packs/dev-team/skills/codebase-tour/evals/files/2/src/ledgerline/parsers/harbor.py +13 -0
  57. package/packs/dev-team/skills/codebase-tour/evals/files/2/tests/fixtures/acme_sample.csv +3 -0
  58. package/packs/dev-team/skills/codebase-tour/evals/files/2/tests/test_acme.py +23 -0
  59. package/packs/dev-team/skills/codebase-tour/evals/files/2/tests/test_detect.py +13 -0
  60. package/packs/dev-team/skills/codebase-tour/evals/files/3/.github/workflows/ci.yml +28 -0
  61. package/packs/dev-team/skills/codebase-tour/evals/files/3/Makefile +16 -0
  62. package/packs/dev-team/skills/codebase-tour/evals/files/3/README.md +16 -0
  63. package/packs/dev-team/skills/codebase-tour/evals/files/3/cmd/tidepool/main.go +24 -0
  64. package/packs/dev-team/skills/codebase-tour/evals/files/3/go.mod +5 -0
  65. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/config/config.go +38 -0
  66. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/dispatch/dispatcher.go +52 -0
  67. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/dispatch/dispatcher_test.go +42 -0
  68. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/dispatch/sender.go +32 -0
  69. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/replay/replay.go +31 -0
  70. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/store/db.go +35 -0
  71. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/store/query.sql +11 -0
  72. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/store/query.sql.go +30 -0
  73. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/store/schema.sql +6 -0
  74. package/packs/dev-team/skills/codebase-tour/evals/files/3/internal/store/store_integration_test.go +21 -0
  75. package/packs/dev-team/skills/codebase-tour/evals/files/3/sqlc.yaml +9 -0
  76. package/packs/dev-team/skills/codebase-tour/evals/files/4/.env.example +4 -0
  77. package/packs/dev-team/skills/codebase-tour/evals/files/4/.github/workflows/ci.yml +16 -0
  78. package/packs/dev-team/skills/codebase-tour/evals/files/4/Makefile +16 -0
  79. package/packs/dev-team/skills/codebase-tour/evals/files/4/README.md +23 -0
  80. package/packs/dev-team/skills/codebase-tour/evals/files/4/data/rates.csv +4 -0
  81. package/packs/dev-team/skills/codebase-tour/evals/files/4/pyproject.toml +19 -0
  82. package/packs/dev-team/skills/codebase-tour/evals/files/4/scripts/gen_rates.py +29 -0
  83. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/__init__.py +0 -0
  84. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/api/__init__.py +0 -0
  85. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/api/preview.py +14 -0
  86. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/api/routes.py +36 -0
  87. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/config.py +15 -0
  88. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/discounts.py +8 -0
  89. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/generated/__init__.py +0 -0
  90. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/generated/rates_table.py +8 -0
  91. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/main.py +8 -0
  92. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/shipping.py +18 -0
  93. package/packs/dev-team/skills/codebase-tour/evals/files/4/src/shipcalc/tax.py +7 -0
  94. package/packs/dev-team/skills/codebase-tour/evals/files/4/tests/conftest.py +3 -0
  95. package/packs/dev-team/skills/codebase-tour/evals/files/4/tests/unit/test_discounts.py +11 -0
  96. package/packs/dev-team/skills/codebase-tour/evals/files/4/tests/unit/test_tax.py +13 -0
  97. package/packs/dev-team/skills/codebase-tour/evals/files/5/.env.example +3 -0
  98. package/packs/dev-team/skills/codebase-tour/evals/files/5/.github/workflows/ci.yml +13 -0
  99. package/packs/dev-team/skills/codebase-tour/evals/files/5/README.md +18 -0
  100. package/packs/dev-team/skills/codebase-tour/evals/files/5/package.json +13 -0
  101. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/openapi.json +30 -0
  102. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/package.json +15 -0
  103. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/db.js +19 -0
  104. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/flags.js +8 -0
  105. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/generated/schema.js +32 -0
  106. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/middleware/validate.js +20 -0
  107. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/routes/bookings.js +15 -0
  108. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/server.js +15 -0
  109. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/services/bookings.js +23 -0
  110. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/src/services/pricing.js +9 -0
  111. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/api/test/pricing.test.js +15 -0
  112. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/web/package.json +9 -0
  113. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/web/src/bookingForm.js +11 -0
  114. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/web/src/format.js +7 -0
  115. package/packs/dev-team/skills/codebase-tour/evals/files/5/packages/web/test/format.test.js +12 -0
  116. package/packs/dev-team/skills/codebase-tour/evals/files/5/scripts/gen-schema.mjs +27 -0
  117. package/packs/dev-team/skills/codebase-tour/examples/refund-window.md +158 -0
  118. package/packs/dev-team/skills/codebase-tour/manifest.json +47 -0
  119. package/packs/dev-team/skills/codebase-tour/scripts/repo_facts.py +403 -0
  120. package/packs/dev-team/skills/codebase-tour/templates/codebase-tour.md +85 -0
  121. package/packs/dev-team/skills/dependency-upgrade-review/SKILL.md +101 -0
  122. package/packs/dev-team/skills/dependency-upgrade-review/evals/eval_queries.json +11 -0
  123. package/packs/dev-team/skills/dependency-upgrade-review/evals/evals.json +77 -0
  124. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/.github/workflows/ci.yml +20 -0
  125. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/pr.diff +87 -0
  126. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/quillmark-CHANGELOG.md +24 -0
  127. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/src/render/comment.js +6 -0
  128. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/src/render/note.js +8 -0
  129. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/1/test/note.test.js +12 -0
  130. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/2/.github/workflows/ci.yml +23 -0
  131. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/2/.github/workflows/release.yml +23 -0
  132. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/2/pr.diff +32 -0
  133. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/2/release-notes.md +20 -0
  134. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/.github/workflows/ci.yml +18 -0
  135. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/Dockerfile +8 -0
  136. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/PR.md +36 -0
  137. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/pr.diff +47 -0
  138. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/src/ingest/client.py +24 -0
  139. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/src/ingest/reader.py +32 -0
  140. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/tests/test_reader.py +15 -0
  141. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/4/upstream/quillstream-CHANGELOG.md +37 -0
  142. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/.github/workflows/ci.yml +22 -0
  143. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/.github/workflows/release.yml +25 -0
  144. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/.nvmrc +1 -0
  145. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/PR-412.md +16 -0
  146. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/PR-413.md +15 -0
  147. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/package.json +21 -0
  148. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/pr-412.diff +26 -0
  149. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/pr-413.diff +84 -0
  150. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/scripts/release.mjs +18 -0
  151. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/upstream/release-notary-CHANGELOG.md +16 -0
  152. package/packs/dev-team/skills/dependency-upgrade-review/evals/files/5/upstream/setup-toolchain-RELEASES.md +22 -0
  153. package/packs/dev-team/skills/dependency-upgrade-review/examples/inputs/ledgerline.diff +38 -0
  154. package/packs/dev-team/skills/dependency-upgrade-review/examples/ledgerline-tidyparse.md +91 -0
  155. package/packs/dev-team/skills/dependency-upgrade-review/manifest.json +50 -0
  156. package/packs/dev-team/skills/dependency-upgrade-review/reference.md +99 -0
  157. package/packs/dev-team/skills/dependency-upgrade-review/scripts/upgrade_diff.py +718 -0
  158. package/packs/grc/loops/comply/LOOP.md +133 -0
  159. package/packs/grc/loops/comply/evals/eval_queries.json +9 -0
  160. package/packs/grc/loops/comply/evals/evals.json +30 -0
  161. package/packs/grc/loops/comply/loop.json +54 -0
  162. package/packs/product-manager/loops/discover/LOOP.md +5 -4
  163. package/packs/product-manager/loops/discover/loop.json +2 -2
  164. package/packs/product-manager/skills/feedback-synthesis/SKILL.md +182 -0
  165. package/packs/product-manager/skills/feedback-synthesis/evals/eval_queries.json +46 -0
  166. package/packs/product-manager/skills/feedback-synthesis/evals/evals.json +76 -0
  167. package/packs/product-manager/skills/feedback-synthesis/evals/files/1/interview-notes.md +47 -0
  168. package/packs/product-manager/skills/feedback-synthesis/evals/files/1/nps-verbatims.csv +13 -0
  169. package/packs/product-manager/skills/feedback-synthesis/evals/files/1/support-tickets.csv +36 -0
  170. package/packs/product-manager/skills/feedback-synthesis/evals/files/3/churn-exit-survey.csv +11 -0
  171. package/packs/product-manager/skills/feedback-synthesis/evals/files/3/sales-call-notes.md +55 -0
  172. package/packs/product-manager/skills/feedback-synthesis/evals/files/4/csat_comments_q3.csv +17 -0
  173. package/packs/product-manager/skills/feedback-synthesis/evals/files/4/support_tickets_q3.csv +49 -0
  174. package/packs/product-manager/skills/feedback-synthesis/evals/files/5/app_reviews_last_60_days.csv +32 -0
  175. package/packs/product-manager/skills/feedback-synthesis/evals/files/5/interview_notes_round1.md +48 -0
  176. package/packs/product-manager/skills/feedback-synthesis/examples/booking-app-feedback.md +139 -0
  177. package/packs/product-manager/skills/feedback-synthesis/examples/inputs/booking-app-coded.csv +17 -0
  178. package/packs/product-manager/skills/feedback-synthesis/manifest.json +53 -0
  179. package/packs/product-manager/skills/feedback-synthesis/reference.md +89 -0
  180. package/packs/product-manager/skills/feedback-synthesis/scripts/theme_counts.py +355 -0
  181. package/packs/product-manager/skills/feedback-synthesis/templates/coding-sheet.csv +6 -0
  182. package/packs/product-manager/skills/feedback-synthesis/templates/synthesis.md +42 -0
  183. package/packs/research/loops/research/LOOP.md +123 -0
  184. package/packs/research/loops/research/evals/eval_queries.json +9 -0
  185. package/packs/research/loops/research/evals/evals.json +39 -0
  186. package/packs/research/loops/research/loop.json +35 -0
@@ -0,0 +1,47 @@
1
+ # Tallyhouse customer interviews, Q3 2026
2
+
3
+ Notes by the product team. Text in quotation marks is what the customer said, word for word.
4
+ Everything else is the interviewer's summary.
5
+
6
+ ## I-1 — owner, small bookkeeping practice (account A-1042, Growth, UK, customer 3 years)
7
+
8
+ - Sends about 120 invoices a month for 40 clients.
9
+ - The CSV export is the thing she brought up first. Her accountant's software (Ledgerline)
10
+ only imports dates as DD/MM/YYYY, so every month she reformats the export in a spreadsheet.
11
+ "It's an hour of my life every month and I've told you six times."
12
+ - Says she has looked at two competitors but "moving 40 clients is a pain, so I haven't".
13
+ - Loves the automatic reminders: "The reminders are the reason I'm still here, honestly."
14
+
15
+ ## I-2 — studio manager, design agency (account A-1260, Pro, UK, customer 2 years)
16
+
17
+ - 58 recurring monthly invoices for retainer clients.
18
+ - When the agency raised day rates in July she edited every recurring invoice by hand.
19
+ "When we raised day rates in July I had to open 58 recurring invoices one at a time. Took
20
+ most of a Friday."
21
+ - Asked for bulk edit. When asked how often rates change: once or twice a year, plus
22
+ one-off changes when a client renegotiates.
23
+ - Reminders: "I don't chase anyone any more."
24
+
25
+ ## I-3 — finance lead, consultancy (account A-1315, Pro, NL, customer 1 year)
26
+
27
+ - Most clients are in the Netherlands and Belgium and pay by card.
28
+ - Since mid-July card payments fail for some clients with an authentication error.
29
+ "Two clients gave up and paid by bank transfer three weeks late."
30
+ - Has not found a pattern in which clients fail. Thinks it is "the banks with the app
31
+ approval step", but is not sure.
32
+ - Would leave if it isn't fixed by year end: "Getting paid is the whole point of the product."
33
+
34
+ ## I-4 — sole trader, electrician (account A-1402, Starter, US, customer 2 months)
35
+
36
+ - Mostly uses the iPhone app on site.
37
+ - Receipt photo upload crashed once in his first week; worked after an app update.
38
+ - Happy so far. On price: "It's fine for now, I only send a few invoices."
39
+ - No other problems raised. Interview was short (15 minutes).
40
+
41
+ ## I-5 — co-founder, marketing agency (account A-1188, Growth, IE, customer 2 years)
42
+
43
+ - Likes the reminders but one went to a client's former finance contact after she had
44
+ updated the contact. "It went to someone who left in March. My client forwarded it to me,
45
+ which was mortifying."
46
+ - Price: "Growth went up from 39 to 49 a month and nobody told us why."
47
+ - Also mentioned the CSV export puts first and last name in one column (she raised a ticket).
@@ -0,0 +1,13 @@
1
+ response_id,score,plan,comment
2
+ N-01,9,Growth,"Automatic reminders mean I actually get paid on time now."
3
+ N-02,8,Starter,"Would love a dark mode."
4
+ N-03,3,Starter,"Price went up by almost half. Looking at alternatives."
5
+ N-04,10,Pro,"Reminders alone are worth the money."
6
+ N-05,7,Growth,"Dark mode please!"
7
+ N-06,2,Pro,"Half my German clients can't pay by card. Fix this or we leave."
8
+ N-07,9,Starter,"The mobile app is great for snapping receipts on the go."
9
+ N-08,6,Growth,"Logo on invoices looks blurry."
10
+ N-09,10,Growth,"Clients pay faster since we switched, the reminders do the chasing for me."
11
+ N-10,7,Starter,"Add dark mode."
12
+ N-11,4,Starter,"Too expensive now for what it does."
13
+ N-12,10,Pro,"Does everything we need."
@@ -0,0 +1,36 @@
1
+ ticket_id,account_id,plan,region,created,subject,description
2
+ T-2001,A-1042,Growth,UK,2026-07-02,CSV export dates wrong,"The export puts dates as 2026-07-01. My accountant's software wants 01/07/2026. Every month I fix it by hand."
3
+ T-2002,A-1107,Starter,DE,2026-07-03,Client can't pay invoice by card,"My client in Munich tried to pay invoice INV-0339 by card three times and got 'payment could not be authenticated'. She paid by bank transfer in the end."
4
+ T-2003,A-1131,Starter,UK,2026-07-04,Logo looks fuzzy on PDF,"Our logo looks blurry on the PDF invoices. It's fine on screen."
5
+ T-2004,A-1042,Growth,UK,2026-07-08,CSV export STILL wrong,"Raised this last week. Dates still in the wrong format. This is costing me an hour every month."
6
+ T-2005,A-1150,Growth,US,2026-07-09,Bulk edit invoices?,"Is there a way to bulk edit? We changed our hourly rate and need to update 30 recurring invoices."
7
+ T-2006,A-1163,Starter,US,2026-07-10,How do I add my tax ID,"Where do I put our EIN so it shows on invoices?"
8
+ T-2007,A-1172,Growth,UK,2026-07-11,Logo resolution,"Uploaded a 300dpi PNG, PDF version is pixelated."
9
+ T-2008,A-1188,Growth,IE,2026-07-14,Export columns,"The CSV export merges first and last name into one column, our accountant needs them separate."
10
+ T-2009,A-1042,Growth,UK,2026-07-15,CSV export,"Third time asking. Please fix the date format in the export."
11
+ T-2010,A-1220,Pro,FR,2026-07-16,Card payment failures,"Two of our clients in France reported card payments failing on the payment page this week. Error says authentication failed. We're losing card payments."
12
+ T-2011,A-1199,Starter,UK,2026-07-17,Reminder sent to wrong person,"The automatic reminder went to our client's old accounts contact, even though I updated the contact on the client record in June."
13
+ T-2012,A-1205,Growth,US,2026-07-18,Blurry logo on invoice,"Logo on invoice PDF is blurry. Not a huge deal but it looks unprofessional."
14
+ T-2013,A-1042,Growth,UK,2026-07-22,export,"Still broken. Thinking about moving to another tool if this isn't fixed."
15
+ T-2014,A-1213,Starter,UK,2026-07-23,Receipt upload crashes app,"Every time I take a photo of a receipt in the iPhone app it crashes. Had to upload from my laptop instead."
16
+ T-2015,A-1220,Pro,FR,2026-07-24,Card payments still failing,"Follow-up to my last ticket. Another client couldn't pay by card today. Same authentication error."
17
+ T-2016,A-1227,Pro,UK,2026-07-25,Updating recurring invoices,"We put prices up 5% in August. Is there a faster way than opening each recurring invoice? We have about 45."
18
+ T-2017,A-1234,Starter,UK,2026-07-28,Your price increase,"We were moved from £18 to £26 a month with two weeks' notice. That's a big jump for a two-person business."
19
+ T-2018,A-1238,Growth,UK,2026-07-29,PDF logo,"The logo on our invoices looks low quality."
20
+ T-2019,A-1240,Starter,UK,2026-07-31,Statements,"How do I send a statement of all open invoices to one client?"
21
+ T-2020,A-1245,Starter,US,2026-08-04,How to void an invoice,"How do I void an invoice I sent by mistake?"
22
+ T-2021,A-1251,Growth,NL,2026-08-05,Reminders went to old contact,"Reminder emails for two clients went to people who left those companies months ago. I had changed the billing contact. Embarrassing."
23
+ T-2022,A-1260,Pro,UK,2026-08-06,Bulk change rates,"Need to bulk update day rates across all recurring invoices. Doing them one at a time."
24
+ T-2023,A-1266,Starter,UK,2026-08-07,Logo blurry,"Logo is blurry on the PDF."
25
+ T-2024,A-1270,Growth,US,2026-08-11,Can I cancel?,"How do I cancel my subscription? We're closing the business at the end of September."
26
+ T-2025,A-1042,Growth,UK,2026-08-12,Export,"Fifth ticket about the CSV dates. I've given up and I'm doing it by hand."
27
+ T-2026,A-1281,Starter,UK,2026-08-13,Price rise,"The new price is more than we pay for our accounting software. Please reconsider the Starter price."
28
+ T-2027,A-1288,Growth,UK,2026-08-14,Fuzzy logo,"Our logo prints fuzzy when clients print the invoice."
29
+ T-2028,A-1293,Starter,US,2026-08-18,Late fees,"How do I add a late fee to overdue invoices?"
30
+ T-2029,A-1315,Pro,NL,2026-08-19,Card payments failing for Dutch and Belgian clients,"Since mid-July a lot of our clients' card payments fail with 'could not be authenticated'. Two clients gave up and paid by bank transfer weeks later. This is directly hurting our cash flow."
31
+ T-2030,A-1299,Pro,US,2026-08-21,Mobile crash,"App crashes when I try to attach a photo of a receipt to an expense. iPhone 15."
32
+ T-2031,A-1302,Growth,UK,2026-08-25,Bulk edit,"Please add bulk edit for recurring invoices."
33
+ T-2032,A-1310,Starter,US,2026-08-27,Logo pixelated,"Logo pixelated on emailed PDF invoices."
34
+ T-2033,A-1042,Growth,UK,2026-09-02,CSV export,"Sixth ticket. Date format. Please."
35
+ T-2034,A-1318,Growth,UK,2026-09-04,Where are my reports,"Where did the profit and loss report go after the update?"
36
+ T-2035,A-1322,Growth,US,2026-09-10,Reminder to wrong contact,"Reminder went to the contact on the original invoice, not the current billing contact."
@@ -0,0 +1,11 @@
1
+ response_id,account_id,plan,staff_band,months_as_customer,primary_reason,comment
2
+ X-01,F-3011,Starter,1-25,7,Too expensive,"Couldn't justify it for three vans."
3
+ X-02,F-3027,Team,26-100,14,Missing feature,"When a tech was off, reassigning his jobs double-booked people. Happened weekly."
4
+ X-03,F-3034,Team,26-100,22,Switched to competitor,"Moved to a tool that handles reassignment properly."
5
+ X-04,F-3040,Starter,1-25,4,Business closed,""
6
+ X-05,F-3052,Team,26-100,11,Missing feature,"Double bookings when we moved jobs between engineers. Customers turned up to no one."
7
+ X-06,F-3058,Business,101-500,18,Product too hard to use,"Dispatchers found re-planning a day after a sick call took ages and kept clashing."
8
+ X-07,F-3063,Starter,1-25,9,Too expensive,"Price went up and we're tiny."
9
+ X-08,F-3071,Team,26-100,30,Other,"Our office manager left and nobody else learned it."
10
+ X-09,F-3079,Business,101-500,16,Missing feature,"Reassigning jobs created overlaps the system didn't warn about."
11
+ X-10,F-3085,Team,26-100,12,Switched to competitor,"Cheaper elsewhere."
@@ -0,0 +1,55 @@
1
+ # Fieldnote sales call notes, September 2026
2
+
3
+ Written up by the account executives after each call. Text in quotation marks is what the
4
+ prospect said; everything else is the rep's summary.
5
+
6
+ ## C-01 — Harrowgate Logistics (1,200 staff), first call, 3 Sep, rep: Dana
7
+
8
+ - IT director and head of field operations on the call.
9
+ - IT director: "We can't roll anything out to 300 engineers without SSO."
10
+ - Head of field ops was most interested in route planning across depots.
11
+ - Next step: follow-up with procurement.
12
+
13
+ ## C-02 — Pell & Rowe Plumbing (40 staff), 5 Sep, rep: Marcus
14
+
15
+ - Owner on the call. Wanted to know what happens when a plumber is off sick:
16
+ "Can it move his jobs to someone else without me checking every one?"
17
+ - Asked for the per-technician price twice. Rep thinks price is the main hurdle.
18
+
19
+ ## C-03 — Harrowgate Logistics (1,200 staff), follow-up, 11 Sep, rep: Dana
20
+
21
+ - Procurement and IT director.
22
+ - Procurement: "SSO with Entra is a hard requirement for us."
23
+ - Deal size discussed: 300 seats. Rep estimate in CRM: £84k a year.
24
+ - Status: paused until SSO is on the roadmap with a date.
25
+
26
+ ## C-04 — Brightwater Facilities (650 staff), 12 Sep, rep: Marcus
27
+
28
+ - Operations director.
29
+ - "Our security team will ask about SSO first, then audit logs."
30
+ - Liked the dispatcher board. Wants a trial for one region.
31
+
32
+ ## C-05 — Kestrel Electrical (25 staff), 16 Sep, rep: Priya
33
+
34
+ - Owner. Main question was whether the mobile app works with no signal in basements.
35
+ - "Half our jobs are in plant rooms with no reception."
36
+ - No questions about security or login.
37
+
38
+ ## C-06 — Norland Housing Services (900 staff), 18 Sep, rep: Dana
39
+
40
+ - Repairs manager. Interested in scheduling repairs across 14,000 homes.
41
+ - Rep note: they'll probably need SSO at some point given their size; it didn't come up on
42
+ the call.
43
+ - Asked whether tenants can see a live arrival time.
44
+
45
+ ## C-07 — Quayside HVAC (120 staff), 22 Sep, rep: Priya
46
+
47
+ - Dispatcher and ops manager.
48
+ - Dispatcher: "When someone calls in sick, I spend the morning on the phone re-booking."
49
+ - Asked whether Fieldnote warns when a reassigned job clashes with another booking.
50
+
51
+ ## C-08 — Ashdown Cleaning (300 staff), 25 Sep, rep: Marcus
52
+
53
+ - Finance manager. Compared us with a competitor quoted at a lower per-seat price.
54
+ - Rep summary: prospect said pricing per technician feels steep for part-time cleaners.
55
+ - Asked about a per-site price instead.
@@ -0,0 +1,17 @@
1
+ response_id,submitted_at,account_id,plan,platform,csat_score,comment
2
+ CS-301,2026-07-12,ACC-1099,Business,iOS,5,The receipt scanner is honestly magic. Snap and done.
3
+ CS-302,2026-07-18,ACC-1170,Business,iOS,5,"Scanning receipts is the best part of Tallyweave, saves me so much time."
4
+ CS-303,2026-07-25,ACC-1135,Business,iOS,4,Love the receipt scanning. Wish approvals emails were quicker.
5
+ CS-304,2026-08-02,ACC-1042,Business,Web,1,Exports still broken. Have raised it repeatedly.
6
+ CS-305,2026-08-06,ACC-1023,Starter,Web,2,Still no way to handle part payments properly. I spend too long fixing invoices.
7
+ CS-306,2026-08-11,ACC-1177,Business,iOS,5,Receipt capture is spot on every time.
8
+ CS-307,2026-08-15,ACC-1188,Enterprise,Web,4,The new approval flow is so much simpler than before.
9
+ CS-308,2026-08-20,ACC-1048,Business,Android,2,Scanner gets amounts wrong constantly on our phones.
10
+ CS-309,2026-08-22,ACC-1250,Starter,Web,3,Fine overall but customers pay me in instalments and I can't show what's left to pay.
11
+ CS-310,2026-08-28,ACC-1208,Enterprise,iOS,5,Our lawyers actually submit expenses on time now because scanning is so easy.
12
+ CS-311,2026-09-03,ACC-1203,Business,Web,4,Approvals are clearer now. Good update.
13
+ CS-312,2026-09-09,ACC-1182,Business,Web,5,Invoices look professional and clients pay faster.
14
+ CS-313,2026-09-12,ACC-1074,Starter,Web,4,Does what we need for a small team.
15
+ CS-314,2026-09-17,ACC-1163,Starter,Web,2,Price went up again this year for the Starter plan.
16
+ CS-315,2026-09-22,ACC-1112,Starter,iOS,5,"Easy to use, good support."
17
+ CS-316,2026-09-26,ACC-1094,Business,Web,3,OK.
@@ -0,0 +1,49 @@
1
+ ticket_id,created_at,account_id,account_name,plan,platform,priority,subject,description
2
+ TW-4010,2026-07-01,ACC-1007,Bramblegate Cafe,Starter,Web,Low,Password reset email not received,"Requested a reset twice, nothing in inbox or spam."
3
+ TW-4012,2026-07-02,ACC-1042,Brightfen Logistics,Business,Web,High,CSV export times out,"Trying to export all expense claims for June (about 6,000 lines) and the page spins for a couple of minutes then shows 'Request timed out'. Need this for month-end."
4
+ TW-4015,2026-07-02,ACC-1011,Kettlewood Bakery,Starter,Web,Normal,Feature request: Excel export of invoices,Every month I download everything and match it against my bank statement by hand because customers pay in two or three chunks and the invoice just says 'Open' until the full amount lands. An Excel export would help.
5
+ TW-4019,2026-07-03,ACC-1042,Brightfen Logistics,Business,Web,High,Re: CSV export times out,Still happening today. Tried Chrome and Edge. Same timeout.
6
+ TW-4023,2026-07-06,ACC-1015,Brindle Courier Co,Starter,Android,Normal,Receipt scan reads wrong amount,Scanned a fuel receipt for 18.40 and it came through as 1840.00. Had to fix it by hand.
7
+ TW-4027,2026-07-07,ACC-1023,Pellbrook Plumbing,Starter,Web,Normal,Please add bulk edit,"When a client pays half up front I have to edit the invoice, delete the line, and make a new invoice for the balance. With bulk edit I could at least fix them all at once."
8
+ TW-4033,2026-07-08,ACC-1042,Brightfen Logistics,Business,Web,Urgent,URGENT export broken again,Our finance team cannot close the month. Export times out every single time. This is the third ticket.
9
+ TW-4036,2026-07-09,ACC-1170,Pemberton Architects,Business,Web,Normal,Approval emails arriving late,Managers get the 'claim awaiting approval' email three or four hours after the claim is submitted.
10
+ TW-4040,2026-07-10,ACC-1035,Marrowind Yoga,Starter,iOS,Normal,Can't mark invoice partially paid,Students pay for a 10-class pass in two instalments. There is no way to record the first payment without marking the whole invoice paid.
11
+ TW-4044,2026-07-13,ACC-1031,Ellery Print Works,Starter,Web,Low,How do I add my logo to invoices?,Can't find where to upload a logo.
12
+ TW-4047,2026-07-14,ACC-1048,Ovenden Electrical,Business,Android,Normal,Scanner mixing up totals,The scanner keeps picking up the VAT line instead of the total.
13
+ TW-4051,2026-07-15,ACC-1042,Brightfen Logistics,Business,Web,High,Export still failing,Your workaround of exporting one week at a time works but it takes our clerk an hour to stitch the files together.
14
+ TW-4055,2026-07-17,ACC-1058,Tidewell Landscaping,Starter,Web,Low,Add a notes field to payments,I'd like a notes box on each payment so I can write down which bank transfer covered which part of an invoice. Right now I keep a separate spreadsheet.
15
+ TW-4058,2026-07-20,ACC-1074,Stonecrop Gardens,Starter,Web,Low,Change card on file,"Our card expired, how do I update billing details?"
16
+ TW-4060,2026-07-20,ACC-1063,Lark & Loom,Starter,Android,Normal,OCR ignores decimal comma,"Receipts from our supplier in France use a comma for decimals. 12,50 becomes 1250."
17
+ TW-4066,2026-07-22,ACC-1107,Harrow Lane Studio,Business,Web,Normal,Report download slow,Downloading the annual expenses report took ages and eventually failed. Smaller date ranges work fine.
18
+ TW-4070,2026-07-24,ACC-1066,Corvane Photography,Starter,Web,Normal,Deposit payments show invoice as unpaid,"Wedding clients pay a 30% deposit. After I record it, the invoice still shows the full amount as unpaid on the client portal and clients email me confused."
19
+ TW-4074,2026-07-27,ACC-1099,Fairlow Consulting,Business,Web,Low,Where is the VAT number field?,Need our VAT number to appear on invoices.
20
+ TW-4078,2026-07-29,ACC-1042,Brightfen Logistics,Business,Web,Normal,Expense report export timeout,Timed out again on the July export. Please escalate.
21
+ TW-4083,2026-07-30,ACC-1188,Ravelston Schools Trust,Enterprise,Web,Normal,Approval notification delay,Approval notifications are delayed by hours. Our heads of department approve in batches at the end of the day so they miss the cut.
22
+ TW-4086,2026-07-31,ACC-1112,Kinsale Bike Repair,Starter,iOS,Low,Locked out after password change,Changed my password and now the iPhone app won't accept it.
23
+ TW-4088,2026-07-31,ACC-1079,Ashgrove Tutors,Starter,Web,Normal,Request: integration with my bank,I spend Sunday nights ticking off payments against invoices because parents pay termly fees in bits. A bank feed would save me hours.
24
+ TW-4092,2026-08-03,ACC-1048,Ovenden Electrical,Business,Android,High,Scanner still wrong - staff giving up,"Following up on my earlier ticket. Engineers have stopped using the scanner and are typing receipts in manually, which defeats the point."
25
+ TW-4096,2026-08-03,ACC-1091,Fenwick & Rye Catering,Starter,Web,High,Overdue reminder sent to client who already paid deposit,Your automatic overdue reminder went to a client who paid a deposit last week. They were annoyed and I looked unprofessional. The system doesn't know about part payments.
26
+ TW-4099,2026-08-04,ACC-1135,Oriel Events,Business,Web,Low,API docs link broken,The link to the API reference in the developer page gives a 404.
27
+ TW-4102,2026-08-04,ACC-1042,Brightfen Logistics,Business,Web,High,Export timeouts - need ETA,Can someone give us an ETA on the export fix? We have raised this many times.
28
+ TW-4108,2026-08-10,ACC-1084,Greyfriar Movers,Business,Android,Normal,Receipt amounts wrong after app update,Since the last Android update the scanned amounts are often off by a factor of 100.
29
+ TW-4111,2026-08-12,ACC-1199,Calder Robotics,Business,Web,Low,Delayed approval emails,"Approval request emails come through late, sometimes the next morning."
30
+ TW-4115,2026-08-13,ACC-1107,Harrow Lane Studio,Business,Web,Normal,Balance due wrong on statement,Customer statement shows the full invoice total as outstanding even though they paid two of three instalments. I had to send a manual PDF instead.
31
+ TW-4118,2026-08-14,ACC-1163,Tamsin Wood Interiors,Starter,Web,Low,Dark mode?,Any plans for a dark mode? I do my books late at night.
32
+ TW-4121,2026-08-18,ACC-1219,Quillmoor Accounting,Enterprise,Web,Normal,Export timeout on large date range,"Exporting a full year of claims times out. Not urgent, we can do it by quarter."
33
+ TW-4124,2026-08-19,ACC-1177,Hexley Data Labs,Business,Web,Low,API rate limits,What are the rate limits on the expenses endpoint?
34
+ TW-4127,2026-08-21,ACC-1007,Bramblegate Cafe,Starter,Web,Low,Logo upload,Where do I put a logo on my invoice template?
35
+ TW-4130,2026-08-24,ACC-1230,Northgate Clinics Group,Enterprise,Web,Urgent,SSO login failing for entire organisation,"Since our identity provider rotated its signing certificate this morning, every user gets 'SAML assertion invalid'. All 140 staff are locked out and cannot submit expenses before the payroll cutoff on Friday. We had to roll back the certificate on our side to get in."
36
+ TW-4135,2026-08-26,ACC-1121,Hollins Tree Care,Starter,Android,Normal,Scan picks up wrong number,It read the card number digits as the amount on a hardware store receipt.
37
+ TW-4138,2026-08-27,ACC-1208,Morrow & Vane Legal,Enterprise,Web,Normal,VAT number on invoices,How do we show our VAT registration number on invoices?
38
+ TW-4140,2026-08-31,ACC-1042,Brightfen Logistics,Business,Web,High,August export failing,Same timeout on the August export. Splitting by week again.
39
+ TW-4144,2026-09-02,ACC-1203,Wyncote Dental,Business,Web,Normal,Approver not notified,Practice manager says she only got the approval email the next day.
40
+ TW-4149,2026-09-04,ACC-1128,Penhallow Surf School,Starter,Web,Low,Cancel subscription,"Closing the surf school for winter, please cancel at end of term."
41
+ TW-4152,2026-09-08,ACC-1142,Saltmarsh Joinery,Business,Web,Normal,Excel export please,Our bookkeeper needs to see what's been paid against each invoice when clients pay in instalments. Could you add an Excel export?
42
+ TW-4157,2026-09-10,ACC-1094,Ludgate Coffee Roasters,Business,Web,Low,Update billing card,"New company card, how do I switch?"
43
+ TW-4160,2026-09-14,ACC-1156,Mosswell Vets,Business,Android,Normal,Receipt scanner unreliable,"About half our scanned receipts need correcting. Our two iPhone users say theirs is fine, it seems to be the Android phones."
44
+ TW-4163,2026-09-16,ACC-1146,Orchard Row Nursery,Starter,Web,Low,Password reset link expired,The reset link says expired as soon as I click it.
45
+ TW-4166,2026-09-18,ACC-1182,Whitlock Physio,Business,Web,Low,Thank you,Just wanted to say the new invoice templates look great. No issue.
46
+ TW-4168,2026-09-21,ACC-1244,Varrick Freight,Enterprise,Web,Urgent,Nobody can log in via SSO,After our scheduled IdP certificate renewal no one in the company can sign in. Drivers cannot log fuel receipts and our admins cannot approve anything. There is no non-SSO fallback for our account. Please treat as a P1.
47
+ TW-4172,2026-09-24,ACC-1219,Quillmoor Accounting,Enterprise,Web,Normal,Approval emails slow,"Partners are getting approval emails hours late. In-app list is up to date, only email is slow."
48
+ TW-4175,2026-09-27,ACC-1031,Ellery Print Works,Starter,Web,Low,unsubscribe,Please stop sending me the newsletter.
49
+ TW-4177,2026-09-29,ACC-1042,Brightfen Logistics,Business,Web,Urgent,Export STILL broken - considering alternatives,Quarter end and the export times out. We are evaluating other tools if this is not fixed.
@@ -0,0 +1,32 @@
1
+ date,store,rating,app_version,author,title,review
2
+ 2026-08-24,Google Play,2,4.1.3,KitchenKween88,Grocery list now Premium??,Used this app for two years and now the grocery list is behind Premium. That was the whole reason I used it.
3
+ 2026-08-25,App Store,5,4.1.3,tilly.bakes,Aisle sorting!,The grocery list sorting itself by supermarket aisle is genius. Shopping takes half the time.
4
+ 2026-08-26,App Store,3,4.1.3,lowtide_lou,Need a calendar view,"Need a calendar view. Half the week it's just me and the other half my kids are here, so the plan makes way too much food on my nights alone."
5
+ 2026-08-29,App Store,2,4.1.3,dana.cooks,Bait and switch,The free grocery list was why I picked this over other planners. Paying 6.99 a month just for a shopping list is too much.
6
+ 2026-08-31,Google Play,5,4.1.3,Ben Ashdown,Great recipes,Recipes are actually tested and work. Weeknight dinners sorted.
7
+ 2026-09-02,Google Play,1,4.1.5,KitchenKween88,Still paywalled,Updated hoping they listened. Nope. Grocery list still locked. Ads between every recipe step too.
8
+ 2026-09-03,App Store,3,4.1.5,Ivo Szabo,Too many notifications,Three notifications a day reminding me to plan meals is too much.
9
+ 2026-09-05,Google Play,2,4.1.5,Marguerite T,Too many ads,An ad pops up between each step of the recipe while my hands are covered in flour.
10
+ 2026-09-06,App Store,5,4.1.5,noodlequeen,Love it,Best meal planner I've tried. The aisle-sorted list is my favourite thing.
11
+ 2026-09-08,Google Play,3,4.1.5,Priya_in_Leeds,Calendar please,Please add a calendar. My partner works away Monday to Wednesday and I end up throwing out half of what I bought.
12
+ 2026-09-11,App Store,1,4.2.0,busydadof3,Grocery list paywall,Can't justify the subscription. Back to writing my list on paper.
13
+ 2026-09-13,App Store,5,4.2.0,C. Varga,Worth it,Premium is worth every penny for our family of five.
14
+ 2026-09-14,Google Play,1,4.2.0,R. Bellweather,Import broken,Pasting a recipe link from a blog just shows 'Could not read recipe'. Worked fine before the update.
15
+ 2026-09-15,Google Play,1,4.2.0,KitchenKween88,Worse every update,Now there's a video ad before I can open my own meal plan. Grocery list still Premium. Uninstalling soon.
16
+ 2026-09-16,App Store,1,4.2.0,June Okafor-Lind,Lost everything,After the update it asked me to sign in with Apple. I did and all 200 of my saved recipes and three years of meal plans are gone. Support hasn't replied.
17
+ 2026-09-17,App Store,1,4.2.0,grahamcracker,Saved recipes deleted,Signed in with Apple as the app asked after updating and my account came up empty. Every saved recipe gone.
18
+ 2026-09-18,Google Play,2,4.2.0,cooking_with_kez,Can't import recipes anymore,Recipe import from URL fails every time on my Pixel.
19
+ 2026-09-19,App Store,4,4.2.0,hollyhock22,Almost perfect,Would be 5 stars with a calendar view.
20
+ 2026-09-21,Google Play,4,4.2.0,Hal Brennan,Solid,"Good recipes, easy plan builder."
21
+ 2026-09-23,Google Play,2,4.2.0,Alder Finch,Import error,Every website I try gives 'Could not read recipe'. My wife's iPhone imports the same link fine.
22
+ 2026-09-26,Google Play,2,4.2.0,Ollie R.,Shopping list locked,Grocery list moved to Premium with no warning. Not cool.
23
+ 2026-09-28,Google Play,4,4.2.0,Lena K,Dark mode,Please add dark mode.
24
+ 2026-10-01,Google Play,3,4.2.1,Teo M.,Weekly calendar,"I want a proper calendar. Some nights we're 2, some nights 5 when the grandkids stay, and every recipe assumes 4."
25
+ 2026-10-03,Google Play,1,4.2.1,nonnaG,Import still broken,Still can't import from links after the latest update. I have 30 recipes I can't add.
26
+ 2026-10-04,App Store,5,4.2.1,rosemary_and_tim,So easy,Planning the week takes ten minutes now.
27
+ 2026-10-06,Google Play,1,4.2.1,KitchenKween88,Do not download,"Ads, paywall, ads. Grocery list locked. One star until they fix it."
28
+ 2026-10-08,App Store,3,4.2.1,pat_the_cook,Slow,Takes a long time to load the plan screen.
29
+ 2026-10-09,App Store,2,4.2.1,fernandvine,Price,"Nice app, but the price for Premium is way more than I'd pay for a meal planner."
30
+ 2026-10-10,Google Play,2,4.2.1,mika.eats,URL import,Import from URL just spins and fails. Android 15.
31
+ 2026-10-11,Google Play,5,4.2.1,Wren P.,Fantastic,Love the leftovers suggestions and the aisle sorting.
32
+ 2026-10-12,App Store,4,4.2.1,sam_and_the_sprouts,Calendar view,Love the recipes. A calendar view would be great.
@@ -0,0 +1,48 @@
1
+ # Basilbox: round 1 discovery interviews (my notes)
2
+
3
+ Recruitment: in-app banner shown to active annual Premium subscribers, 30-minute video call, gift card as thanks. 11 signed up, 6 showed. All six use the app on iPhone or iPad. Notes typed during the call, so quotes are close to verbatim but not perfect.
4
+
5
+ ---
6
+
7
+ ## P1 — lives alone, software tester, cooks 4 nights a week
8
+
9
+ - Plans on Sunday, shops Monday. Has used Basilbox about 18 months.
10
+ - Favourite thing is the aisle-sorted grocery list: "I'm in and out of the shop in fifteen minutes."
11
+ - Price: "Honestly it's cheaper than one takeaway a month. I'd pay more."
12
+ - Skips most recipes over 40 minutes. Wishes there was a "quick only" filter, but found the time filter when I showed her.
13
+ - Imports recipes from two food blogs, no problems.
14
+
15
+ ## P2 — separated, two kids every other week
16
+
17
+ - "Week A it's me and two hungry kids, week B it's just me." Plans the same way both weeks because the app only lets her set one household size.
18
+ - Throws food away on her solo weeks: "I bin a bag of veg every other Sunday and feel awful about it."
19
+ - Asked for "a calendar where I can see which weeks are which". When I asked what she'd do with it, she said she'd use it to "make the portions right for whoever's actually at the table".
20
+ - Price is fine. Uses the grocery list every week.
21
+
22
+ ## P3 — couple, both work from home
23
+
24
+ - Heavy recipe importer, "probably 60 percent of my plan is stuff I imported from blogs". Import has always worked for her on iPhone.
25
+ - Biggest pain is leftovers: they cook big on Sunday and the plan doesn't know there's lasagne left for Tuesday.
26
+ - "The leftovers suggestions are nice, but I have to remember to tell it."
27
+ - Price: no concerns. Didn't know there was a free tier.
28
+
29
+ ## P4 — family of five, partner travels Monday to Wednesday
30
+
31
+ - "Mondays to Wednesdays I'm cooking for four, Thursday on it's five, and at weekends my mum often comes so it's six."
32
+ - Edits servings on every recipe by hand: "I do the maths on every single recipe, every week."
33
+ - Would like "a calendar view" so she can "see who's home each night".
34
+ - Loves the aisle sorting. Said Premium is "worth it, easily".
35
+
36
+ ## P5 — three housemates sharing a plan (iPad on the kitchen counter)
37
+
38
+ - They take turns cooking; who's home varies week to week with shifts.
39
+ - "Half the time we cook for three and it's only two of us, and the third person's portion goes in the fridge and dies there."
40
+ - Wants a way for each housemate to mark which nights they're in.
41
+ - Splits the subscription three ways, "so it's nothing".
42
+
43
+ ## P6 — retired couple
44
+
45
+ - Larger text matters to them; found the in-app text size setting useful.
46
+ - Cooks from the same 15 or so saved recipes on rotation. Asked what would make them stop using the app, they said "if we lost our recipes. That's years of my wife's favourites in there."
47
+ - Hasn't updated the app recently; didn't know about the Sign in with Apple prompt.
48
+ - Price: "Very fair."
@@ -0,0 +1,139 @@
1
+ # Worked example — Corbel salon booking, September feedback
2
+
3
+ A fictional booking app for hair salons. Sixteen items from three sources; the owner of the
4
+ loudest ticket thread assumed the Instagram button was the priority because "everyone asks for
5
+ it". It shows a repeat filer, a request rewritten into a problem, a one-segment theme, and a
6
+ salon whose workaround hides it from the ticket count.
7
+
8
+ ## Input
9
+
10
+ **The request:** *"Here's last month's feedback for Corbel: support tickets, CSAT comments and
11
+ three interview notes. What should we fix first? Product wants to build the Instagram booking
12
+ button next."*
13
+
14
+ **Support tickets** (salon ID, plan, country)
15
+
16
+ | ID | Salon | Plan | Country | Text |
17
+ |---|---|---|---|---|
18
+ | T-501 | S-12 | Team | UK | A client rescheduled through the text link and got put in a slot Marta already had. Two clients turned up at 10am. |
19
+ | T-502 | S-12 | Team | UK | Happened again today. Double booking from the reschedule link. |
20
+ | T-503 | S-12 | Team | UK | Third double booking this month. We had to give one client a free fringe trim to calm her down. |
21
+ | T-504 | S-31 | Team | UK | Reschedule link let a client into a slot that was already booked. |
22
+ | T-505 | S-07 | Solo | UK | Can you add a button on Instagram so people can book from there? |
23
+ | T-506 | S-44 | Solo | IE | The colours on the booking page don't match my brand. |
24
+ | T-507 | S-19 | Team | UK | How do I export my client list? |
25
+ | T-508 | S-52 | Solo | UK | Booking page font is hard to read on phones. |
26
+
27
+ **CSAT comments** (1–5)
28
+
29
+ | ID | Salon | Score | Comment |
30
+ |---|---|---|---|
31
+ | C-01 | S-31 | 2 | The double bookings are going to cost us clients. |
32
+ | C-02 | S-07 | 4 | Love the deposit feature, no-shows have nearly stopped. |
33
+ | C-03 | S-60 | 5 | Deposits changed my business. |
34
+ | C-04 | S-44 | 3 | Fine, but I'd like the booking page to look more like my salon. |
35
+ | C-05 | S-52 | 5 | Easy to use. |
36
+
37
+ **Interview notes** (quotation marks = the salon's words)
38
+
39
+ - **I-1, S-07, Solo, owner:** "Nearly all my new clients find me on Instagram, then I send them
40
+ the link in a DM. Half of them never book."
41
+ - **I-2, S-12, Team, manager:** "I check the book every morning now because I don't trust the
42
+ reschedule link."
43
+ - **I-3, S-73, Team, manager:** Gets many new clients from Instagram; has never tracked whether
44
+ they book. "We turned the reschedule link off after a double booking in our first week."
45
+
46
+ ## Coding sheet
47
+
48
+ [`inputs/booking-app-coded.csv`](inputs/booking-app-coded.csv): one row per item, salon ID as
49
+ `person_id`. T-503 is S1 because the salon gave away a service; I-2 is S2 (a daily manual check);
50
+ I-3's double booking is S3 because the salon has switched the link off. T-505 is coded to the
51
+ Instagram problem, not to a "button" theme. T-506 and T-508 are separate themes: brand colours
52
+ and legibility are different problems.
53
+
54
+ ## Script output (abridged)
55
+
56
+ ```
57
+ - Items: 16; distinct salons with an ID: 8
58
+ - Most items from one salon: S-12 4, S-07 3, S-31 2, S-44 2, S-52 2
59
+
60
+ | Theme | Salons | Mentions | Ranking severity | By severity | One segment only |
61
+ |----------------------------|--------|----------|------------------|-------------|----------------------------|
62
+ | reschedule-double-book | 3 | 7 | S1 | S1 2, S3 1 | plan=Team (4 of 8 overall) |
63
+ | instagram-new-clients | 2 | 3 | S3 | S2 1, S3 1 | - |
64
+ | page-hard-to-read-on-phone | 1 | 1 | S3 (1 report) | S3 1 | - |
65
+ | page-brand-mismatch | 1 | 2 | S4 (1 report) | S4 1 | - |
66
+ | +deposits | 2 | 2 | - | - | plan=Solo (4 of 8 overall) |
67
+
68
+ - WARNING: S-12 accounts for 56% of reschedule-double-book's mentions
69
+ ## Items with no theme
70
+ T-507, C-05
71
+ ```
72
+
73
+ ## The reply
74
+
75
+ # What salons told us in September
76
+
77
+ **Fix the reschedule link before building the Instagram button.** The reschedule link is putting
78
+ clients into slots that are already taken: three salons, all on the Team plan, and one gave away
79
+ a service to calm a client down. The Instagram request comes from two salons, and the problem
80
+ behind it is new clients dropping off between a DM and a booking, which one owner puts at "half".
81
+ Counts below are salons, not messages.
82
+
83
+ ## Themes, ranked
84
+
85
+ | # | Problem | Who | Severity | Sources |
86
+ |---|---|---|---|---|
87
+ | 1 | Rescheduling by text link books clients into slots that are already taken | 3 salons (7 messages, 4 from one salon); Team plan only | **Blocker:** two clients arrive for one slot; one salon gave a free service | tickets, CSAT, interviews |
88
+ | 2 | New clients found on Instagram are sent a link by DM and many never book | 2 salons (one Solo, one Team) | **Minor to major:** one owner says half never book; the other hasn't measured it | ticket, interviews |
89
+ | 3 | The booking page is hard to read on a phone | 1 salon | **Minor**, one report: confirm first | ticket |
90
+ | 4 | The booking page doesn't match the salon's branding | 1 salon (2 messages) | **Cosmetic**, one report | ticket, CSAT |
91
+
92
+ ## Evidence
93
+
94
+ ### 1. Rescheduling books clients into taken slots
95
+ - **Who:** S-12 (three tickets and an interview) and S-31 (a ticket and a CSAT score of 2), plus
96
+ S-73, which switched the link off after one double booking. All three are Team salons; no
97
+ Solo salon reported it.
98
+ - **In their words:** "Two clients turned up at 10am." (T-501); "We had to give one client a free
99
+ fringe trim to calm her down." (T-503); "The double bookings are going to cost us clients."
100
+ (C-01); "I don't trust the reschedule link." (I-2)
101
+ - **What would change this:** a Solo salon using the link without trouble would point at
102
+ multi-staff calendars; no Solo salon in this set says whether it uses the link.
103
+
104
+ ### 2. Instagram new clients drop off before booking
105
+ - **Who:** S-07 (Solo) and S-73 (Team).
106
+ - **In their words:** "Nearly all my new clients find me on Instagram, then I send them the link
107
+ in a DM. Half of them never book." (I-1)
108
+ - **What they asked for:** "Can you add a button on Instagram so people can book from there?"
109
+ (T-505)
110
+ - **What would change this:** S-73 has never tracked whether Instagram clients book, so the drop-off
111
+ rests on one owner's estimate.
112
+
113
+ ## What not to break
114
+ - **Deposits:** two salons, both Solo. "Love the deposit feature, no-shows have nearly stopped."
115
+ (C-02); "Deposits changed my business." (C-03)
116
+
117
+ ## Where the sources disagree
118
+ - S-07 rates the product 4 out of 5 in CSAT while losing "half" its Instagram leads in interview:
119
+ the score doesn't reflect the problem it raised in conversation.
120
+
121
+ ## What this can't tell us
122
+ - **Tickets** come from salons that hit a problem and wrote in. S-73 switched the reschedule link
123
+ off and never filed a ticket, so salons with a workaround don't show up in the count.
124
+ - **CSAT** is five comments from salons that chose to leave one; no score here describes the
125
+ customer base.
126
+ - **Interviews** are three conversations. Eight salons in total is enough to find problems, not
127
+ to say how common they are.
128
+
129
+ ## Questions for the next interviews
130
+ 1. "Walk me through the last time a client rescheduled. What did you see in the book afterwards?"
131
+ (theme 1; ask Solo salons too)
132
+ 2. "Have you switched off any part of Corbel? What made you do it?" (finds hidden workarounds
133
+ like S-73's)
134
+ 3. "Which clients reschedule without a problem? What's different about those bookings?"
135
+ (could disconfirm theme 1)
136
+ 4. "Tell me about the last new client who found you on Instagram. What happened between the DM
137
+ and the appointment?" (theme 2)
138
+
139
+ Next: turn theme 1 into a brief, with the Solo-salon question as an open risk.
@@ -0,0 +1,17 @@
1
+ item_id,person_id,source,plan,country,themes,severity
2
+ T-501,S-12,tickets,Team,UK,reschedule-double-book,S1
3
+ T-502,S-12,tickets,Team,UK,reschedule-double-book,S1
4
+ T-503,S-12,tickets,Team,UK,reschedule-double-book,S1
5
+ T-504,S-31,tickets,Team,UK,reschedule-double-book,S1
6
+ T-505,S-07,tickets,Solo,UK,instagram-new-clients,S3
7
+ T-506,S-44,tickets,Solo,IE,page-brand-mismatch,S4
8
+ T-507,S-19,tickets,Team,UK,,
9
+ T-508,S-52,tickets,Solo,UK,page-hard-to-read-on-phone,S3
10
+ C-01,S-31,csat,Team,UK,reschedule-double-book,S2
11
+ C-02,S-07,csat,Solo,UK,+deposits,
12
+ C-03,S-60,csat,Solo,UK,+deposits,
13
+ C-04,S-44,csat,Solo,IE,page-brand-mismatch,S4
14
+ C-05,S-52,csat,Solo,UK,,
15
+ I-1,S-07,interview,Solo,UK,instagram-new-clients,S2
16
+ I-2,S-12,interview,Team,UK,reschedule-double-book,S2
17
+ I-3,S-73,interview,Team,UK,instagram-new-clients;reschedule-double-book:S3,S3
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "feedback-synthesis",
3
+ "version": "0.1.0",
4
+ "description": "Turn raw customer feedback — interview notes, support tickets, NPS or CSAT verbatims, app-store reviews, sales-call notes — into ranked themes a product decision can rest on, each a problem statement rather than a feature request, counted by distinct people or accounts not mentions, with segments, severity kept separate from frequency, verbatim quotes with source IDs, what people value, where sources disagree, what the sample cannot tell, and the questions for the next interviews. A stdlib script computes the counts. Use when the user says \"what are customers telling us\", \"synthesise this feedback\", \"find the themes in these tickets / reviews / NPS comments\", \"affinity map these interview notes\", or \"what should we fix first based on feedback\".",
5
+ "entrypoint": "SKILL.md",
6
+ "deps": {
7
+ "npm": [],
8
+ "pip": []
9
+ },
10
+ "env": {
11
+ "required": [],
12
+ "optional": []
13
+ },
14
+ "related": [
15
+ "backlog-triage",
16
+ "brief-intake",
17
+ "hypothesis-comparison",
18
+ "requirements-interview",
19
+ "source-synthesis",
20
+ "user-journey-map"
21
+ ],
22
+ "handoff": [
23
+ {
24
+ "to": "brief-intake",
25
+ "when": "the ranked themes and their evidence are agreed",
26
+ "purpose": "Turn the top themes into a brief whose problem, audience and open questions carry the counted evidence.",
27
+ "fallback": "If brief-intake is absent, end the synthesis with a short brief: the top theme as the problem, who has it, the evidence counts and quotes, and the interview questions as open risks."
28
+ },
29
+ {
30
+ "to": "requirements-interview",
31
+ "when": "the synthesis ends with open questions that only new interviews can answer",
32
+ "purpose": "Turn the questions for the next interviews into a ranked interview kit.",
33
+ "fallback": "If requirements-interview is absent, keep the questions list as the kit: open, past-behaviour questions tied to each theme, with one that could disconfirm the top theme."
34
+ }
35
+ ],
36
+ "tags": [
37
+ "customer-feedback",
38
+ "synthesis",
39
+ "discovery",
40
+ "voice-of-customer",
41
+ "research"
42
+ ],
43
+ "permissions": {
44
+ "network": [],
45
+ "commands": [],
46
+ "files": "named-paths",
47
+ "notes": "Reads the coding sheet CSV it is given; writes only the paths passed to -o and --json."
48
+ },
49
+ "model": {
50
+ "tier": "standard",
51
+ "rationale": "Coding feedback into themes is bounded judgment; the counts by distinct person and segment come from its script."
52
+ }
53
+ }