Current
Chain page form has: storyline dropdown + content textarea.
chainPlot contract call sends: (storylineId, contentCID, contentHash)
Change
Add a "Chapter Title" text input above the content textarea.
UI
- Label: "Chapter Title"
- Placeholder: "e.g. The Silent Storm"
- Max length: 100 characters
- Character counter: "42 / 100 chars"
- Required field (cannot submit without title)
Contract call update
After #184 deploys the updated contract:
writeContractAsync({
functionName: "chainPlot",
args: [storylineId, title, contentCID, contentHash],
})
IPFS metadata
Optionally include title in IPFS upload payload for redundancy.
Acceptance Criteria
Blocked by: #184 (contract update)
Part of: Phase 9 Epic (#183)
Current
Chain page form has: storyline dropdown + content textarea.
chainPlotcontract call sends: (storylineId, contentCID, contentHash)Change
Add a "Chapter Title" text input above the content textarea.
UI
Contract call update
After #184 deploys the updated contract:
IPFS metadata
Optionally include title in IPFS upload payload for redundancy.
Acceptance Criteria
Blocked by: #184 (contract update)
Part of: Phase 9 Epic (#183)