Prod: expose vacancy applicant state and harden response access - #714
Merged
TThanos3000 merged 1 commit intoAug 28, 2026
Merged
Conversation
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.
Source
Semantic production port of the missing parts from dev PR #712. Base:
5af826bbca59eede0183415032bf7de57a900673.No
dev -> mastermerge and no merge-commit cherry-pick were used.What was missing in master
GET /vacancies/{id}/:has_responded,can_respond,can_manage_responses.GET /projects/{projectId}/responses/.What was already in master and was preserved
request.user, duplicate/member/file validation.Vacancy.city.Tests
Added production regressions for applicant state, leader/staff/superuser management, collaborator/outsider denial, safe legacy project responses, and existing create/manager contracts.
Local results:
git diff --check— passed.python -m compileallfor changed files — passed.python manage.py check --tag models— passed.makemigrations --check --dry-run --skip-checks—No changes detected.localhost:5432.gobject-2.0-0library.projects/views.pyretains a pre-existingorigin/masterBlack/Flake8 baseline issue outside this PR's changed lines; no unrelated formatting was included.GitHub PostgreSQL CI will verify the PostgreSQL vendor,
select_for_update, migrations, targeted locking tests and the full backend suite.Scope guard
No migrations, frontend, workflows, deploy or Docker changes. Vacancy catalog filtering,
get_public_vacancies_queryset,datetime_created/date_create_time, list-card timestamps and list-button behavior are intentionally unchanged.