<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>61259</bug_id>
          
          <creation_ts>2026-10-29 15:01:07 +0300</creation_ts>
          <short_desc>Не работает иерархия объектов при работе в удалённом доступе</short_desc>
          <delta_ts>2026-10-30 17:33:20 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>alterator-manager</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Иванов Александр Владимирович">ivanovav</reporter>
          <assigned_to name="Иван Савин">svn17</assigned_to>
          <cc>amakeenk</cc>
    
    <cc>sin</cc>
    
    <cc>svn17</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>303622</commentid>
    <comment_count>0</comment_count>
    <who name="Иванов Александр Владимирович">ivanovav</who>
    <bug_when>2026-10-29 15:01:07 +0300</bug_when>
    <thetext>Стенды, на которых воспроизводится ошибка (обновлённые до sisyphus):
  education-11.2-x86-64-kde
  education-11.2-x86-64-xfce
  kworkstation-11.4-x86-64
  workstation-11.2-x86-64 
  server-11.1-x86-64-textmode

Версия пакета:alterator-manager-0.2.3-alt1

Шаги, приводящие к ошибке:
1) Установить пакеты:
   # apt-get install -y alterator-manager alterator-manager-tools alterator-module-executor alterator-interface-diag alterator-module-remote
2) Настроить беспарольный доступ по ssh:
   # su - test -c &apos;mkdir -p ~/.ssh &amp;&amp; chmod 700 ~/.ssh&apos; &amp;&amp; \
su - test -c &apos;ssh-keygen -t ed25519 -N &quot;&quot; -f ~/.ssh/id_ed25519 -q&apos; &amp;&amp; \
cat /home/test/.ssh/id_ed25519.pub &gt;&gt; /home/test/.ssh/authorized_keys &amp;&amp; \
chmod 600 /home/test/.ssh/authorized_keys &amp;&amp; \
chown -R test:test /home/test/.ssh
3) Создание родительского и вложенного объектов:
# cat &lt;&lt;&apos;EOF&apos; &gt; /usr/share/alterator/backends/test.backend
type = &quot;Backend&quot;
module = &quot;executor&quot;
name = &quot;test&quot;
interface = &quot;test&quot;

[methods.ParentInfo]
execute = &quot;echo &apos;I am parent&apos;&quot;
stdout_strings = true
action_id = &quot;ParentInfo&quot;
EOF

# cat &lt;&lt;&apos;EOF&apos; &gt; /usr/share/alterator/backends/test1.backend
type = &quot;Backend&quot;
module = &quot;executor&quot;
name = &quot;test/test1&quot;
interface = &quot;test1&quot;

[methods.Info]
execute = &quot;echo &apos;I am test1&apos;&quot;
stdout_strings = true
stdout_byte_limit = 200000
action_id = &quot;Info&quot;
EOF

4) Настройка политики polkit:
   # cat &lt;&lt;EOF &gt; /usr/share/polkit-1/actions/org.altlinux.alterator.test.policy
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;!DOCTYPE policyconfig PUBLIC
 &quot;-//freedesktop.org//DTD PolicyKit Policy Configuration 1.0//EN&quot;
 &quot;http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd&quot;&gt;
&lt;policyconfig&gt;
  &lt;vendor&gt;Alterator Test&lt;/vendor&gt;
  &lt;vendor_url&gt;http://altlinux.org&lt;/vendor_url&gt;

  &lt;!-- Разрешаем действия для test --&gt;
  &lt;action id=&quot;org.altlinux.alterator.test.ParentInfo&quot;&gt;
    &lt;description&gt;Test Parent Info&lt;/description&gt;
    &lt;message&gt;Authentication is required to run Parent Info&lt;/message&gt;
    &lt;defaults&gt;
      &lt;allow_any&gt;yes&lt;/allow_any&gt;
      &lt;allow_inactive&gt;yes&lt;/allow_inactive&gt;
      &lt;allow_active&gt;yes&lt;/allow_active&gt;
    &lt;/defaults&gt;
  &lt;/action&gt;

  &lt;!-- Разрешаем действия для test/test1 --&gt;
  &lt;action id=&quot;org.altlinux.alterator.test1.Info&quot;&gt;
    &lt;description&gt;Test1 Info&lt;/description&gt;
    &lt;message&gt;Authentication is required to run Test1 Info&lt;/message&gt;
    &lt;defaults&gt;
      &lt;allow_any&gt;yes&lt;/allow_any&gt;
      &lt;allow_inactive&gt;yes&lt;/allow_inactive&gt;
      &lt;allow_active&gt;yes&lt;/allow_active&gt;
    &lt;/defaults&gt;
  &lt;/action&gt;

