Applying from a listing: the tags help points to a 'box below' that is not there, and typed tags are dropped #408
Labels
No labels
accessibility
authentication
breaking change
bug
documentation
enhancement
interface
internationalisation
observability
performance
security
tier
1
tier
2
tier
3
tier/4
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo#408
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found on 2026-09-29 in a read-only review of postulo at
95348908d, reading the three pages that useApplicationDetailsFormand posting to the listing's Apply page with the test client.Checked again on 2026-10-01 against
mainat0a5cad587: still present.The Apply page of a listing uses the same form as the intake page, but draws its tags as a plain field and saves only the ticked ones. The help text under the field still says "New ones go in the box below", and there is no box, so a person applying from a listing cannot add a new tag there and is told that they can.
templates/jobs/listing_apply.html:40(<c-field :field="form.tags" />);jobs/listing_views.py:319inListingApplyView.post(application.tags.set(form.cleaned_data["tags"])); the help text atapplications/forms.py:50(APPLICATION_HELP["tags"]); thenew_tagsfield andchosen_tags()atapplications/forms.py:272-292.GET /listings/<pk>/apply/contains "New ones go in the box below" and noname="new_tags"input. APOSTwithnew_tags=Urgentrecords the application with no tags. The intake page (applications/application_intake.html:63) and the edit page (applications/application_form.html:27) includepartials/tags_field.html, which renders the new-tags box, andApplicationCreateViewsaves withform.chosen_tags()(applications/views.py:429).partials/tags_field.htmlexists so that the pages showing tags "cannot drift" (#139); this third page was added without it and drifted.partials/tags_field.htmlin place of thec-fieldatlisting_apply.html:40, and save withapplication.tags.set(form.chosen_tags())inListingApplyView.post, asApplicationCreateViewdoes.Done when
tests/test_labels.py(or the listing tests) asserts that the listing's Apply page rendersname="new_tags"anddata-labels-existing, and that postingnew_tags=Urgentleaves the new application tagged Urgent; both fail today.