Skip to content

Add tasks: "Where am I" and "Fix the Past"#4

Open
Aalerti wants to merge 7 commits into
dsc-sgu:mainfrom
Aalerti:feature/new-tasks-final
Open

Add tasks: "Where am I" and "Fix the Past"#4
Aalerti wants to merge 7 commits into
dsc-sgu:mainfrom
Aalerti:feature/new-tasks-final

Conversation

@Aalerti
Copy link
Copy Markdown

@Aalerti Aalerti commented Apr 28, 2026

добавлены задания: "Where am I " и "Fix the Past"

Copilot AI review requested due to automatic review settings April 28, 2026 17:04
@gohy907 gohy907 review requested due to automatic review settings April 28, 2026 17:07
ARG USERNAME=student
ARG GIT_USERNAME=student
ARG GIT_EMAIL=student@alivetech.com
ENV DESCRIPTION="Произошла авария на расчетном сервере! Наш модуль вычисления орбитальных маневров (src/orbital_calc.cpp) перестал работать и выдает нулевую скорость. Долгие попытки разобраться показали, что во время недавнего масштабного рефакторинга кто-то случайно стер точное значение одной из фундаментальных физических констант, заменив её на ноль. Точно известно, что правильное многозначное число внедрялось в одном из прошлых коммитов, но история проекта забита десятками других правок, добавлением телеметрии и удалением старого кода.\nВаша задача: Найти в истории изменений коммит, в котором добавлялось правильное значение этой константы и восстановить значение в коде и сделать спасительный коммит.\nВАЖНО: в этом задании нельзя использовать git checkout <hash коммита>. Вам нужно просто заглянуть в прошлое - найти команду Git, которая позволяет ПОКАЗАТЬ содержимое коммита и изменения в нем прямо в терминале."
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"найти команду Git, которая позволяет ПОКАЗАТЬ содержимое коммита и изменения в нем прямо в терминале."

Мне кажется, что такие подсказки делать не стоит, пусть студенты сами ищут нужную команду

Comment thread tests/where-am-i/test1.sh
mkdir build && cd build
cmake .. > /dev/null 2>&1
make > /dev/null 2>&1

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не стоит делать какие-то преобразования в рабочей директории студента. Можно вынести всю вот эту логику в отдельные папки, как сделано, например, тут.

Вообще даже такое решение сейчас это костыль.

Comment thread tests/where-am-i/test1.sh
@@ -0,0 +1,24 @@
#!/bin/bash

cd "$HOME/where-am-i" || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Если уж тест выходит с ошибкой, то студент должен получить информацию об этой ошибке.

Стоит вынести проверку на сущестование папки "where-am-i" в более ранний тест.
Тесты зависят друг от друга: если не выполнился один тест, то следующие за ним скрипты тоже не будут выполняться, поэтому если вынести эту проверку в другой тест, не придётся писать эту строчку далее

Comment thread tests/where-am-i/test1.sh

cd ..
OUTPUT=$(./build/orbital_app)
if echo "$OUTPUT" | grep -q "7672"; then
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лучше делать grep по всему тому, что выдала программа, потому что студент может сфабриковать правильный результат

Comment thread tests/where-am-i/test2.sh
@@ -0,0 +1,22 @@
#!/bin/bash

cd "$HOME/where-am-i" || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

То же самое, что ранее.

@@ -0,0 +1,30 @@
#!/bin/bash

cd "$HOME/fix-the-past" || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Написал ревью к аналогичной строке где-то ниже

@@ -0,0 +1,22 @@
#!/bin/bash

cd "$HOME/fix-the-past" || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Написал ревью к аналогичной строке где-то ниже

@@ -0,0 +1,41 @@
#!/bin/bash

cd "$HOME/fix-the-past" || exit 1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Написал ревью к аналогичной строке где-то ниже

Comment on lines +11 to +12
rm -f app
g++ main.cpp -o app > /dev/null 2>&1
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Написал ревью к аналогичным строкам где-то ниже

Comment on lines +3 to +5
cd "$HOME/fix-the-past" || exit 1

rm -f app
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Написал ревью к аналогичным строкам ниже

@gohy907
Copy link
Copy Markdown
Collaborator

gohy907 commented May 1, 2026

Ещё мне кажется название "where-am-i" не очень подходит заданию, можно что-то ещё придумать

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants