feat: add public_answers property to questions - #248
Merged
Conversation
Panaetius
force-pushed
the
feat/public-answers
branch
from
August 26, 2026 09:47
a734e3e to
c85de25
Compare
`questionEntryFromEnt` never copied the field, so `ListQuestions` and `hackathon.get` always reported `false` no matter what was stored — the flag was writable but not readable.
Each question in the form builder gets a "Show answers to participants" tick-box, and a peer's profile grows a Shared answers section reading what the event opened up. A shared question says so under the field while you are answering it, and your own profile chips which of your answers are on show. Also fixes a prefill bug the flag introduced: the registration form asked for answers unfiltered and keyed them by question, so a peer's public answer overwrote your own draft.
sabinem
force-pushed
the
feat/public-answers
branch
from
August 26, 2026 15:42
c85de25 to
3d30308
Compare
The participant profile stays the participant view for everyone: an organizer opening it sees the shared answers a participant sees, not the whole form their write access would fetch.
Each question in the form builder gets a "Show answers to participants" tick-box, and a participant's profile grows a Shared answers section reading what the event opened up. A shared question says so under the field while you are answering it, and your own profile chips which of your answers are on show. The profile stays the participant view for everyone: an organizer opening it sees what a participant sees, not the whole form their write access would fetch. Also fixes a prefill bug the flag introduced — the registration form asked for answers unfiltered and keyed them by question, so a peer's public answer overwrote your own draft — and fills in the seed's h5 form, which the backend change left without the new field.
sabinem
force-pushed
the
feat/public-answers
branch
from
August 26, 2026 16:59
d2e91cb to
53ef89b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Some registration answers are worth sharing. Now an owner picks which.
As an owner, I want to decide question by question which answers the rest of my hackathon can read. My form asks four things: affiliation, T-shirt size, dietary needs, and whether you accept the code of conduct. Three are nobody's business but mine. The first is the most useful thing a participant could know about someone they're about to team up with — and until now only I could see it.
As a participant looking for a team, I got a list of names with a role chip, and a profile that said "Visible to organizers only." I was picking collaborators from a phone book.
Now the owner ticks "Show answers" to participants on the affiliation question and leaves the other three alone. The participant sees ETH Zurich on that profile. The T-shirt size stays where it was.
Two bugs fixed along the way: questionEntryFromEnt never copied PublicAnswers, so the flag was writable but always read back false. And the registration form prefilled from an unfiltered answer list keyed by question — another participant's affiliation would have appeared in your form as if you'd typed it.