Instruction file imported from koval01/openvk-frontend (
.cursor/rules/milestones.mdc). Copyright stays with the author.
Milestones
The product surface is /Users/yaroslav.koval/VSCodeProjects/openvk/Web/routes.yml (OpenVK Web/routes.yml). The page spec is /Users/yaroslav.koval/VSCodeProjects/openvk/Web/Presenters/templates. Do not invent a parallel backlog or a second layout.
- A milestone is a closed URL set a person can finish without a stub: permalink, API, 2007 page, privacy.
- Cluster by handler family (Wall, Photos, Audio, Admin), not by crate or component.
- Browser paths follow OpenVK grammar (
/id{num},/wall{owner}_{local},/album{o}_{n},/im/sel{num},/away.php,/method/{family}.{name}). REST under/api/v1is internal. VK API is/method/…. - Order: site chrome (including
/away.php) → wall → people → photos → audio → video → clubs → mail → search → secondary (notes/docs/replies) → gifts → support desk → reports → coins/vouchers → noSpam → bans/warnings/limits → admin → VK API. - Not product: themepacks (
/themepack/…, settings style picker, style_avatar, milkshake) and the microblog post layout. Appearance is default/dark only. /feedis friends’ wall posts, not a microblog.- 2007 is the site. External links leave through
/away.php?to=so the address bar showsaway.php(no PHP runtime).
When planning or implementing, name the URLs in the slice and the exit criteria. Do not start the next family until the current URL set is closable.