&lt;/policyconfig&gt;                                   
EOF

5) Переход в сессию пользователя test:
   # su - test
   $ ssh test@localhost

6) Создать удалённое подключение:
   $ dbus-send --session --print-reply --dest=&apos;org.altlinux.alterator&apos; &apos;/org/altlinux/alterator/remote&apos; &apos;org.altlinux.alterator.remote.Connect&apos; string:&quot;localhost&quot; string:&quot;testconn_hier&quot; string:&quot;org.kde.polkit-kde-authentication-agent-1&quot; string:&quot;&quot;

7) Проверить иерархию объектов:
$ dbus-send --session --print-reply --dest=&apos;org.altlinux.alterator&apos; &apos;/org/altlinux/alterator/connection/testconn_hier&apos; org.freedesktop.DBus.Introspectable.Introspect | grep &quot;test&quot;

8) Вызвать метод вложенного объекта:
$ dbus-send --session --print-reply --dest=&apos;org.altlinux.alterator&apos; &apos;/org/altlinux/alterator/connection/testconn_hier/test/test1&apos; org.altlinux.alterator.test1.Info

Фактический результат на сизифе: В дереве иерархии есть объект test, но нет объекта test1, при этом метод этого объекта успешно вызывается

Фактический результат на p11 с таском 437151: В дереве иерархии есть оба объекта, но они находятся на одном уровне, хотя test1 по сути является вложенным, и при вызове метода объекта test1 возникает ошибка: Error org.altlinux.alterator.remote: Error remote handle method call.

Ожидаемый результат: Объект test1 должен отображаться как вложенный в test, и метод этого объекта должен вызываться успешно</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303686</commentid>
    <comment_count>1</comment_count>
    <who name="Иван Савин">svn17</who>
    <bug_when>2026-10-30 17:32:18 +0300</bug_when>
    <thetext>(Ответ для Иванов Александр Владимирович на комментарий #0)
&gt; 7) Проверить иерархию объектов:
&gt; $ dbus-send --session --print-reply --dest=&apos;org.altlinux.alterator&apos;
&gt; &apos;/org/altlinux/alterator/connection/testconn_hier&apos;
&gt; org.freedesktop.DBus.Introspectable.Introspect | grep &quot;test&quot;
Эта команда выводит не иерархию объектов, а интроспекцию объекта &apos;/org/altlinux/alterator/connection/testconn_hier&apos;
Вот удобная команда для просмотра дерева объектов: $busctl tree &lt;bus name&gt; [--user]
&gt; 
&gt; 8) Вызвать метод вложенного объекта:
&gt; $ dbus-send --session --print-reply --dest=&apos;org.altlinux.alterator&apos;
&gt; &apos;/org/altlinux/alterator/connection/testconn_hier/test/test1&apos;
&gt; org.altlinux.alterator.test1.Info
&gt; 
&gt; Фактический результат на сизифе: В дереве иерархии есть объект test, но нет
&gt; объекта test1, при этом метод этого объекта успешно вызывается
Разве можно вызвать метод интерфейса объекта, если объекта нет?
Вы в команде указали объект: &apos;/org/altlinux/alterator/connection/testconn_hier/test/test1&apos;
&gt; 
&gt; Фактический результат на p11 с таском 437151: В дереве иерархии есть оба
&gt; объекта, но они находятся на одном уровне, хотя test1 по сути является
&gt; вложенным, и при вызове метода объекта test1 возникает ошибка: Error
&gt; org.altlinux.alterator.remote: Error remote handle method call.
В р11 старая версия alterator-module-remote, она не поддерживает вложенные объекты.
&gt; 
&gt; Ожидаемый результат: Объект test1 должен отображаться как вложенный в test,
&gt; и метод этого объекта должен вызываться успешно

В таске 437151 нет alterator-module-remote, там только alterator-manager. Зачем тут тестировать alterator-module-remote?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303688</commentid>
    <comment_count>2</comment_count>
    <who name="Alexander Makeenkov">amakeenk</who>
    <bug_when>2026-10-30 17:33:20 +0300</bug_when>
    <thetext>(Ответ для Иван Савин на комментарий #1)
&gt; В таске 437151 нет alterator-module-remote, там только alterator-manager.
&gt; Зачем тут тестировать alterator-module-remote?

Потому что один от другого зависит https://packages.altlinux.org/ru/sisyphus/srpms/alterator-manager/what_depends/by_binary</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>