create-vasvibe 2.4.0 → 2.5.1

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 (286) hide show
  1. package/README.md +170 -167
  2. package/bin/cli.mjs +9 -9
  3. package/package.json +45 -45
  4. package/src/git.mjs +47 -47
  5. package/src/index.mjs +228 -228
  6. package/src/prompts.mjs +113 -113
  7. package/src/scaffold.mjs +74 -74
  8. package/src/upgrade.mjs +121 -121
  9. package/src/utils.mjs +91 -91
  10. package/template/.agents/agents/analyst/agent.json +43 -43
  11. package/template/.agents/agents/backend/agent.json +44 -44
  12. package/template/.agents/agents/data-architect/agent.json +43 -43
  13. package/template/.agents/agents/devops/agent.json +44 -44
  14. package/template/.agents/agents/discovery/agent.json +43 -43
  15. package/template/.agents/agents/document/agent.json +43 -43
  16. package/template/.agents/agents/explorer/agent.json +43 -43
  17. package/template/.agents/agents/fixer/agent.json +44 -44
  18. package/template/.agents/agents/frontend/agent.json +44 -44
  19. package/template/.agents/agents/fullstack/agent.json +44 -44
  20. package/template/.agents/agents/initiator/agent.json +41 -41
  21. package/template/.agents/agents/logger/agent.json +43 -43
  22. package/template/.agents/agents/manual-tester/agent.json +44 -0
  23. package/template/.agents/agents/orchestrator/agent.json +44 -44
  24. package/template/.agents/agents/pm/agent.json +42 -42
  25. package/template/.agents/agents/qa/agent.json +44 -44
  26. package/template/.agents/agents/reliability/agent.json +44 -44
  27. package/template/.agents/agents/security/agent.json +44 -44
  28. package/template/.agents/agents/sysarch/agent.json +44 -44
  29. package/template/.agents/agents/tester/agent.json +44 -44
  30. package/template/.agents/agents/toolsmith/agent.json +44 -44
  31. package/template/.agents/agents/ux-designer/agent.json +43 -43
  32. package/template/.agents/skills/find-skills/SKILL.md +142 -142
  33. package/template/.agents/skills/fullstack/SKILL.md +89 -89
  34. package/template/.agents/skills/penetration-testing/SKILL.md +94 -94
  35. package/template/.agents/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  36. package/template/.agents/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  37. package/template/.agents/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  38. package/template/.agents/skills/pm/SKILL.md +170 -170
  39. package/template/.agents/skills/ui-ux-pro-max/SKILL.md +658 -658
  40. package/template/.agents/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  41. package/template/.agents/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  42. package/template/.agents/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  43. package/template/.agents/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  44. package/template/.agents/skills/ui-ux-pro-max/data/icons.csv +105 -105
  45. package/template/.agents/skills/ui-ux-pro-max/data/products.csv +162 -162
  46. package/template/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  47. package/template/.agents/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  48. package/template/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  49. package/template/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  50. package/template/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  51. package/template/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  52. package/template/.agents/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  53. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  54. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  55. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  56. package/template/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  57. package/template/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  58. package/template/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  59. package/template/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  60. package/template/.agents/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  61. package/template/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  62. package/template/.agents/skills/ui-ux-pro-max/data/typography.csv +74 -74
  63. package/template/.agents/skills/ui-ux-pro-max/scripts/core.py +262 -262
  64. package/template/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  65. package/template/.agents/workflows/build-feature.md +21 -21
  66. package/template/.agents/workflows/build-prototype.md +32 -32
  67. package/template/.agents/workflows/daily-standup.md +16 -16
  68. package/template/.agents/workflows/deliver-feature.md +16 -16
  69. package/template/.agents/workflows/explorer.md +78 -78
  70. package/template/.agents/workflows/harden-release.md +21 -21
  71. package/template/.agents/workflows/logger.md +117 -117
  72. package/template/.agents/workflows/plan-feature.md +30 -30
  73. package/template/.agents/workflows/plan-project.md +25 -25
  74. package/template/.agents/workflows/release.md +18 -18
  75. package/template/.agents/workflows/security-audit.md +19 -19
  76. package/template/.agents/workflows/setup-workspace.md +21 -21
  77. package/template/.agents/workflows/start-fix.md +18 -18
  78. package/template/.agents/workflows/test-feature.md +17 -17
  79. package/template/.claude/agents/analyst.md +109 -109
  80. package/template/.claude/agents/backend.md +61 -61
  81. package/template/.claude/agents/data-architect.md +43 -43
  82. package/template/.claude/agents/devops.md +44 -43
  83. package/template/.claude/agents/discovery.md +51 -51
  84. package/template/.claude/agents/document.md +51 -51
  85. package/template/.claude/agents/explorer.md +138 -138
  86. package/template/.claude/agents/fixer.md +87 -86
  87. package/template/.claude/agents/frontend.md +65 -65
  88. package/template/.claude/agents/fullstack.md +91 -90
  89. package/template/.claude/agents/initiator.md +74 -74
  90. package/template/.claude/agents/logger.md +143 -143
  91. package/template/.claude/agents/manual-tester.md +108 -0
  92. package/template/.claude/agents/orchestrator.md +138 -137
  93. package/template/.claude/agents/pm.md +199 -199
  94. package/template/.claude/agents/qa.md +66 -65
  95. package/template/.claude/agents/reliability.md +48 -47
  96. package/template/.claude/agents/security.md +107 -106
  97. package/template/.claude/agents/sysarch.md +301 -301
  98. package/template/.claude/agents/tester.md +100 -100
  99. package/template/.claude/agents/toolsmith.md +77 -76
  100. package/template/.claude/agents/ux-designer.md +45 -45
  101. package/template/.claude/commands/build-feature.md +22 -22
  102. package/template/.claude/commands/build-prototype.md +33 -33
  103. package/template/.claude/commands/daily-standup.md +16 -16
  104. package/template/.claude/commands/deliver-feature.md +17 -17
  105. package/template/.claude/commands/harden-release.md +22 -22
  106. package/template/.claude/commands/manual-test.md +19 -0
  107. package/template/.claude/commands/plan-feature.md +31 -31
  108. package/template/.claude/commands/plan-project.md +26 -26
  109. package/template/.claude/commands/release.md +19 -19
  110. package/template/.claude/commands/security-audit.md +20 -20
  111. package/template/.claude/commands/setup-workspace.md +22 -22
  112. package/template/.claude/commands/start-fix.md +19 -19
  113. package/template/.claude/commands/test-feature.md +18 -18
  114. package/template/.claude/skills/find-skills/SKILL.md +142 -142
  115. package/template/.claude/skills/penetration-testing/SKILL.md +94 -94
  116. package/template/.claude/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  117. package/template/.claude/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  118. package/template/.claude/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  119. package/template/.claude/skills/ui-ux-pro-max/SKILL.md +658 -658
  120. package/template/.claude/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  121. package/template/.claude/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  122. package/template/.claude/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  123. package/template/.claude/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  124. package/template/.claude/skills/ui-ux-pro-max/data/icons.csv +105 -105
  125. package/template/.claude/skills/ui-ux-pro-max/data/products.csv +162 -162
  126. package/template/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  127. package/template/.claude/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  128. package/template/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  129. package/template/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  130. package/template/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  131. package/template/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  132. package/template/.claude/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  133. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  134. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  135. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  136. package/template/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  137. package/template/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  138. package/template/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  139. package/template/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  140. package/template/.claude/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  141. package/template/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  142. package/template/.claude/skills/ui-ux-pro-max/data/typography.csv +74 -74
  143. package/template/.claude/skills/ui-ux-pro-max/scripts/core.py +262 -262
  144. package/template/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  145. package/template/.github/prompts/analyst.prompt.md +104 -104
  146. package/template/.github/prompts/backend.prompt.md +44 -44
  147. package/template/.github/prompts/data-architect.prompt.md +38 -38
  148. package/template/.github/prompts/devops.prompt.md +32 -32
  149. package/template/.github/prompts/discovery.prompt.md +39 -39
  150. package/template/.github/prompts/document.prompt.md +14 -14
  151. package/template/.github/prompts/explorer.prompt.md +133 -133
  152. package/template/.github/prompts/fixer.prompt.md +82 -81
  153. package/template/.github/prompts/frontend.prompt.md +60 -60
  154. package/template/.github/prompts/fullstack.prompt.md +86 -86
  155. package/template/.github/prompts/initiator.prompt.md +55 -55
  156. package/template/.github/prompts/logger.prompt.md +138 -138
  157. package/template/.github/prompts/manual-tester.prompt.md +103 -0
  158. package/template/.github/prompts/orchestrator.prompt.md +133 -133
  159. package/template/.github/prompts/pm.prompt.md +186 -186
  160. package/template/.github/prompts/qa.prompt.md +57 -57
  161. package/template/.github/prompts/reliability.prompt.md +44 -44
  162. package/template/.github/prompts/security.prompt.md +41 -41
  163. package/template/.github/prompts/sysarch.prompt.md +351 -351
  164. package/template/.github/prompts/tester.prompt.md +107 -107
  165. package/template/.github/prompts/toolsmith.prompt.md +46 -46
  166. package/template/.github/prompts/ux-designer.prompt.md +41 -41
  167. package/template/.opencode/agents/analyst.md +108 -108
  168. package/template/.opencode/agents/backend.md +61 -61
  169. package/template/.opencode/agents/data-architect.md +43 -43
  170. package/template/.opencode/agents/devops.md +44 -44
  171. package/template/.opencode/agents/discovery.md +51 -51
  172. package/template/.opencode/agents/document.md +51 -51
  173. package/template/.opencode/agents/explorer.md +137 -137
  174. package/template/.opencode/agents/fixer.md +86 -85
  175. package/template/.opencode/agents/frontend.md +64 -64
  176. package/template/.opencode/agents/fullstack.md +90 -89
  177. package/template/.opencode/agents/initiator.md +74 -74
  178. package/template/.opencode/agents/logger.md +142 -142
  179. package/template/.opencode/agents/manual-tester.md +107 -0
  180. package/template/.opencode/agents/orchestrator.md +137 -133
  181. package/template/.opencode/agents/pm.md +199 -199
  182. package/template/.opencode/agents/qa.md +66 -65
  183. package/template/.opencode/agents/reliability.md +48 -48
  184. package/template/.opencode/agents/security.md +107 -107
  185. package/template/.opencode/agents/sysarch.md +301 -301
  186. package/template/.opencode/agents/tester.md +100 -100
  187. package/template/.opencode/agents/toolsmith.md +77 -77
  188. package/template/.opencode/agents/ux-designer.md +45 -45
  189. package/template/.opencode/commands/build-feature.md +21 -21
  190. package/template/.opencode/commands/build-prototype.md +32 -32
  191. package/template/.opencode/commands/daily-standup.md +16 -16
  192. package/template/.opencode/commands/deliver-feature.md +16 -16
  193. package/template/.opencode/commands/harden-release.md +21 -21
  194. package/template/.opencode/commands/manual-test.md +18 -0
  195. package/template/.opencode/commands/plan-feature.md +30 -30
  196. package/template/.opencode/commands/plan-project.md +25 -25
  197. package/template/.opencode/commands/release.md +18 -18
  198. package/template/.opencode/commands/security-audit.md +19 -19
  199. package/template/.opencode/commands/setup-workspace.md +21 -21
  200. package/template/.opencode/commands/start-fix.md +18 -18
  201. package/template/.opencode/commands/test-feature.md +17 -17
  202. package/template/.opencode/skills/penetration-testing/SKILL.md +94 -94
  203. package/template/.opencode/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  204. package/template/.opencode/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  205. package/template/.opencode/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  206. package/template/.opencode/skills/ui-ux-pro-max/SKILL.md +658 -658
  207. package/template/.opencode/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  208. package/template/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  209. package/template/.opencode/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  210. package/template/.opencode/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  211. package/template/.opencode/skills/ui-ux-pro-max/data/icons.csv +105 -105
  212. package/template/.opencode/skills/ui-ux-pro-max/data/products.csv +162 -162
  213. package/template/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  214. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  215. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  216. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  217. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  218. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  219. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  220. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  221. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  222. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  223. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  224. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  225. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  226. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  227. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  228. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  229. package/template/.opencode/skills/ui-ux-pro-max/data/typography.csv +74 -74
  230. package/template/.opencode/skills/ui-ux-pro-max/scripts/core.py +262 -262
  231. package/template/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  232. package/template/AGENT_PERSONAS.md +595 -551
  233. package/template/GIT_STRUCTURE_GUIDE.md +270 -270
  234. package/template/PROJECT_README.example.md +81 -81
  235. package/template/QUICK-START.md +134 -131
  236. package/template/README.md +1942 -1919
  237. package/template/_gitignore +138 -138
  238. package/template/agent/workflows/_shared/change-management.md +70 -70
  239. package/template/agent/workflows/_shared/git-branch-management.md +25 -25
  240. package/template/agent/workflows/_shared/phases.md +88 -88
  241. package/template/agent/workflows/_shared/state-management.md +87 -87
  242. package/template/agent/workflows/_shared/work-depth.md +46 -46
  243. package/template/agent/workflows/analyst.md +104 -104
  244. package/template/agent/workflows/backend.md +61 -61
  245. package/template/agent/workflows/data-architect.md +43 -43
  246. package/template/agent/workflows/devops.md +44 -44
  247. package/template/agent/workflows/discovery.md +51 -51
  248. package/template/agent/workflows/document.md +51 -51
  249. package/template/agent/workflows/explorer.md +133 -133
  250. package/template/agent/workflows/fixer.md +82 -81
  251. package/template/agent/workflows/frontend.md +60 -60
  252. package/template/agent/workflows/fullstack.md +86 -86
  253. package/template/agent/workflows/initiator.md +74 -74
  254. package/template/agent/workflows/logger.md +138 -138
  255. package/template/agent/workflows/manual-tester.md +103 -0
  256. package/template/agent/workflows/orchestrator.md +133 -133
  257. package/template/agent/workflows/pm.md +199 -199
  258. package/template/agent/workflows/qa.md +66 -66
  259. package/template/agent/workflows/reliability.md +48 -48
  260. package/template/agent/workflows/security.md +107 -107
  261. package/template/agent/workflows/sysarch.md +301 -301
  262. package/template/agent/workflows/tester.md +100 -100
  263. package/template/agent/workflows/toolsmith.md +77 -77
  264. package/template/agent/workflows/ux-designer.md +45 -45
  265. package/template/codes/.gitkeep +1 -1
  266. package/template/project_overview_example.md +54 -54
  267. package/template/schemas/adr.template.md +36 -36
  268. package/template/schemas/changelog.template.md +34 -34
  269. package/template/schemas/data-model.template.md +57 -57
  270. package/template/schemas/design-system.template.md +63 -63
  271. package/template/schemas/dev_log.template.md +20 -20
  272. package/template/schemas/product-ci.template.yml +50 -50
  273. package/template/schemas/requirements.template.md +64 -64
  274. package/template/schemas/security-standards.template.md +58 -58
  275. package/template/schemas/security_report.template.md +89 -89
  276. package/template/schemas/specification.template.md +71 -71
  277. package/template/schemas/style_guide.template.md +29 -29
  278. package/template/schemas/task_list.template.md +28 -28
  279. package/template/schemas/workspace-manifest.template.json +24 -24
  280. package/template/schemas/workspace-registry.json +95 -95
  281. package/template/skills-lock.json +11 -11
  282. package/template/specifications/.gitkeep +3 -3
  283. package/template/state/knowledge_base/.gitkeep +1 -1
  284. package/template/state/knowledge_base/requirements/.gitkeep +1 -1
  285. package/template/tests/.gitkeep +1 -1
  286. package/template/.claude/settings.local.json +0 -44
