ADVERTISEMENT

Calilung: NBI need not wait for complaint to file threat cases vs top officials

Published Jul 8, 2026 06:53 pm

At A Glance

  • Senator-Judge Erwin Tulfo asked about the NBI's authority under Republic Act No. 10867 to investigate and prosecute threats against the President, Vice President, Senate President, House Speaker and Chief Justice.
  • NBI Senior Agent John Mark Calilung said that if the bureau finds sufficient evidence that a crime was committed, it can file criminal charges even without a complaint from the threatened official.
  • Calilung said the NBI does not need the alleged victim's request before submitting a case for preliminary investigation, as filing charges is based on the outcome of its investigation.
The National Bureau of Investigation (NBI) may file criminal charges over threats against the country's highest-ranking officials even without a complaint from the supposed victim, an NBI official testified Wednesday during the third day of Vice President Sara Duterte's impeachment trial.
NBI Senior Agent John Mark Calilung (Senate PRIB photo)
NBI Senior Agent John Mark Calilung (Senate PRIB photo)
During his questioning of NBI Senior Agent John Mark Calilung, Senator-Judge Erwin Tulfo sought to clarify the bureau's authority under Republic Act No. 10867, the law reorganizing and strengthening the NBI.
Tulfo first asked Calilung to confirm that the NBI is mandated to investigate crimes involving threats against the President, Vice President, Senate President, House Speaker and Chief Justice, particularly when these have implications for national security.
Calilung answered in the affirmative.
Tulfo then asked whether the filing of charges is automatic once the NBI determines that a crime has been committed, or whether the bureau must first receive a request or complaint from the threatened official.
Calilung said the bureau's mandate is to investigate such threats and, if the evidence gathered is sufficient, to file the appropriate criminal case.
"Our primary objective is to investigate cases involving threats to the President, Vice President, Senate President, Supreme Court... if we found that the evidence is enough that there is a crime committed, we will file a case because that's the output of our investigation," Calilung testified.
Tulfo further pressed the witness on whether the NBI could proceed even if the threatened official—such as the President or Vice President—did not personally seek the filing of charges.
"Yes, Your Honor," Calilung replied.
Asked whether the bureau still needs to ask the threatened official if they wish to pursue a case, Calilung said the NBI submits the case for preliminary investigation even without a complaint from the alleged victim.
The testimony came as the prosecution continued presenting evidence under Article IV of the impeachment complaint against Duterte, which includes allegations arising from her public statements that prosecutors argue constituted threats against President Ferdinand Marcos Jr., First Lady Liza Araneta-Marcos, and Speaker Martin Romualdez.

Related Tags

Erwin Tulfo National Bureau of Investigation impeachment complaint Vice President Sara Duterte
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ static_articles_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.