@@ -1,138 +1,138 @@
1
- # {{projectName}} .gitignore
2
- # Generated by create-vasvibe
3
-
4
- # ==========================================
5
- # Project Folders to Ignore
6
- # ==========================================
7
- # Ignore all files in codes folder (development code)
8
- codes/*
9
- !codes/.gitkeep
10
-
11
-
12
- .mcp.json
13
- opencode.json
14
-
15
- # ==========================================
16
- # OS Files
17
- # ==========================================
18
- # macOS
19
- .DS_Store
20
- .AppleDouble
21
- .LSOverride
22
- ._*
23
-
24
- # Windows
25
- Thumbs.db
26
- ehthumbs.db
27
- Desktop.ini
28
- $RECYCLE.BIN/
29
-
30
- # Linux
31
- *~
32
- .directory
33
-
34
- # ==========================================
35
- # IDE & Editor Files
36
- # ==========================================
37
- # VS Code
38
- .vscode/
39
- *.code-workspace
40
-
41
- # JetBrains IDEs (WebStorm, IntelliJ, etc.)
42
- .idea/
43
- *.iml
44
- *.iws
45
- *.ipr
46
-
47
- # Sublime Text
48
- *.sublime-project
49
- *.sublime-workspace
50
-
51
- # Vim
52
- *.swp
53
- *.swo
54
-
55
- # Emacs
56
- \#*\#
57
- .\#*
58
-
59
- # ==========================================
60
- # Node.js
61
- # ==========================================
62
- node_modules/
63
- npm-debug.log*
64
- yarn-debug.log*
65
- yarn-error.log*
66
- lerna-debug.log*
67
- .pnpm-debug.log*
68
-
69
- # ==========================================
70
- # Frontend frameworks
71
- # ==========================================
72
- .next/
73
- out/
74
- build/
75
- dist/
76
-
77
- # ==========================================
78
- # Environment Variables
79
- # ==========================================
80
- .env
81
- .env.local
82
- .env.development.local
83
- .env.test.local
84
- .env.production.local
85
- .env*.local
86
-
87
- # ==========================================
88
- # Database
89
- # ==========================================
90
- *.sqlite
91
- *.sqlite3
92
- *.db
93
-
94
- # Prisma
95
- prisma/migrations/
96
- !prisma/migrations/.gitkeep
97
-
98
- # ==========================================
99
- # Logs
100
- # ==========================================
101
- *.log
102
-
103
- # ==========================================
104
- # Testing
105
- # ==========================================
106
- coverage/
107
- .nyc_output/
108
- *.lcov
109
-
110
- # ==========================================
111
- # Build & Cache
112
- # ==========================================
113
- .cache/
114
- .parcel-cache/
115
- .turbo/
116
- *.tsbuildinfo
117
-
118
- # ==========================================
119
- # Dependencies
120
- # ==========================================
121
- jspm_packages/
122
-
123
- # ==========================================
124
- # Miscellaneous
125
- # ==========================================
126
- .vercel
127
- .netlify
128
- .firebase/
129
-
130
- # Temporary files
131
- *.tmp
132
- *.temp
133
- tmp/
134
- temp/
135
-
136
- # OpenCode local artifacts
137
- .opencode/node_modules/
138
- .opencode/bun.lock
1
+ # {{projectName}} .gitignore
2
+ # Generated by create-vasvibe
3
+
4
+ # ==========================================
5
+ # Project Folders to Ignore
6
+ # ==========================================
7
+ # Ignore all files in codes folder (development code)
8
+ codes/*
9
+ !codes/.gitkeep
10
+
11
+
12
+ .mcp.json
13
+ opencode.json
14
+
15
+ # ==========================================
16
+ # OS Files
17
+ # ==========================================
18
+ # macOS
19
+ .DS_Store
20
+ .AppleDouble
21
+ .LSOverride
22
+ ._*
23
+
24
+ # Windows
25
+ Thumbs.db
26
+ ehthumbs.db
27
+ Desktop.ini
28
+ $RECYCLE.BIN/
29
+
30
+ # Linux
31
+ *~
32
+ .directory
33
+
34
+ # ==========================================
35
+ # IDE & Editor Files
36
+ # ==========================================
37
+ # VS Code
38
+ .vscode/
39
+ *.code-workspace
40
+
41
+ # JetBrains IDEs (WebStorm, IntelliJ, etc.)
42
+ .idea/
43
+ *.iml
44
+ *.iws
45
+ *.ipr
46
+
47
+ # Sublime Text
48
+ *.sublime-project
49
+ *.sublime-workspace
50
+
51
+ # Vim
52
+ *.swp
53
+ *.swo
54
+
55
+ # Emacs
56
+ \#*\#
57
+ .\#*
58
+
59
+ # ==========================================
60
+ # Node.js
61
+ # ==========================================
62
+ node_modules/
63
+ npm-debug.log*
64
+ yarn-debug.log*
65
+ yarn-error.log*
66
+ lerna-debug.log*
67
+ .pnpm-debug.log*
68
+
69
+ # ==========================================
70
+ # Frontend frameworks
71
+ # ==========================================
72
+ .next/
73
+ out/
74
+ build/
75
+ dist/
76
+
77
+ # ==========================================
78
+ # Environment Variables
79
+ # ==========================================
80
+ .env
81
+ .env.local
82
+ .env.development.local
83
+ .env.test.local
84
+ .env.production.local
85
+ .env*.local
86
+
87
+ # ==========================================
88
+ # Database
89
+ # ==========================================
90
+ *.sqlite
91
+ *.sqlite3
92
+ *.db
93
+
94
+ # Prisma
95
+ prisma/migrations/
96
+ !prisma/migrations/.gitkeep
97
+
98
+ # ==========================================
99
+ # Logs
100
+ # ==========================================
101
+ *.log
102
+
103
+ # ==========================================
104
+ # Testing
105
+ # ==========================================
106
+ coverage/
107
+ .nyc_output/
108
+ *.lcov
109
+
110
+ # ==========================================
111
+ # Build & Cache
112
+ # ==========================================
113
+ .cache/
114
+ .parcel-cache/
115
+ .turbo/
116
+ *.tsbuildinfo
117
+
118
+ # ==========================================
119
+ # Dependencies
120
+ # ==========================================
121
+ jspm_packages/
122
+
123
+ # ==========================================
124
+ # Miscellaneous
125
+ # ==========================================
126
+ .vercel
127
+ .netlify
128
+ .firebase/
129
+
130
+ # Temporary files
131
+ *.tmp
132
+ *.temp
133
+ tmp/
134
+ temp/
135
+
136
+ # OpenCode local artifacts
137
+ .opencode/node_modules/
138
+ .opencode/bun.lock
@@ -1,70 +1,70 @@
1
- # Change Management — "No Silent Changes" (Shared)
2
-
3
- Aturan komunikasi rigid yang WAJIB diikuti **setiap agen**. Tujuannya: tidak ada perubahan yang hilang jejak. Setiap perubahan yang diminta user — sekecil apapun — harus terdokumentasi di acuan yang benar dan agen hilir harus tahu.
4
-
5
- ---
6
-
7
- ## Prinsip Inti
8
-
9
- > **Jika kamu menerima perubahan, kamu tidak boleh hanya mengerjakannya — kamu wajib menuliskannya.**
10
-
11
- Kode yang berubah tanpa acuannya ikut berubah = **utang yang dilarang**.
12
-
13
- ---
14
-
15
- ## Protokol Wajib (4 Langkah)
16
-
17
- Saat user (atau agen lain) meminta perubahan, SEBELUM menganggap selesai:
18
-
19
- 1. **IDENTIFY** — Tentukan dokumen acuan mana yang terdampak:
20
- - Perubahan kebutuhan/scope → `specifications/[file].md`
21
- - Perubahan data model → `state/knowledge_base/data-model/`
22
- - Perubahan arsitektur → `state/knowledge_base/architecture/`
23
- - Perubahan UI/desain → `state/knowledge_base/design-system/`
24
- - Perubahan security → `state/knowledge_base/security/`
25
- - Perubahan **API Contract** → spec terkait **DAN** notify Backend + Frontend Engineer
26
-
27
- 2. **UPDATE** — Edit dokumen acuan tersebut + tambahkan baris di **Revision History**-nya:
28
- ```
29
- | [YYYY-MM-DD HH:MM] | [agen] | [ringkasan perubahan] | requested by user |
30
- ```
31
-
32
- 3. **RECORD ADR** — Jika perubahan berdampak pada keputusan desain/arsitektur, buat **Architecture Decision Record**:
33
- - Path: `state/knowledge_base/decisions/ADR-[NNN]-[judul-singkat].md`
34
- - Gunakan template `schemas/adr.template.md`
35
-
36
- 4. **NOTIFY** — Tulis `state/agent_handoff.json` agar agen hilir tahu ada perubahan acuan:
37
- ```json
38
- {
39
- "from_agent": "[agen]",
40
- "to_agent": "[agen terdampak / 'all']",
41
- "task_id": "[TASK-ID]",
42
- "timestamp": "[YYYY-MM-DD HH:MM]",
43
- "status": "spec_changed",
44
- "notes": "API Contract POST /bookings berubah: tambah field 'voucher_code'",
45
- "artifacts": ["specifications/004_booking.md", "state/knowledge_base/decisions/ADR-007-voucher.md"]
46
- }
47
- ```
48
-
49
- ---
50
-
51
- ## Kapan Wajib ADR?
52
-
53
- Buat ADR untuk keputusan yang **sulit/mahal diubah** nanti:
54
- - Ganti library/framework inti
55
- - Perubahan skema database
56
- - Perubahan kontrak API yang breaking
57
- - Perubahan strategi auth/security
58
- - Trade-off arsitektur signifikan
59
-
60
- Perubahan kecil (copy text, warna minor) cukup Revision History di doc terkait — tidak perlu ADR.
61
-
62
- ---
63
-
64
- ## Anti-Pattern (DILARANG)
65
-
66
- - ❌ "User minta ubah validasi, langsung ubah kode saja." → Spec tidak ter-update, Tester tes hal yang salah.
67
- - ❌ "Aku ubah response API, nanti Frontend nyusul." → FE tidak di-notify, integrasi pecah.
68
- - ❌ "Perubahan kecil, tidak perlu dicatat." → Akumulasi drift, knowledge base jadi bohong.
69
-
70
- > 📎 Lihat fase & kepemilikan dokumen di `agent/workflows/_shared/phases.md`.
1
+ # Change Management — "No Silent Changes" (Shared)
2
+
3
+ Aturan komunikasi rigid yang WAJIB diikuti **setiap agen**. Tujuannya: tidak ada perubahan yang hilang jejak. Setiap perubahan yang diminta user — sekecil apapun — harus terdokumentasi di acuan yang benar dan agen hilir harus tahu.
4
+
5
+ ---
6
+
7
+ ## Prinsip Inti
8
+
9
+ > **Jika kamu menerima perubahan, kamu tidak boleh hanya mengerjakannya — kamu wajib menuliskannya.**
10
+
11
+ Kode yang berubah tanpa acuannya ikut berubah = **utang yang dilarang**.
12
+
13
+ ---
14
+
15
+ ## Protokol Wajib (4 Langkah)
16
+
17
+ Saat user (atau agen lain) meminta perubahan, SEBELUM menganggap selesai:
18
+
19
+ 1. **IDENTIFY** — Tentukan dokumen acuan mana yang terdampak:
20
+ - Perubahan kebutuhan/scope → `specifications/[file].md`
21
+ - Perubahan data model → `state/knowledge_base/data-model/`
22
+ - Perubahan arsitektur → `state/knowledge_base/architecture/`
23
+ - Perubahan UI/desain → `state/knowledge_base/design-system/`
24
+ - Perubahan security → `state/knowledge_base/security/`
25
+ - Perubahan **API Contract** → spec terkait **DAN** notify Backend + Frontend Engineer
26
+
27
+ 2. **UPDATE** — Edit dokumen acuan tersebut + tambahkan baris di **Revision History**-nya:
28
+ ```
29
+ | [YYYY-MM-DD HH:MM] | [agen] | [ringkasan perubahan] | requested by user |
30
+ ```
31
+
32
+ 3. **RECORD ADR** — Jika perubahan berdampak pada keputusan desain/arsitektur, buat **Architecture Decision Record**:
33
+ - Path: `state/knowledge_base/decisions/ADR-[NNN]-[judul-singkat].md`
34
+ - Gunakan template `schemas/adr.template.md`
35
+
36
+ 4. **NOTIFY** — Tulis `state/agent_handoff.json` agar agen hilir tahu ada perubahan acuan:
37
+ ```json
38
+ {
39
+ "from_agent": "[agen]",
40
+ "to_agent": "[agen terdampak / 'all']",
41
+ "task_id": "[TASK-ID]",
42
+ "timestamp": "[YYYY-MM-DD HH:MM]",
43
+ "status": "spec_changed",
44
+ "notes": "API Contract POST /bookings berubah: tambah field 'voucher_code'",
45
+ "artifacts": ["specifications/004_booking.md", "state/knowledge_base/decisions/ADR-007-voucher.md"]
46
+ }
47
+ ```
48
+
49
+ ---
50
+
51
+ ## Kapan Wajib ADR?
52
+
53
+ Buat ADR untuk keputusan yang **sulit/mahal diubah** nanti:
54
+ - Ganti library/framework inti
55
+ - Perubahan skema database
56
+ - Perubahan kontrak API yang breaking
57
+ - Perubahan strategi auth/security
58
+ - Trade-off arsitektur signifikan
59
+
60
+ Perubahan kecil (copy text, warna minor) cukup Revision History di doc terkait — tidak perlu ADR.
61
+
62
+ ---
63
+
64
+ ## Anti-Pattern (DILARANG)
65
+
66
+ - ❌ "User minta ubah validasi, langsung ubah kode saja." → Spec tidak ter-update, Tester tes hal yang salah.
67
+ - ❌ "Aku ubah response API, nanti Frontend nyusul." → FE tidak di-notify, integrasi pecah.
68
+ - ❌ "Perubahan kecil, tidak perlu dicatat." → Akumulasi drift, knowledge base jadi bohong.
69
+
70
+ > 📎 Lihat fase & kepemilikan dokumen di `agent/workflows/_shared/phases.md`.
@@ -1,25 +1,25 @@
1
- # Git Branch Management (Shared)
2
-
3
- ## Rules
4
- 1. **NEVER** commit/push langsung ke `main` atau `development`.
5
- 2. **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
6
- - **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
7
- - **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
8
- 3. **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
9
- 4. **Konvensi Nama Branch:** gunakan format `feature/nama-fitur`, `fix/nama-bug`, atau `test/nama-fitur`.
10
- 5. **Konvensi Commit (CRITICAL):** Wajib menggunakan **Conventional Commits** format:
11
- - `feat: [pesan]` untuk fitur baru.
12
- - `fix: [pesan]` untuk bug fix.
13
- - `chore: [pesan]` untuk update tooling/config.
14
- - `docs: [pesan]` untuk perubahan dokumentasi.
15
- - `test: [pesan]` untuk penambahan test.
16
-
17
- ## Steps
18
- 1. **Cek branch saat ini** dengan `git -C codes/ branch --show-current`.
19
- 2. **Cek apakah ada perubahan yang belum di-commit** dengan `git -C codes/ status`.
20
- - **Jika ada perubahan belum ter-commit:** HENTIKAN pekerjaan. Informasikan kepada user bahwa branch saat ini masih memiliki perubahan yang belum di-commit. Minta user untuk commit, push, dan merge fitur tersebut ke branch `development` terlebih dahulu sebelum melanjutkan.
21
- 3. **Jika working tree clean:**
22
- - Pindah ke branch `development`: `git -C codes/ checkout development`.
23
- - Pull perubahan terbaru: `git -C codes/ pull origin development`.
24
- - Buat atau pindah ke branch yang sesuai dengan task: `git -C codes/ checkout -b [type]/[nama-task]`.
25
- 4. **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
1
+ # Git Branch Management (Shared)
2
+
3
+ ## Rules
4
+ 1. **NEVER** commit/push langsung ke `main` atau `development`.
5
+ 2. **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
6
+ - **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
7
+ - **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
8
+ 3. **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
9
+ 4. **Konvensi Nama Branch:** gunakan format `feature/nama-fitur`, `fix/nama-bug`, atau `test/nama-fitur`.
10
+ 5. **Konvensi Commit (CRITICAL):** Wajib menggunakan **Conventional Commits** format:
11
+ - `feat: [pesan]` untuk fitur baru.
12
+ - `fix: [pesan]` untuk bug fix.
13
+ - `chore: [pesan]` untuk update tooling/config.
14
+ - `docs: [pesan]` untuk perubahan dokumentasi.
15
+ - `test: [pesan]` untuk penambahan test.
16
+
17
+ ## Steps
18
+ 1. **Cek branch saat ini** dengan `git -C codes/ branch --show-current`.
19
+ 2. **Cek apakah ada perubahan yang belum di-commit** dengan `git -C codes/ status`.
20
+ - **Jika ada perubahan belum ter-commit:** HENTIKAN pekerjaan. Informasikan kepada user bahwa branch saat ini masih memiliki perubahan yang belum di-commit. Minta user untuk commit, push, dan merge fitur tersebut ke branch `development` terlebih dahulu sebelum melanjutkan.
21
+ 3. **Jika working tree clean:**
22
+ - Pindah ke branch `development`: `git -C codes/ checkout development`.
23
+ - Pull perubahan terbaru: `git -C codes/ pull origin development`.
24
+ - Buat atau pindah ke branch yang sesuai dengan task: `git -C codes/ checkout -b [type]/[nama-task]`.
25
+ 4. **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
@@ -1,88 +1,88 @@
1
- # Phases (Shared)
2
-
3
- Project VasVibe dikerjakan dalam **4 fase** dengan gerbang (gate) human di tiap transisi. Setiap agen WAJIB tahu fase mana yang sedang berjalan dan tidak boleh melompati gerbang tanpa approval.
4
-
5
- ---
6
-
7
- ## Fase 1 — Perencanaan (Planning)
8
-
9
- **Tujuan:** Menghasilkan **blueprint** (dokumen acuan) yang dipakai semua fase berikutnya.
10
-
11
- | Agen | Output (acuan) |
12
- |------|----------------|
13
- | **Discovery** (paling hulu, INTERAKTIF) | `state/knowledge_base/requirements/requirements.md` |
14
- | Initiator | `project_overview.md` (sintesis dari requirements) |
15
- | **Toolsmith** (setelah tech stack diketahui) | `state/workspace-manifest.json` + config MCP per tool |
16
- | SysArch | `state/knowledge_base/architecture/` |
17
- | Data Architect | `state/knowledge_base/data-model/` |
18
- | UX Designer | `state/knowledge_base/design-system/` |
19
- | Security (Mode Standards) | `state/knowledge_base/security/security-standards.md` |
20
- | Analyst | `specifications/` (user story + **API Contract**) |
21
-
22
- **Discovery dulu:** Sebelum dokumen apapun, Discovery mewawancarai human (tanya-jawab) untuk menggali kebutuhan. Karena interaktif, **Discovery berjalan di thread utama**, bukan sebagai subagent. Outputnya (`requirements.md`) di-sign-off human, lalu jadi input Initiator.
23
-
24
- **Gate:** Human menyetujui blueprint. **API Contract wajib final** — ini seam antara Backend & Frontend.
25
-
26
- ---
27
-
28
- ## Fase 2 — Pengerjaan (Implementation)
29
-
30
- **Tujuan:** Mengubah blueprint menjadi kode yang sudah di-review.
31
-
32
- | Agen | Peran |
33
- |------|-------|
34
- | Analyst (spec-lock) | Refine AC detail just-in-time sebelum coding |
35
- | Backend Engineer | API, business logic, akses DB — honor API Contract |
36
- | Frontend Engineer | UI/UX, frontend — honor API Contract, ikuti design-system |
37
- | Fullstack (fast only) | Fullstack tunggal — **hanya saat `depth=fast`** sebagai pengganti FE+BE |
38
- | QA | Static review + unit test sebelum lanjut |
39
-
40
- **Boundary:** API Contract menyatukan BE & FE — keduanya kerja paralel terhadap kontrak yang sama.
41
- **Gate:** Code review lulus.
42
-
43
- ---
44
-
45
- ## Fase 3 — Testing
46
-
47
- **Tujuan:** Verifikasi fungsional terhadap spesifikasi.
48
-
49
- | Agen | Peran |
50
- |------|-------|
51
- | Tester | E2E test berdasarkan `specifications/` |
52
- | Fixer | Perbaiki bug temuan (loop dengan Tester sampai hijau) |
53
-
54
- **Gate:** Semua test fungsional hijau.
55
-
56
- ---
57
-
58
- ## Fase 4 — Hardening
59
-
60
- **Tujuan:** Memastikan ketangguhan & keamanan sebelum produksi. **Dijalankan per-release**, bukan per-fitur.
61
-
62
- | Agen | Peran |
63
- |------|-------|
64
- | Security | Pen-test, OWASP audit, security fix (Mode B/C/D) |
65
- | Reliability Engineer | Performance, resilience, error handling, load test |
66
- | Fixer | Remediasi temuan |
67
-
68
- **Gate:** Sign-off siap produksi.
69
-
70
- ---
71
-
72
- ## Cross-Phase (Lintas Fase)
73
-
74
- | Agen | Peran |
75
- |------|-------|
76
- | PM | Koordinasi task & status di semua fase |
77
- | Orchestrator | Menjalankan pipeline & menjaga gerbang fase |
78
- | **Toolsmith** | Provisioning workspace agentik (skill + MCP); re-apply saat pindah tool AI |
79
- | DevOps | CI/CD, containerization (Implementation & Hardening) |
80
- | Document | Dokumentasi (akhir siklus) |
81
-
82
- ---
83
-
84
- ## Aturan Fase
85
-
86
- - **Tidak boleh lompat gerbang** tanpa human approval.
87
- - Setiap output fase adalah **acuan** untuk fase berikutnya — perubahan harus mengikuti `_shared/change-management.md`.
88
- - Fase boleh iteratif: jika Testing menemukan cacat desain, kembali ke Perencanaan via change-management, bukan tambal diam-diam.
1
+ # Phases (Shared)
2
+
3
+ Project VasVibe dikerjakan dalam **4 fase** dengan gerbang (gate) human di tiap transisi. Setiap agen WAJIB tahu fase mana yang sedang berjalan dan tidak boleh melompati gerbang tanpa approval.
4
+
5
+ ---
6
+
7
+ ## Fase 1 — Perencanaan (Planning)
8
+
9
+ **Tujuan:** Menghasilkan **blueprint** (dokumen acuan) yang dipakai semua fase berikutnya.
10
+
11
+ | Agen | Output (acuan) |
12
+ |------|----------------|
13
+ | **Discovery** (paling hulu, INTERAKTIF) | `state/knowledge_base/requirements/requirements.md` |
14
+ | Initiator | `project_overview.md` (sintesis dari requirements) |
15
+ | **Toolsmith** (setelah tech stack diketahui) | `state/workspace-manifest.json` + config MCP per tool |
16
+ | SysArch | `state/knowledge_base/architecture/` |
17
+ | Data Architect | `state/knowledge_base/data-model/` |
18
+ | UX Designer | `state/knowledge_base/design-system/` |
19
+ | Security (Mode Standards) | `state/knowledge_base/security/security-standards.md` |
20
+ | Analyst | `specifications/` (user story + **API Contract**) |
21
+
22
+ **Discovery dulu:** Sebelum dokumen apapun, Discovery mewawancarai human (tanya-jawab) untuk menggali kebutuhan. Karena interaktif, **Discovery berjalan di thread utama**, bukan sebagai subagent. Outputnya (`requirements.md`) di-sign-off human, lalu jadi input Initiator.
23
+
24
+ **Gate:** Human menyetujui blueprint. **API Contract wajib final** — ini seam antara Backend & Frontend.
25
+
26
+ ---
27
+
28
+ ## Fase 2 — Pengerjaan (Implementation)
29
+
30
+ **Tujuan:** Mengubah blueprint menjadi kode yang sudah di-review.
31
+
32
+ | Agen | Peran |
33
+ |------|-------|
34
+ | Analyst (spec-lock) | Refine AC detail just-in-time sebelum coding |
35
+ | Backend Engineer | API, business logic, akses DB — honor API Contract |
36
+ | Frontend Engineer | UI/UX, frontend — honor API Contract, ikuti design-system |
37
+ | Fullstack (fast only) | Fullstack tunggal — **hanya saat `depth=fast`** sebagai pengganti FE+BE |
38
+ | QA | Static review + unit test sebelum lanjut |
39
+
40
+ **Boundary:** API Contract menyatukan BE & FE — keduanya kerja paralel terhadap kontrak yang sama.
41
+ **Gate:** Code review lulus.
42
+
43
+ ---
44
+
45
+ ## Fase 3 — Testing
46
+
47
+ **Tujuan:** Verifikasi fungsional terhadap spesifikasi.
48
+
49
+ | Agen | Peran |
50
+ |------|-------|
51
+ | Tester | E2E test berdasarkan `specifications/` |
52
+ | Fixer | Perbaiki bug temuan (loop dengan Tester sampai hijau) |
53
+
54
+ **Gate:** Semua test fungsional hijau.
55
+
56
+ ---
57
+
58
+ ## Fase 4 — Hardening
59
+
60
+ **Tujuan:** Memastikan ketangguhan & keamanan sebelum produksi. **Dijalankan per-release**, bukan per-fitur.
61
+
62
+ | Agen | Peran |
63
+ |------|-------|
64
+ | Security | Pen-test, OWASP audit, security fix (Mode B/C/D) |
65
+ | Reliability Engineer | Performance, resilience, error handling, load test |
66
+ | Fixer | Remediasi temuan |
67
+
68
+ **Gate:** Sign-off siap produksi.
69
+
70
+ ---
71
+
72
+ ## Cross-Phase (Lintas Fase)
73
+
74
+ | Agen | Peran |
75
+ |------|-------|
76
+ | PM | Koordinasi task & status di semua fase |
77
+ | Orchestrator | Menjalankan pipeline & menjaga gerbang fase |
78
+ | **Toolsmith** | Provisioning workspace agentik (skill + MCP); re-apply saat pindah tool AI |
79
+ | DevOps | CI/CD, containerization (Implementation & Hardening) |
80
+ | Document | Dokumentasi (akhir siklus) |
81
+
82
+ ---
83
+
84
+ ## Aturan Fase
85
+
86
+ - **Tidak boleh lompat gerbang** tanpa human approval.
87
+ - Setiap output fase adalah **acuan** untuk fase berikutnya — perubahan harus mengikuti `_shared/change-management.md`.
88
+ - Fase boleh iteratif: jika Testing menemukan cacat desain, kembali ke Perencanaan via change-management, bukan tambal diam-diam.